我正在尝试在我的 25GB Linux 服务器上找到最大的文件,该服务器的空间一直在耗尽,现在已满 99.5%。我认为这是日志文件,因为我没有对网站做任何事情,而且数据库大小很小并且是静态的。
日志文件大约有 100MB 左右,没什么大不了的。
我尝试了此处找到的命令( https://www.cyberciti.biz/faq/linux-find-largest-file-in-directory-recursively-using-find-du/ )来递归查找最大的文件,但它没有给我任何有用的东西:
root@127:~# du -a / | sort -n -r | head -n 20
du: cannot access '/proc/12377/task/12377/fd/4': No such file or directory
du: cannot access '/proc/12377/task/12377/fdinfo/4': No such file or directory
du: cannot access '/proc/12377/fd/3': No such file or directory
du: cannot access '/proc/12377/fdinfo/3': No such file or directory
sort: write failed: /tmp/sortnI7YzR: No space left on device
我是一名 Linux 新手,因此非常感谢任何帮助。
最佳答案
您无需在/proc 和/dev 中搜索,因为它们是“虚拟”文件,因此在那里查找没有什么用处(只是浪费大量时间)
由于您似乎在寻找标准文件,我建议使用find
find/\( -path/proc -prune -a -path/dev -prune\) -o -type f -size +100M -exec ls -s1 {}\; 2>/dev/null|排序 -n -r |头-n 20
在这里,您可能会看到我使用选项 -size +100M
告诉 find 查找大于 100M 的文件,假设您正在查找大文件。您可以删除此选项,但它会更长。
关于linux - Linux下如何查找占用磁盘空间的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58673749/