如何使用ncdu进行磁盘空间分析和清理?
美国、香港服务器
如何使用ncdu进行磁盘空间分析和清理?
09-10 来源:
ncdu(NCurses Disk Usage)是一款命令行下的磁盘空间分析工具,通过交互式界面直观展示目录和文件的大小,方便快速定位大文件并清理。以下是在 Linux 系统(如 Ubuntu 24.04)中使用ncdu进行磁盘空间分析和清理的详细步骤:
一、安装 ncdu
如果系统未预装ncdu,先通过包管理器安装:
bash
# Ubuntu/Debian系统
sudo apt update && sudo apt install -y ncdu
# CentOS/RHEL系统
sudo yum install -y ncdu
# Fedora系统
sudo dnf install -y ncdu
二、基本使用:分析磁盘空间
启动 ncdu 并分析目标目录
最常用的方式是分析当前目录或指定目录(如/根目录,需管理员权限):
bash
# 分析当前目录(无需权限)
ncdu
# 分析根目录(需查看系统所有文件,加sudo)
sudo ncdu /
首次运行会扫描目录,耗时根据目录大小而定(扫描/可能需要几分钟)。
扫描完成后进入交互式界面,按文件 / 目录大小排序(默认从大到小)。
交互式界面操作快捷键
界面中可通过键盘导航和操作,核心快捷键:
按键 功能描述
↑/↓ 上下移动光标,选中目录 / 文件
Enter 进入选中的目录(查看子目录内容)
q 退出当前目录(返回上一级)或退出程序
d 删除选中的文件 / 目录(需谨慎,删除后不可恢复)
s 切换排序方式(按大小 / 名称 / 修改时间等)
? 查看所有快捷键帮助
三、进阶操作:精准分析与清理
1. 定位大文件 / 目录
启动ncdu /后,顶部会显示占用空间最大的目录(如/www、/var、/home)。
按Enter进入大目录,逐层深入,找到具体的大文件(如旧备份、日志、未清理的上传文件)。
示例:若/www/backup占用过大,进入该目录后可看到具体的备份文件及其大小。
2. 删除无用文件 / 目录
选中需要删除的文件 / 目录(光标定位),按d键,会提示确认:
plaintext
Delete /path/to/file? (y/N)
输入y确认删除(注意:此操作不可恢复,务必确认文件无用)。
建议优先删除:过期备份、超大日志文件、测试用的临时文件、冗余的安装包等。
3. 过滤与排序
按s键可切换排序方式,例如:按修改时间排序(便于清理旧文件)、按名称排序(便于查找特定文件)。
扫描时可添加参数过滤目录,例如:排除/proc(虚拟文件系统,无需分析):
bash
sudo ncdu / --exclude /proc
四、实用场景示例
场景 1:清理网站服务器冗余
bash
# 分析网站目录(如宝塔默认网站目录)
sudo ncdu /www
# 操作:
# 1. 进入/www/backup,删除3个月前的旧备份
# 2. 进入/www/wwwroot/xxx.com/uploads,删除无用的大文件(如过期视频)
# 3. 进入/www/server/logs,清理超大的Nginx/PHP日志
场景 2:清理系统日志和缓存
bash
# 分析系统日志目录
sudo ncdu /var/log
# 操作:删除1个月前的.log文件和压缩日志(.log.1.gz等)
场景 3:排查用户目录占用
bash
# 分析用户目录
sudo ncdu /home
# 操作:找到占用过大的用户文件(如下载的ISO镜像、未清理的压缩包),确认后删除
五、注意事项
权限问题:分析/、/root等系统目录时,需加sudo,否则会因权限不足无法扫描部分文件(显示permission denied)。
谨慎删除:删除前务必确认文件用途,避免误删系统关键文件(如/etc、/bin下的文件)和业务数据(如数据库文件)。
大目录扫描优化:扫描/等大目录时,可排除临时文件系统(如/proc、/sys、/dev),加快扫描速度:
bash
sudo ncdu / --exclude /proc --exclude /sys --exclude /dev
删除目录的替代方案:若担心误删,可先将文件移动到/tmp(系统重启后自动删除),验证系统正常后再彻底清理:
bash
# 移动文件到/tmp
sudo mv /path/to/large_file /tmp/
总结
ncdu通过交互式界面简化了磁盘空间分析流程,相比du命令更直观,适合快速定位大文件并清理。核心步骤:安装ncdu → 扫描目标目录 → 导航找到大文件 / 目录 → 确认后删除无用数据。使用时始终保持谨慎,避免误删关键文件。
三二互联专业提供香港VPS,美国VPS主机,香港云服务器租用等业务香港美国到大陆CN2 GIA速度最快