Linux系统之ncdu命令的基本使用

简介: 【8月更文挑战第8天】Linux系统之ncdu命令的基本使用

@TOC


👨‍💻 江湖有缘
🚀 一名在运维领域不懈探索的学习者。

🌟 认证与成就
🔴 红帽 RHCE 认证
🟠 华为 HCIP 数通认证
🔵 华为 HCIE 云计算认证
...以及其他多项专业认证

🌐 个人主页
🔗 CSDN个人主页

📢 公众号
🏷️ 【运维江湖客】

👥 交流社群
💬 欢迎同行及爱好者加入我们的QQ群:
🏷️ 群号【942602415】

📝 人生格言
"人可以被毁灭,但不能被打败。"
—— 海明威


一、ncdu命令命令介绍

1.1 ncdu简介

ncdu 是一个基于 ncurses 的磁盘使用情况分析工具。它可以帮助您快速地查看文件系统中哪些文件或目录占用了较多的空间,并且以易于阅读的树状视图形式展示结果。

1.2 ncdu特点

  • 快速扫描: ncdu 提供了快速的磁盘使用情况扫描,帮助您快速识别哪些文件或目录占用了大量空间。
  • 交互式界面: ncdu 提供了一个基于 ncurses 的交互式界面,允许您轻松浏览文件系统结构。
  • 颜色编码: 默认情况下,ncdu 使用颜色编码来区分文件类型和目录,使得输出更加直观。
  • 灵活的选项: ncdu 支持多种选项,比如排除某些目录、按照大小排序、以及导出和导入扫描结果。
  • 易于操作: ncdu 提供了简单的键盘命令,如使用方向键浏览文件列表、使用 Enter 键进入子目录等。

二、本地环境介绍

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为Ubuntu 22.04.1

hostname 本地P地址 操作系统版本 内核版本 node版本
ubuntu-001 192.168.3.251 Ubuntu 22.04.1 LTS 5.15.0-89-generic v18.0.0

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Ubuntu环境下ncdu命令的安装及基本使用。

三、检查本地环境

3.1 检查本地操作系统版本

检查本地操作系统版本,当前版本为Ubuntu 22.04.1 LTS

root@ubuntu-001:~# cat /etc/os-release
PRETTY_NAME="Ubuntu 22.04.1 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.1 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy

3.2 检查系统内核版本

检查系统内核版本,当前内核版本为5.15.0-89-generic

root@ubuntu-001:~#  uname -r
5.15.0-97-generic

3.3 检查系统镜像源

对于Ubuntu 22.04.1 LTS版本,将镜像源配置文件/etc/apt/sources.list修改内容如下。

deb https://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse

deb https://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse

deb https://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse

# deb https://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
# deb-src https://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse

deb https://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse

3.4 更新软件列表

执行以下命令,更新软件列包表。

root@ubuntu-001:~# apt update
Hit:1 https://mirrors.aliyun.com/ubuntu jammy InRelease
Hit:2 https://mirrors.aliyun.com/ubuntu jammy-security InRelease
Hit:3 https://mirrors.aliyun.com/ubuntu jammy-updates InRelease
Hit:4 https://mirrors.aliyun.com/ubuntu jammy-backports InRelease
Hit:5 https://mirrors.aliyun.com/docker-ce/linux/ubuntu jammy InRelease
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
116 packages can be upgraded. Run 'apt list --upgradable' to see them.

四、安装ncdu工具

4.1 安装ncdu软件

在ubuntu系统下,直接执行以下命令,安装ncdu。

apt install ncdu -y

在这里插入图片描述

4.2 ncdu命令帮助

  • help帮助信息
root@ubuntu-001:~# ncdu --help
ncdu <options> <directory>

  -h,--help                  This help message
  -q                         Quiet mode, refresh interval 2 seconds
  -v,-V,--version            Print version
  -x                         Same filesystem
  -e                         Enable extended information
  -r                         Read only
  -o FILE                    Export scanned directory to FILE
  -f FILE                    Import scanned directory from FILE
  -0,-1,-2                   UI to use when scanning (0=none,2=full ncurses)
  --si                       Use base 10 (SI) prefixes instead of base 2
  --exclude PATTERN          Exclude files that match PATTERN
  -X, --exclude-from FILE    Exclude files that match any pattern in FILE
  -L, --follow-symlinks      Follow symbolic links (excluding directories)
  --exclude-caches           Exclude directories containing CACHEDIR.TAG
  --exclude-kernfs           Exclude Linux pseudo filesystems (procfs,sysfs,cgroup,...)
  --confirm-quit             Confirm quitting ncdu
  --color SCHEME             Set color scheme (off/dark)
  • 详细解释
