我知道删除用户userdel username
可能会导致信息泄露和其他安全问题(正如教程书所说,管理员应该删除用户的-r
选项)。但我试了一下,看看会发生什么。现在我有“无主”目录了。我可以删除它们cd /home; rm -r username
。有什么快速的方法吗?
书中说:
root 用户可以通过运行以下命令找到“无主”文件和目录:
find / -nouser -o -nogroup 2> /dev/null
它是如何工作的?
好的,我自己解决了。在find / -nouser -o -nogroup 2> /dev/null
您的帮助下,您可以查看系统上所有未链接/无主的文件,您可以删除系统上留下的每个文件。
如果您没有-r
在userdel
命令中使用选项,您可以执行以下操作来删除所有旧用户的文件。
home
目录。cd /home; rm -r username
find / -nouser -o -nogroup 2> /dev/null
.重要编辑:而不是这 3 个步骤,使用:
find / -nouser -o -nogroup 2> /dev/null | xargs rm -fr
Run Code Online (Sandbox Code Playgroud)
它使用find
命令的强制 ( -f
) 和递归 ( -r
) 选项删除命令的每个输出rm
。
引用@Tim Pierce 对这个问题的回答:
xarg
读取标准输入上的行并将它们转换为命令行参数,因此您可以有效地将数据通过管道传输到另一个程序的命令行。
编辑#2:根据@roaima,我们需要使用:
find / \( -nouser -o -nogroup \) -print0 | xargs -0 rm -rf
Run Code Online (Sandbox Code Playgroud)
祝你好运!
归档时间: |
|
查看次数: |
6603 次 |
最近记录: |