如何使用NCDU检查Linux中的磁盘空间使用情况

时间:2020-03-21 11:42:49  来源:igfitidea点击:

今天,我们将讨论如何使用NCDU实用程序检查类似UNIX的系统中的磁盘空间使用情况。
NCDU,NCURSES磁盘使用的缩写,是众所周知的'du'命令的基于诅咒的版本。
它提供了一种快速的方法来查看哪些目录正在使用磁盘空间。
尽管有大量的工具和方式可用于分析Linux中的磁盘使用,但此实用程序的开发人员对所有这些都不满意。
因此,他使用带有NCURSES接口的C编程语言开发了该实用程序。
它是简单且快速的磁盘使用分析器,用于找到哪些目录或者文件在本地或者远程系统上占用更多空间。
在这篇简短的教程中,我将在Linux操作系统中的NCDU实用程序的帮助下教授如何检查磁盘空间使用情况。

使用ncdu检查Linux中的磁盘空间使用情况

安装NCDU.

NCDU可用于大多数Linux发行版的默认存储库中。
因此,我们可以使用分发的默认包管理器安装它。

在Arch Linux,Antergos,Manjaro Linux:

$sudo pacman -S ncdu

在Rhel,CentOS,Scientific Linux:

$sudo yum install ncdu

关于Fedora:

$sudo dnf install ncdu

在SUSE上,openSUSE:

$sudo zypper in ncdu

在Debian,Ubuntu,Linux Mint:

$sudo apt-get install ncdu

用法

安装后,运行以下命令以分析Linux框中的磁盘空间使用情况。

$ncdu

此命令将分析主目录。
在分析后,它将显示磁盘使用报告,按降序排序。
大物品将显示在顶部。

在项目之间使用向上/向下箭头(或者k和k和j)以在项目之间移动。

按"i"查看所选项目的详细信息。

再次按"I"关闭此窗口。

要查看所选目录中的项目,请按"右"箭头或者输入键。
它将显示所选目录中的文件或者目录列表。

要返回父目录,请按"左"箭头。

我们还可以通过指定如下所示的实际路径来显示特定目录的大小。

$ncdu Downloads/

要分析整个根(/)文件系统,请运行:

$sudo ncdu -x /

其中-X表示只将文件和目录与被扫描的目录相同的文件和目录。
它将避免扫描安装的设备。

默认情况下,NCDU将在扫描目录时将输出屏幕缩短一秒的10次。
如果我们正在分析远程系统的磁盘使用情况,这可能会消耗更多带宽。
幸运的是,这将在安静模式下每2秒减少一次。
我们可以使用此功能来在远程连接上保存带宽。

要在安静模式下运行NCDU,请使用-q标志,如下所示。

$ncdu -q

有时,我们可能需要稍后查看扫描报告。
在这种情况下,扫描目录并以任何归档格式导出结果,以便稍后查看如下。

$ncdu -1xo-/| gzip >export.gz

此命令将扫描主目录并将扫描报告保存在名为Export.gz的文件中。

示例输出:

/usr/lib32/dbus-1.0/include/dbus/dbus-arch-deps.h                   509932 files

我们可以通过运行以下命令来查看它:

$zcat export.gz | ncdu -f

一旦扫描完成,也可以导出目录并浏览它:

$ncdu -o- | tee export.file | ncdu -f

要扫描远程系统,但浏览本地文件,运行:

$ssh -C Hyman@theitroad ncdu -o-/| ncdu -f

其中OniTor是我远程系统的用户名,192.168.43.2是远程系统的IP地址。
-c开关启用压缩。

要退出ncdu,请按q。

以下是NCDU实用程序中可用关键选项列表。

  • Up,K - 移动光标。
  • 向下,J - 移动光标下来。
  • 右箭头,输入键 - 打开所选目录。
  • 左箭头,<,h - 打开父目录。
  • n - 按名称排序(升序/下降)。
  • s - 按大小排序(升序/下降)。
  • C - 按项目排序(升序/下降)。
  • d - 删除所选文件或者目录。
  • T - 在排序时在文件之前切换Dirs。
  • g - 显示百分比和/或者图形。
  • a - 在表观大小和磁盘使用之间切换。
  • C - 切换子项计数的显示。
  • E - 显示/隐藏隐藏或者排除的文件。
  • I - 显示有关所选项目的信息。
  • R - 重新计算当前目录。
  • B - 当前目录中的生成shell。
  • q - 退出ncdu。

有关更多详细信息,请阅读手册页面。

$man ncdu

现在,我们知道如何使用NCDU分析Linux中的磁盘空间使用情况。