Option Description
-h, --help 显示帮助消息。
-q 安静模式,刷新间隔为 2 秒。
-v, -V, --version 打印版本信息。
-x 仅在同一文件系统内操作。
-e 启用扩展信息。
-r 读取模式,禁止修改文件。
-o FILE 将扫描的目录导出到文件 FILE
-f FILE 从文件 FILE 导入扫描的目录。
-0, -1, -2 设置扫描时使用的用户界面(0=无,2=完整的 ncurses)。
--si 使用以 10 为基数的 SI 前缀而不是以 2 为基数的前缀。
--exclude PATTERN 排除匹配模式 PATTERN 的文件。
-X, --exclude-from FILE 从文件 FILE 中读取排除模式。
-L, --follow-symlinks 跟随符号链接(不包括目录)。
--exclude-caches 排除包含 CACHEDIR.TAG 的目录。
--exclude-kernfs 排除 Linux 的伪文件系统(如 procfs, sysfs, cgroup 等)。
--confirm-quit 在退出 ncdu 之前进行确认。
--color SCHEME 设置颜色方案(off/dark)。

五、ncdu命令的基本使用

5.1 直接启动ncdu

直接在命令行,输入ncdu命令,此时会从当前目录开始分析磁盘使用情况。

  ncdu

在这里插入图片描述

  • ncdu界面的基本交互命令,通过这些命令你可以浏览和管理文件系统的磁盘使用情况。
功能
up, k 将光标向上移动
down, j 将光标向下移动
right/enter 打开选定的目录
left, <, h 打开父目录
n 按名称排序(升序/降序)
s 按大小排序(升序/降序)
C 按项目数排序(升序/降序)
M 按修改时间排序(需启用 -e 选项)
d 删除选定的文件或目录
t 在排序时切换目录在文件之前/之后

5.2 指定路径

可以在ncdu命令后面,加上需要分析的目录路径。如果需要查看某个特定目录下的磁盘使用情况,只需在命令行后面加上该目录的路径即可。

 ncdu /var/log/

在这里插入图片描述

5.3 结果保存到文件

  • /home目录的磁盘使用情况保存到文件 disk_usage.txt 中:
ncdu -o disk_usage.txt /home

在这里插入图片描述

  • 查看保存文件内容
 cat disk_usage.txt

在这里插入图片描述

5.4 从文件导入扫描的目录

可以使用-f选项将文件导入扫描的目录

ncdu -f disk_usage.txt

在这里插入图片描述

5.5 设置颜色方法

执行以下命令,ncdu 会扫描 /home 目录及其子目录,并以颜色高亮的方式显示每个子目录占用的空间。颜色方案会帮助你更容易地区分文件和目录,并识别哪些部分占用了大量磁盘空间。

ncdu --color dark /home

在这里插入图片描述

六、总结

ncdu(NCurses 磁盘使用情况)是一款基于 ncurses 的磁盘空间分析工具,它以图形化的树状视图形式展示了磁盘使用情况,帮助用户直观地识别哪些文件或目录占用了大量的磁盘空间。与传统的 du 命令相比,ncdu 提供了更为直观的交互式界面,使得管理磁盘空间变得更加容易和高效。

相关文章
|
9天前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
79 6
|
10天前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
44 3
|
10天前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
33 2
|
4天前
|
Ubuntu Linux 网络安全
linux系统ubuntu中在命令行中打开图形界面的文件夹
在Ubuntu系统中,通过命令行打开图形界面的文件夹是一个高效且实用的操作。无论是使用Nautilus、Dolphin还是Thunar,都可以根据具体桌面环境选择合适的文件管理器。通过上述命令和方法,可以简化日常工作,提高效率。同时,解决权限问题和图形界面问题也能确保操作的顺利进行。掌握这些技巧,可以使Linux操作更加便捷和灵活。
13 3
|
5天前
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
28 3
|
10天前
|
安全 网络协议 Linux
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。通过掌握 ping 命令,读者可以轻松测试网络连通性、诊断网络问题并提升网络管理能力。
40 3
|
13天前
|
安全 Linux 数据安全/隐私保护
在 Linux 系统中,查找文件所有者是系统管理和安全审计的重要技能。
在 Linux 系统中,查找文件所有者是系统管理和安全审计的重要技能。本文介绍了使用 `ls -l` 和 `stat` 命令查找文件所有者的基本方法,以及通过文件路径、通配符和结合其他命令的高级技巧。还提供了实际案例分析和注意事项,帮助读者更好地掌握这一操作。
33 6
|
13天前
|
Linux
在 Linux 系统中,`find` 命令是一个强大的文件查找工具
在 Linux 系统中,`find` 命令是一个强大的文件查找工具。本文详细介绍了 `find` 命令的基本语法、常用选项和具体应用示例,帮助用户快速掌握如何根据文件名、类型、大小、修改时间等条件查找文件,并展示了如何结合逻辑运算符、正则表达式和排除特定目录等高级用法。
44 6
|
14天前
|
监控 Linux 开发者
如何在 Linux 中优雅的使用 head 命令,用来看日志简直溜的不行
`head` 命令是 Linux 系统中一个非常实用的工具,用于快速查看文件的开头部分内容。本文介绍了 `head` 命令的基本用法、高级用法、实际应用案例及注意事项,帮助用户高效处理文件和日志,提升工作效率。
25 7
|
16天前
|
监控 Linux
Linux常用命令-2
本文继续介绍Linux常用命令,涵盖目录操作、文件操作、系统信息和进程管理等类别。具体包括mkdir、rmdir、cp、mv、rm、touch、whereis、whatis、dmesg、free、date、cal、ps、kill、killall和top等命令的使用方法和常用参数。
44 7
下一篇
无影云桌面