在Linux上,大家通常用du命令来检查文件和目录的大小。但当遇到很多文件或者特别大的目录时,du的速度就有点慢了,而且显示的信息也不太直观。今天,给大家介绍一个更好用的磁盘分析工具:ncdu!这个工具又快又好用。
一、ncdu是什么?
ncdu(NCurses Disk Usage) ,是一款基于命令行界面的磁盘空间分析工具。它能快速地扫描指定目录,并显示具体的文件和目录大小。它的特点在于:
- 性能快:加快扫描速度和显示速度。
- 界面清晰:根据大小排序,一目了然地显示文件和目录信息。
- 可操作性强:可直接在界面中快速删除无用的文件。
- 它的目标就是:让你在Linux系统上简单高效地管理空间!
二、安装 ncdu
在大多数Linux发行版上,ncdu 都是可用的,可通过包管理器直接安装。
在Debian/Ubuntu系统中:
sudo apt update
sudo apt install ncdu
在RedHat/CentOS系统中:
sudo yum install epel-release
sudo yum install ncdu
在Arch Linux中:
sudo pacman -S ncdu
三、基本使用法
安装好后,只需使用以下命令即可运行。例如,分析当前目录:
ncdu
运行上面的命令后,你会看到下面的结果:
从结果可以直接看出,有几个文件夹在root目录下占用了比较多的空间。
要分析指定目录,可以指定路径:
ncdu /path/to/directory
例如,要分析var目录下的情况,执行如下命令:
ncdu /var
执行完上述命令后,输出如下结果:
ncdu 会快速扫描指定目录,并以四舍模式显示目录信息。
你可以使用 上下光标键 模式滚动选择目录,Enter 进入子目录,q 退出程序。
四、应用实战
1.分析进程当前工作目录空间
如果你为某个进程占用空间而困扰,可通过指定目录来分析:
ncdu /var/log
这样可以快速找到过大的日志文件。如下图所示:
根据上面的结果,我们看到journal这个文件夹占用了不少空间。你可以用键盘的上下箭头找到这个文件夹,然后按回车键进入。
再次进入上述这个目录,如下图所示:
看到就是这些文件占用了很多的空间,选择这些文件,按键盘上的D进行删除,然后,会弹出确认,如下图所示:
如果确认删除就选择yes回车。
2.构建分析报告
使用-o 参数将结果导出到文件:
ncdu -o result.json /home
可后续通过结果重复分析:
ncdu -f result.json
五、ncdu 和 du 的对比
功能特点 | ncdu | du |
显示效果 | 人性化的菜单界面 | 在线显示文本结果 |
扫描速度 | 速度更快,有智能缓存 | 直接计算,缺少缓存 |
操作可性 | 直接在界面中删除文件 | 不可操作文件 |
ncdu 在用户体验和性能上比du 更能满足大量文件分析的需求。
六、结论
如果你在Linux系统上水深火烈,经常面临磁盘空间不足的情况,那么ncdu 绝对是你不可缺少的神器。它简单易用,功能强大,会是你日常作业的有力助手!
赶紧安装ncdu ,快速解决磁盘空间强势的问题吧!