

1:df
命令速查磁盘使用情况
df
命令,Linux系统里的磁盘空间使用情况速查神器。只需运行以下命令,即可一览各挂载点的磁盘空间详情:
df -h
此命令将以GB、MB等易读格式,展示各挂载点的总空间、已用空间、可用空间及挂载点信息,助你迅速锁定高使用率挂载点。
2:du
命令深挖大文件或目录
一旦发现某挂载点空间紧张,du
命令便是你的得力助手,帮你找出占用空间大的文件或目录。以下是几个实用命令示例:
查看当前目录下各子目录的磁盘使用情况:
du -sh *递归查看当前目录及其子目录的磁盘使用情况,限定显示前N层目录总大小:
du -h --max-depth=N查找并排序显示当前目录及其子目录下占用空间最大的前N个文件或目录:
du -ah . | sort -rh | head -n N
3:探秘隐藏文件和目录
那些以点.
开头的隐藏文件或目录,有时也是磁盘空间的隐形杀手。以下命令助你一探究竟:
du -sh .[!.]*
此命令将展示当前目录下所有隐藏文件或目录的体积。
4:审视系统日志文件
系统日志文件,记录着系统运行的点点滴滴,但随着时间积累,它们也可能成为磁盘空间的占用大户。以下命令帮你审视这些日志文件的体积:
du -sh /var/log/*
若发现某日志文件异常庞大,不妨考虑压缩、轮转或清理。
5:清查临时文件目录
临时文件目录(如/tmp
)是临时文件的聚集地,也可能成为磁盘空间的侵占者。以下命令帮你清查:
du -sh /tmp/*
对于不再需要的临时文件,及时清理或设置定时任务定期清除。
6:审视用户主目录
用户主目录下的个人文件,有时也是磁盘空间的消耗大户。以下命令助你审视每个用户主目录的体积:
du -sh /home/*
若发现某用户主目录异常庞大,不妨深入探查并与其沟通清理。
7:审视Docker容器和镜像
若系统中运行Docker容器,Docker镜像和容器文件系统也可能占用大量磁盘空间。以下命令帮你审视:
docker system df
对于不再需要的镜像或容器,及时删除以释放空间。
8:审视数据库文件
若系统中运行数据库服务,数据库文件也可能成为磁盘空间的占用大户。通过数据库管理工具或命令行工具检查数据库文件的体积,并根据需要进行优化或清理。
9:审视未释放的磁盘空间
有时,即使删除了大量文件,磁盘空间仍未释放,可能是因为被删除的文件仍被进程占用。以下命令帮你找出这些文件:
lsof | grep deleted
若找到被占用的已删除文件,尝试重启相关进程以释放空间。
10:审视文件系统错误
若上述方法都无法解决问题,可能需要检查文件系统是否有错误。fsck
命令是你的好帮手,但在运行前需确保文件系统已卸载或在单用户模式下:
umount /dev/sdXN
fsck /dev/sdXN
其中,/dev/sdXN
代表要检查的文件系统对应的设备文件。
除了上述十招外,还有更多技巧助你进一步排查和解决Linux磁盘空间问题:
11:清理软件包缓存
Linux系统在安装和更新软件包时会缓存文件,这些缓存文件可能随时间积累占用大量磁盘空间。以下命令帮你清理APT和YUM缓存:
sudo apt-get clean
对于基于RPM的系统:
sudo yum clean all
12:清理内核模块
随着内核更新,旧内核模块可能被保留,占用磁盘空间。以下命令帮你列出所有安装的内核,并手动删除不再需要的旧内核:
dpkg --list | grep linux-image
(对于基于Debian的系统)或
rpm -qa | grep kernel
(对于基于RPM的系统)
然后使用相应包管理工具卸载不再需要的内核包。
13:清理快照和备份
系统配置的快照或定期备份也可能占用大量磁盘空间。检查这些文件的体积,并根据需要删除旧的或不再需要的快照和备份。
14:使用磁盘使用分析工具
除了手动使用df
和du
命令外,ncdu
这类磁盘使用分析工具能提供更直观的磁盘使用情况。以下命令帮你安装并使用ncdu
:
sudo apt-get install ncdu # 对于基于Debian的系统
sudo yum install ncdu # 对于基于RPM的系统
sudo ncdu /
15:优化虚拟机磁盘文件
若系统部署在虚拟机上,虚拟机磁盘文件也可能占用大量磁盘空间。使用虚拟机管理工具的磁盘压缩和碎片整理功能优化磁盘文件。
16:重启服务
有时候,重启服务是解决问题的快速通道,你觉得呢?
点击标题可跳转
看完本文有收获?请分享给更多人
推荐关注「Linux 运维进阶之路」,提升Linux技能





