Linux磁盘空间恢复指南:查找与释放被占用空间

1 下载量 95 浏览量 更新于2024-08-03 收藏 447KB DOCX 举报
"如何恢复Linux被吃掉的磁盘空间" 在Linux系统管理中,经常会遇到磁盘空间不足的问题。这不仅影响系统性能,也可能导致服务中断。本篇内容将详细介绍如何定位并解决Linux磁盘空间被占用的问题。 首先,当收到磁盘空间告警时,我们通常会使用`df -hL`命令来查看磁盘的整体使用情况。`df`命令显示文件系统的总空间、已使用空间、可用空间以及使用率,而`-h`参数使输出以人类可读的格式(如K、M、G)显示,`-L`则是跟随符号链接,以便准确反映文件夹的实际大小。 如果要查找具体哪个目录或文件占用了大量空间,可以使用`du`命令。一种简单的做法是从根目录开始,逐级检查每个目录的大小,例如`du -hs /*`。但这种方法效率较低。更有效的方法是结合`-d`或`--max-depth`参数,例如`du -h -d 2 | grep [GT] | sort -nr`,这将显示大小为G或T的目录,并按大小降序排列。同样,`find`命令也可以用来搜索大文件,例如`find / -type f -size +1G -exec du -h {} \;`,它更快且更灵活。 有时,尽管文件已被删除,其占用的空间并未真正释放,这是因为文件系统还在处理这些已删除文件。这时可以使用`lsof +L1`命令来查看哪些已删除文件仍占用空间。找到后,根据文件所属进程,重启相关服务以释放空间,例如文中提到的重启`tomcat`应用。 另外,Linux系统会为root用户预留一部分磁盘空间,通常是5%,以防止普通用户耗尽磁盘空间导致系统关键服务崩溃。若想调整这个预留比例,可以使用`tune2fs`命令,例如`tune2fs -m 1 /dev/vda1`,这里的1表示1%的预留比例。执行后,这部分“被吃掉”的空间将变为可用。 恢复Linux磁盘空间的关键在于定位占用空间的文件或目录,以及理解系统级别的预留策略。通过上述方法,可以有效地解决磁盘空间不足的问题,确保系统的稳定运行。