介绍
在 Linux 环境中,磁盘空间管理是系统管理的一个关键方面。监控可用磁盘空间有助于防止因存储资源耗尽而导致的系统崩溃、应用程序故障和数据丢失。作为系统管理员,你的日常任务之一是检查不同文件系统的磁盘空间使用情况。
在这个实验中,你将学习如何使用强大的 df 命令(即“disk free”的缩写)来检查系统中的磁盘空间使用情况。你将查看所有已挂载文件系统的磁盘使用情况,解读输出结果,并聚焦于特定目录,以更深入地了解你的存储使用情况。这些技能对于有效的系统维护和资源规划至关重要。
在 Linux 环境中,磁盘空间管理是系统管理的一个关键方面。监控可用磁盘空间有助于防止因存储资源耗尽而导致的系统崩溃、应用程序故障和数据丢失。作为系统管理员,你的日常任务之一是检查不同文件系统的磁盘空间使用情况。
在这个实验中,你将学习如何使用强大的 df 命令(即“disk free”的缩写)来检查系统中的磁盘空间使用情况。你将查看所有已挂载文件系统的磁盘使用情况,解读输出结果,并聚焦于特定目录,以更深入地了解你的存储使用情况。这些技能对于有效的系统维护和资源规划至关重要。
在这一步中,你将学习如何使用 df 命令检查所有已挂载文件系统的磁盘空间使用情况。df 命令是用于显示文件系统上可用磁盘空间量的基本工具。
在你的 LabEx 虚拟机环境中打开一个终端。默认情况下,你应该已经位于主目录。如果不是,你可以使用以下命令导航到主目录:
cd ~
现在,运行以下命令来检查磁盘空间使用情况:
df
你将看到类似于以下的输出:
Filesystem 1K-blocks Used Available Use% Mounted on
overlay 20509264 3207552 16249328 17% /
tmpfs 395052 0 395052 0% /dev
tmpfs 1975244 0 1975244 0% /sys/fs/cgroup
shm 65536 0 65536 0% /dev/shm
/dev/sda1 20509264 3207552 16249328 17% /etc/hosts
tmpfs 1975244 0 1975244 0% /proc/acpi
tmpfs 1975244 0 1975244 0% /sys/firmware
输出为每个文件系统显示了几个重要信息:
Filesystem:文件系统的名称1K-blocks:以 1 千字节块为单位的总大小Used:当前正在使用的空间量Available:可供使用的空间量Use%:正在使用的空间百分比Mounted on:文件系统的挂载点虽然这些信息很全面,但以 1K 块为单位的数字可能难以快速阅读和理解。
在处理磁盘空间信息时,以更易读的格式呈现数据通常会让你更容易解读。在这一步中,你将学习如何在 df 命令中使用 -h 选项,以人类可读的格式显示磁盘大小。
-h 选项(即“human-readable”的缩写)会根据磁盘空间大小,将其转换为合适的单位(KB、MB、GB 或 TB)。这样一来,输出结果一目了然,理解起来容易多了。
在终端中运行以下命令:
df -h
你应该会看到类似如下的输出:
Filesystem Size Used Avail Use% Mounted on
overlay 20G 3.1G 16G 17% /
tmpfs 386M 0 386M 0% /dev
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
shm 64M 0 64M 0% /dev/shm
/dev/sda1 20G 3.1G 16G 17% /etc/hosts
tmpfs 1.9G 0 1.9G 0% /proc/acpi
tmpfs 1.9G 0 1.9G 0% /sys/firmware
注意,现在磁盘空间以 GB 和 MB 为单位显示,而非 1K 块。这让你能快速了解已使用和可用的磁盘空间大小。
将此输出与第一步的输出进行比较。你会发现信息是一样的,但使用 -h 选项后,呈现方式更加直观。例如,你现在看到的是“20G”(20 吉字节),而不是“20509264”个 1K 块,这显然更容易理解。
有时候,你只需要特定文件系统或目录的相关信息。在这一步中,你将学习如何检查文件系统中特定位置的磁盘空间。
你可以向 df 命令指定一个路径,以获取该路径所在文件系统的信息。当你想在将文件复制或下载到特定位置之前检查可用空间时,这一功能特别有用。
让我们来检查你的主目录的磁盘空间。运行以下命令:
df -h ~
波浪号 (~) 在 Linux 中是主目录的简写。该命令将提供包含你主目录的文件系统的信息:
Filesystem Size Used Avail Use% Mounted on
overlay 20G 3.1G 16G 17% /
这表明你的主目录位于根文件系统(挂载在 / 处)。
现在,让我们检查另一个目录的磁盘空间。例如,让我们查看 /tmp 目录,该目录通常用于存放临时文件:
df -h /tmp
输出将显示 /tmp 所在文件系统的详细信息:
Filesystem Size Used Avail Use% Mounted on
overlay 20G 3.1G 16G 17% /
在这个环境中,你的主目录和 /tmp 都位于同一个文件系统上。在许多生产系统中,出于性能或安全考虑,这些目录可能位于不同的文件系统上。
当你需要进行以下操作时,检查特定位置的功能非常有用:
df 命令提供了其他几个实用选项,这些选项可以提供额外的信息,或者改变输出的显示方式。在这一步中,你将探索其中一些选项,以增强你监控磁盘空间的能力。
-T 选项会增加一列,用于显示文件系统的类型。当你需要了解正在使用的文件系统类型时,这一功能非常有用,因为不同的文件系统类型具有不同的特性和限制。
运行以下命令:
df -hT
这将人类可读格式 (-h) 与文件系统类型显示 (-T) 结合起来。你应该会看到类似如下的输出:
Filesystem Type Size Used Avail Use% Mounted on
overlay overlay 20G 3.1G 16G 17% /
tmpfs tmpfs 386M 0 386M 0% /dev
tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
shm tmpfs 64M 0 64M 0% /dev/shm
/dev/sda1 ext4 20G 3.1G 16G 17% /etc/hosts
tmpfs tmpfs 1.9G 0 1.9G 0% /proc/acpi
tmpfs tmpfs 1.9G 0 1.9G 0% /sys/firmware
注意新增的“Type”列,它显示了诸如“overlay”、“tmpfs”和“ext4”等文件系统类型。
文件系统的索引节点 (inode) 数量是有限的,inode 是存储文件信息的数据结构。即使你有大量的磁盘空间,但如果有太多小文件,你也可能会耗尽 inode。
使用 -i 选项检查 inode 的使用情况:
df -i
你将看到显示 inode 利用率的输出:
Filesystem Inodes IUsed IFree IUse% Mounted on
overlay 1310720 106794 1203926 9% /
tmpfs 98811 1 98810 1% /dev
tmpfs 98811 16 98795 1% /sys/fs/cgroup
shm 98811 1 98810 1% /dev/shm
/dev/sda1 1310720 106794 1203926 9% /etc/hosts
tmpfs 98811 1 98810 1% /proc/acpi
tmpfs 98811 1 98810 1% /sys/firmware
输出显示了以下内容:
Inodes:inode 的总数IUsed:已使用的 inode 数量IFree:空闲的 inode 数量IUse%:已使用的 inode 百分比当你遇到磁盘空间充足但因 inode 耗尽而无法创建新文件的情况时,这些信息特别有用。
你可以组合使用这些选项,以获得更全面的信息。例如,要同时查看人类可读的磁盘空间和 inode 使用情况:
df -hi
这将提供更完整的文件系统使用情况:
Filesystem Inodes IUsed IFree IUse% Mounted on
overlay 1.3M 107K 1.2M 9% /
tmpfs 97K 1 97K 1% /dev
tmpfs 97K 16 97K 1% /sys/fs/cgroup
shm 97K 1 97K 1% /dev/shm
/dev/sda1 1.3M 107K 1.2M 9% /etc/hosts
tmpfs 97K 1 97K 1% /proc/acpi
tmpfs 97K 1 97K 1% /sys/firmware
在这个实验中,你学习了如何使用 df 命令在 Linux 环境中有效地监控和分析磁盘空间的使用情况。以下是你所完成内容的回顾:
df 命令来查看所有已挂载文件系统的磁盘空间信息。-h 选项让输出更易读,该选项以人类可读的格式显示大小。-T 用于显示文件系统类型,-i 用于检查索引节点 (inode) 的使用情况。这些技能对于系统管理和维护任务至关重要。定期监控磁盘空间有助于预防系统问题,并确保系统性能达到最优。随着你继续使用 Linux 系统,这些命令将成为你主动进行系统管理的常用工具。
若你想了解目录(而非整个文件系统)内空间使用的更详细信息,可以使用补充命令 du(磁盘使用情况),它能更细致地展示磁盘空间在目录和子目录中的使用情况。