如何检查 Linux 系统中的磁盘空间是否充足

LinuxLinuxBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

在这个实验中,你将学习用于检查磁盘空间和管理存储的基本 Linux 命令。首先,你将使用 df -h 命令来了解系统的整体磁盘使用情况,以人类可读的格式查看总空间、已使用空间和可用空间。

接下来,你将探索如何使用 du -sh 命令来测量特定目录的大小,这对于识别占用大量空间的大目录非常有用。最后,你将通过查看 /proc/partitions 的内容来学习列出系统上的分区,从而深入了解磁盘布局。这些技能是进行有效的 Linux 系统管理和解决磁盘相关问题的基础。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/SystemInformationandMonitoringGroup(["System Information and Monitoring"]) linux(("Linux")) -.-> linux/BasicSystemCommandsGroup(["Basic System Commands"]) linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux/BasicSystemCommandsGroup -.-> linux/echo("Text Display") linux/BasicFileOperationsGroup -.-> linux/cat("File Concatenating") linux/SystemInformationandMonitoringGroup -.-> linux/df("Disk Space Reporting") linux/SystemInformationandMonitoringGroup -.-> linux/du("File Space Estimating") subgraph Lab Skills linux/echo -.-> lab-558788{{"如何检查 Linux 系统中的磁盘空间是否充足"}} linux/cat -.-> lab-558788{{"如何检查 Linux 系统中的磁盘空间是否充足"}} linux/df -.-> lab-558788{{"如何检查 Linux 系统中的磁盘空间是否充足"}} linux/du -.-> lab-558788{{"如何检查 Linux 系统中的磁盘空间是否充足"}} end

使用 df -h 检查磁盘使用情况

在这一步中,你将学习如何使用 df 命令检查 Linux 系统上的磁盘空间使用情况。了解磁盘使用情况对于管理系统和防止因磁盘满而导致的问题至关重要。

df 命令代表“disk filesystem”(磁盘文件系统)。它会显示已挂载文件系统的总空间、已使用空间和可用空间的信息。

让我们先在终端中运行基本的 df 命令:

df

你会看到类似如下的输出:

Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda1       XXXXXXXX XXXXXXXX XXXXXXXX   X% /
tmpfs           XXXXXXXX XXXXXXXX XXXXXXXX   X% /dev/shm
tmpfs           XXXXXXXX XXXXXXXX XXXXXXXX   X% /run
tmpfs           XXXXXXXX XXXXXXXX XXXXXXXX   X% /run/lock
tmpfs           XXXXXXXX XXXXXXXX XXXXXXXX   X% /sys/fs/cgroup
/dev/sda1       XXXXXXXX XXXXXXXX XXXXXXXX   X% /var/lib/docker/overlay2/...
tmpfs           XXXXXXXX XXXXXXXX XXXXXXXX   X% /run/user/1000

这个输出以 1K 块为单位显示磁盘使用情况,可能有点难以阅读。为了使其更易于人类阅读,我们可以使用 -h 选项。-h 代表“human-readable”(人类可读)。

现在,输入以下命令并按回车键:

df -h

输出将更容易理解,以 KB、MB、GB 等单位显示大小:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        XXG   XXG   XXG  X% /
tmpfs           XXXM  XXXK  XXXM  X% /dev/shm
tmpfs           XXXM  XXXM  XXXM  X% /run
tmpfs           XXXM  XXXK  XXXM  X% /run/lock
tmpfs           XXXM  XXXK  XXXM  X% /sys/fs/cgroup
/dev/sda1        XXG   XXG   XXG  X% /var/lib/docker/overlay2/...
tmpfs           XXXM  XXXK  XXXM  X% /run/user/1000

输出中的列含义如下:

  • Filesystem:文件系统的名称。
  • Size:文件系统的总大小。
  • Used:文件系统上已使用的空间量。
  • Avail:文件系统上可用的空间量。
  • Use%:已使用空间的百分比。
  • Mounted on:文件系统挂载的目录。

/ 条目代表根文件系统,你的操作系统和大部分文件都存储在此处。

你还可以通过将目录路径作为参数提供给 df -h 来检查特定目录的磁盘使用情况。例如,要检查你的主目录 (~) 的磁盘使用情况,你可以使用:

df -h ~

这将显示你的主目录所在文件系统的磁盘使用情况。

练习使用 df -h 检查系统上不同位置的磁盘使用情况。这个命令是监控磁盘空间的基本工具。

点击 继续 进入下一步。

使用 du -sh 测量目录大小

在上一步中,你学习了如何使用 df 检查文件系统的整体磁盘使用情况。现在,让我们学习如何使用 du 命令来测量特定目录和文件的大小。

du 命令代表“disk usage”(磁盘使用情况)。它用于估算文件占用的空间。默认情况下,du 会列出指定目录内每个文件和子目录的磁盘使用情况,输出可能会非常冗长。

让我们在当前目录 (~/project) 中尝试基本的 du 命令:

du

你可能会看到列出当前目录及其所有子目录大小的输出。大小以块(通常是 1KB 块)为单位显示。

为了获取目录总大小的摘要并以人类可读的格式显示,我们可以同时使用 -s(摘要)和 -h(人类可读)选项:

du -sh

这个命令将显示当前目录 (~/project) 的总大小。输出可能如下所示:

XXK	.

XXK 表示该目录的大小,单位为千字节。如果目录中包含更多文件,你可能会看到以 MB 或 GB 为单位的大小。

你还可以使用 du -sh 来检查其他目录的大小。例如,要检查你的主目录 (~) 的大小,请输入:

du -sh ~

输出将显示你的主目录的总大小:

XXM	/home/labex

让我们创建一个小文件,看看大小会如何变化。使用 echo 命令创建一个名为 test_file.txt 的文件,并添加一些内容:

echo "This is a test file." > test_file.txt

现在,再次在 ~/project 目录中运行 du -sh

du -sh

根据你创建的文件的大小,你可能会看到报告的大小略有增加。

du -sh 命令对于快速了解特定目录或文件占用了多少空间非常有用。

点击 继续 进入下一步。

使用 cat /proc/partitions 列出分区

在这一步中,你将学习如何查看 Linux 系统识别的磁盘分区。磁盘分区是硬盘或其他存储设备的划分区域。

Linux 提供了一个名为 /proc 的虚拟文件系统,其中包含有关系统及其进程的信息。该文件系统中的一个文件 /proc/partitions 包含了磁盘分区的信息。

你可以使用 cat 命令查看这个文件的内容。cat 命令用于显示文件的内容。

在终端中输入以下命令并按回车键:

cat /proc/partitions

你会看到类似如下的输出:

major minor  #blocks  name
   8        1   XXXXXXXX sda1

让我们来分析一下输出内容:

  • major:主设备号,用于标识设备驱动程序。
  • minor:次设备号,用于标识特定的设备或分区。
  • #blocks:分区的大小,以 1KB 块为单位。
  • name:分区的名称。在这种情况下,sda1 可能表示第一个 SCSI 磁盘(或通常被视为 SCSI 的 SATA 磁盘)上的第一个分区。

这个输出让你直观地看到内核检测到的分区。这是一种快速查看系统基本分区布局的方法。

虽然 cat /proc/partitions 提供了基本信息,但其他命令(如 lsblkfdisk -l)能提供更详细、更友好的磁盘设备和分区视图,包括它们的类型和挂载点。不过,/proc/partitions 是一种简单直接的方式来获取内核级别的信息。

你现在已经学会了如何检查整体磁盘使用情况、测量目录大小以及列出磁盘分区。这些都是管理 Linux 系统存储的必备技能。

点击 继续 完成本次实验。

总结

在本次实验中,你学习了如何使用多个命令来检查 Linux 系统中的磁盘空间是否充足。首先,你使用 df -h 命令以人类可读的格式显示了整体磁盘使用情况,展示了每个挂载文件系统的总大小、已使用空间、可用空间和使用百分比。这是了解系统磁盘空间总体情况的基础步骤。

接下来,你探索了如何使用 du -sh 命令测量特定目录的大小。这能让你确定哪些目录占用了最多的磁盘空间,有助于故障排查和释放空间。最后,你学习了如何使用 cat 命令查看 /proc/partitions 文件的内容,从而列出系统上的分区,深入了解底层磁盘结构。