对不起,如果这听起来很愚蠢,但我不知道该怎么做.
我有一个带有完全Ephemeral驱动器的Amazon EC2实例(包含所有系统文件的主驱动器).我安装Apache,MySQL,Sphinx,我的应用程序等所有目录都在一个单独的物理驱动器上,并且有短暂驱动器的符号链接.据我所知,没有任何数据或日志写入短暂的驱动器,所以我不确定该空间发生了什么.
显然很多系统的东西仍然在短暂的驱动器上,但我不知道如何清除空间以腾出空间.我最好的猜测是亚马逊在对系统进行一些自动更新时填满了驱动器.我正在尝试安装一些新软件包,并通过YUM更新我的所有系统软件包,但驱动器没有空间.
我该怎么办?
Har*_*hof 16
du --max-depth=1 -h /
Run Code Online (Sandbox Code Playgroud)
其中/可以从根开始将告诉你在人类可读的形式(-H)的大小不经进一步递归进一步向下的任何目录.
一旦找到想要移除的大东西,就可以通过它来完成
rm <thing you want to remove>
Run Code Online (Sandbox Code Playgroud)
这接受shell扩展,所以例如删除所有mp3文件:
rm *.mp3
Run Code Online (Sandbox Code Playgroud)
如果它是一个目录,那么你需要添加 -r
rm -r /dir/to/remove
Run Code Online (Sandbox Code Playgroud)
为了保护自己,建议将-i开关添加到每个rm调用,这会强制您确认要删除文件.
如果你想删除很多只读文件,那么你可以添加-f开关强制删除,这一点非常小心.
请注意rm接受多个参数,以便在指定绝对路径时确保在引号内执行或不使用任何空格,尤其是执行它时root,super特别是使用-r和-f选项.(否则你会加入一群无意中rm -rf / some/directory/*杀死他们的人/)
如果您只是想查找大文件并删除它们,那么您也可以使用 find
find / -type f -size +100M
Run Code Online (Sandbox Code Playgroud)
会搜索-type f大小> 100MB(-size +100M)的文件()
随后您可以使用相同的命令删除它们.
find / -type f -size +100M -exec rm \{\} \;
Run Code Online (Sandbox Code Playgroud)
-exec执行一个程序,它传递它找到的文件或文件夹(\{\}),需要终止\;
不要忘了,你可以添加-i到rm批准或者不批准的缺失.