首先使用du或ncdu工具监控linux磁盘使用率,du适用于快速查看目录总大小,ncdu适合交互式分析大文件;1. 使用du -hsx * | sort -rh | head -10可查找当前目录下占用空间最大的10个文件;2. 在ncdu界面中导航至目标文件按d键可直接删除文件,但操作不可逆需谨慎;3. 监控远程服务器磁盘使用率可通过ssh执行远程命令如ssh user@remote_host "du -hs /var/log",或使用prometheus和grafana等工具实现持续监控,定期检查可确保系统稳定性和性能。

Linux磁盘使用率监控,简单来说,就是了解你的硬盘还剩多少空间,哪些文件或目录占用了大量空间。这对于维护系统稳定性和性能至关重要。
du和
ncdu是两个常用的工具,各有千秋。
解决方案
du(disk usage) 是一个标准的 Unix 命令,用于估算文件和目录的磁盘空间使用量。它通常预装在大多数 Linux 发行版中。
ncdu(NCurses Disk Usage) 是一个基于
ncurses的磁盘使用分析器,提供了一个交互式的界面,更方便用户浏览和查找占用空间的文件和目录。
du
的使用:
最基本的用法是
du -h,它会以人类可读的格式(例如 KB、MB、GB)显示当前目录下所有文件和目录的磁盘使用情况。
-s参数可以只显示总计,
-d参数可以指定目录的深度。例如,
du -hs /var/log会显示
/var/log目录的总大小。
du的优点在于它是标准命令,几乎所有 Linux 系统都有。缺点是输出结果比较简单,不方便交互式浏览。
ncdu
的使用:
如果你的系统没有预装
ncdu,可以使用包管理器安装,例如
sudo apt install ncdu(Debian/Ubuntu) 或
sudo yum install ncdu(CentOS/RHEL)。安装完成后,直接运行
ncdu即可扫描当前目录,或者指定目录,例如
ncdu /var/log。
ncdu提供了一个交互式界面,你可以使用箭头键导航,按
d删除文件,按
g显示百分比,按
i显示文件信息等等。
ncdu的优点是交互性强,可以快速找到占用空间的大文件。缺点是需要额外安装。
选择哪个?
如果你只需要快速查看某个目录的总大小,
du就足够了。如果你需要深入分析磁盘使用情况,找到占用空间的大文件,
ncdu更加方便。
如何使用 du 命令查找占用空间最大的文件?
结合
du和
sort命令可以找到占用空间最大的文件。例如,以下命令可以列出当前目录下占用空间最大的 10 个文件:
du -hsx * | sort -rh | head -10
这个命令的解释是:
du -hsx *
:-h
以人类可读的格式显示,-s
只显示总计,-x
限制在同一文件系统。*
表示当前目录下的所有文件和目录。sort -rh
:-r
逆序排序,-h
以人类可读的数字排序。head -10
: 只显示前 10 行。
这个命令可以帮助你快速找到占用空间最多的文件,然后你可以进一步分析这些文件,看看是否可以删除或压缩。
如何用 ncdu 删除文件?
ncdu允许你直接在界面中删除文件。在
ncdu界面中,使用箭头键导航到要删除的文件或目录,然后按
d键。
ncdu会提示你确认删除操作。
需要注意的是,
ncdu删除文件是直接删除,不会放入回收站。因此,删除文件前一定要谨慎。
如何监控远程服务器的磁盘使用率?
监控远程服务器的磁盘使用率,可以使用 SSH 连接到服务器,然后运行
du或
ncdu命令。
另一种方法是使用专门的监控工具,例如 Prometheus 和 Grafana。这些工具可以收集服务器的磁盘使用率数据,并以图表的形式展示。
还有一种比较简便的方法,就是使用
ssh命令配合
du命令。例如,要监控远程服务器
user@remote_host的
/var/log目录的磁盘使用率,可以运行以下命令:
ssh user@remote_host "du -hs /var/log"
这个命令会在远程服务器上运行
du -hs /var/log命令,并将结果返回到本地终端。当然,前提是你有权限通过 SSH 连接到远程服务器。
监控磁盘使用率是一个持续的过程,需要定期检查,及时发现并解决问题。










