Linux 有许多有用的命令来简化系统上的某些操作。 df,例如,帮助您确定驱动器上有多少可用磁盘空间,而 杜 显示系统上估计的文件空间使用情况。
虽然这两个命令都运行良好并按预期完成工作,但还有另一个有用的命令称为 达夫, df 的替代品,提供更好的磁盘监控功能。
在本指南中,我们将详细了解 duf 并介绍在 Linux 上安装和使用它的步骤。
什么是duf?
duf 或 Disk Usage/Free 是一个免费的开源命令行实用程序,可让您从终端窗口内查看系统的磁盘使用情况和可用空间。
它本质上将 du 和 df 的功能组合到一个命令中,因此您不必单独运行这两个命令。 不仅如此,使用 duf,您还可以以现代且易于理解的方式获取信息,这对于那些刚刚开始使用 Linux 的人来说更加用户友好。
为什么使用duf?
duf 优于 df 的最大优势之一是其全面的功能集; 一种让您可以自由过滤、排序和将结果导出为 JSON 等功能。
以下是 duf 的所有突出显示功能的列表:
- 色彩丰富且易于理解的输出
- 自由调整终端主题
- 能够根据您的喜好对结果进行排序或过滤
- 以 JSON 格式导出输出的选项
如何在 Linux 上安装 duf
根据您在计算机上运行的 Linux 发行版,您可以通过几种不同的方式在其上安装 duf。
1. 使用 DEB 或 RPM 包安装 duf
借助开发人员提供的官方包文件,使用 DEB 或 RPM 包安装 duf 非常容易。
对于这种方法,首先,前往 duf 的 GitHub Releases 页面。 然后,单击以 .deb 如果您使用的是 Debian 或其衍生产品,或者使用 .rpm 如果您正在运行 RHEL 或其任何衍生产品,例如 FedoraCentOS 等
下载: duf 包
如果你不想从 Releases 页面下载包,你也可以使用 wget 将包裹直接放入终端。
为此,请通过运行以下命令检查您的系统上是否存在 wget:
wget --version
如果不是,请先下载。
现在,如果您使用的是基于 Debian 的发行版,请运行以下命令来获取 duf:
wget https://github.com/muesli/duf/releases/download/v0.6.2/duf_0.6.2_linux_amd64.deb
在基于 RHEL 的发行版上,运行:
wget https://github.com/muesli/duf/releases/download/v0.6.2/duf_0.6.2_linux_amd64.rpm
现在,您有两个选项来安装该软件包。 您可以使用系统包安装程序的 GUI 版本,也可以从命令行安装它。
如果您更喜欢 GUI 方法,请转到 下载 目录,右键单击包文件,然后选择 使用 GDebi 包安装程序打开 或者 使用软件安装程序打开,基于您的 Linux 发行版。 打开安装程序后,点击 安装包 或者 安装 按钮开始安装。
或者,要使用 CLI 方法,打开终端并导航到 下载 使用 cd 命令的目录。 然后,根据您的 Linux 发行版,输入适当的命令以在您的系统上安装软件包。
在基于 Debian 的发行版上:
sudo dpkg -i duf_0.x.x_linux_amd64.deb
在基于 RHEL 的发行版上:
sudo rpm -i duf_0.x.x_linux_amd64.rpm
Arch 用户可以使用 Yay 之类的 AUR 助手从 AUR 安装 duf:
yay -S duf
2.使用Snap安装duf
你也可以使用官方 snap 包在你的系统上安装 duf。 为此,请通过运行以下命令确保您的计算机上安装了 Snap:
snap --version
如果这返回版本号,则表示系统上存在 Snap,您可以继续下一步。 但是,如果没有,您需要先安装 Snap。
考虑到你已经完成了那部分,你可以通过运行 Snap 安装 duf:
sudo snap install duf-utility
3. 从源代码构建duf
虽然包管理器和 Snap 方法都运行良好,但如果您想从源代码构建程序,duf 提供了这样做的自由。 但是,由于 duf 是用 Go 编写的,因此请确保您的计算机上有一个可用的 Go 环境。
完成后,您可以通过运行以下命令集来编译 duf:
git clone https://github.com/muesli/duf.git
cd duf
go build
如何使用duf检查磁盘使用情况
安装duf后,您可以立即开始使用它。 为此,请打开终端并运行:
duf
这将返回系统上所有设备和挂载点的列表,如下所示。
但是,如果您只想列出特定设备和挂载点,可以使用以下格式的命令缩小结果范围:
duf /
duf /home
此外,如果您需要显示所有文件系统,包括伪文件系统、重复文件系统和不可访问文件系统,您可以这样做:
duf --all
过滤结果
虽然以表格形式显示的输出很容易理解,但过滤它以显示或隐藏特定表格可以更轻松地仅查看有关您需要了解的表格的信息。
因此,duf 为过滤设备提供了两种选择: – 只要 和 – 隐藏,这就是它们如何派上用场的方法。
假设您想查看仅在两个特定表中列出的设备:本地和网络。 在这种情况下,您可以修改它以仅包含两个表,而不是运行普通的 duf 命令。 像这样:
duf --only local,network
同样,如果您想从结果中隐藏这些表格,您可以这样做:
duf --hide local,network
duf 的过滤也适用于文件系统和挂载点,因此您也可以显示或隐藏文件系统和挂载点。
要显示特定的文件系统:
duf --only-fs tmps,vfat
当您想要隐藏特定文件系统时:
duf --hide-fs tmpfs,vfat
用于显示挂载点:
duf --only-mp /,/home
要从结果中隐藏这些挂载点:
duf --hide-mp /,/home
排序结果
就像过滤掉结果以查看有关选定设备和挂载点的信息一样,您还可以对列出的表数据进行排序。
为了 example如果你想排序 尺寸 表中的列,以下命令可以为您执行此操作:
duf --sort size
同样,您也可以显示或隐藏表格中的特定列。 因此,假设您只想显示 尺寸 和 可用 结果中的列。 你可以这样做:
duf --output size,avail
查看 inode 信息
所有 Unix 和类 Unix 系统都使用块和 inode 来组织和存储数据。 块代表数据,inode 代表文件。
使用 duf,您可以查看块和 inode,尽管默认表示设置为显示块数据。 要查看 inode 信息而不是块使用情况,只需运行:
duf --inodes
以 JSON 格式导出结果
如果您需要导出结果,duf 为您提供了以 JSON 文件格式导出它们的选项。 这使得导出的文件在不同的应用程序和设备上更易于访问和阅读。
只需打开一个终端并运行以下命令即可将您的 duf 结果导出为 JSON:
duf --json
设置终端主题
虽然 duf 会自动正确检测终端的配色方案,但如果它无法正确检测,您可以使用 – 主题 参数,如下图:
duf --theme light
或者
duf --theme dark
获取命令行帮助
在任何时候,如果您遇到命令语法问题,您可以使用以下方法寻求帮助:
duf --help
Linux 上的磁盘使用监控简化
多亏了 duf 命令,在 Linux 上监控磁盘使用比以往任何时候都容易。 虽然 du 和 df 等其他 CLI 工具也在那里,并且它们完成了工作,但 duf 的易用性和可理解的数据表示大大简化了该过程。
更不用说,它为您提供了更多功能和对输出的控制,因此您不会被太多信息所淹没。
如果您刚刚开始使用 Linux,您可能会从学习使用命令行安装硬盘驱动器中受益。