Linux 命令:显示已挂载的硬盘分区
您需要使用以下任一命令来查看 Linux 中已挂载文件系统(包括硬盘分区)的完整且准确的列表:
- df command– 了解 Linux 文件系统磁盘空间的使用情况。
- mount command– 显示所有已安装的 Linux 文件系统。
- findmnt command– 查找或搜索 Linux 文件系统。
- /proc/mounts或/proc/self/mounts文件——显示 Linux 下所有已挂载的文件系统。
教程详细信息 | |
---|---|
难度等级 | 简单的 |
Root 权限 | 不 |
要求 | Linux 终端 |
类别 | 磁盘管理 |
操作系统兼容性 | Alma • Alpine • Arch • CentOS • Debian • Fedora • Linux • Mint • openSUSE • Pop!_OS • RHEL • Rocky • Stream • SUSE • Ubuntu • WSL |
预计阅读时间 | 3 分钟 |
示例
打开终端或使用 ssh 登录到远程服务器并输入以下cat 命令或 more 命令/less 命令:
$ cat /proc/mounts
或者,如果安装了,也可以使用bat 命令:
$ cat /proc/self/mounts
示例输出:
sysfs /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0 proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0 udev /dev devtmpfs rw,relatime,size=8190572k,nr_inodes=2047643,mode=755 0 0 devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0 /dev/mapper/wks01-root / ext3 rw,relatime,errors=remount-ro,barrier=1,data=ordered 0 0 tmpfs /lib/init/rw tmpfs rw,nosuid,relatime,mode=755 0 0 tmpfs /dev/shm tmpfs rw,nosuid,nodev,relatime 0 0 /dev/sda1 /boot ext2 rw,relatime,errors=continue 0 0 fusectl /sys/fs/fuse/connections fusectl rw,relatime 0 0 binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc rw,nosuid,nodev,noexec,relatime 0 0 none /proc/fs/vmblock/mountPoint vmblock rw,relatime 0 0
键入如下 mount 命令以获取相同的信息:
这是我看到的:
$ mount
$ mount -l
/dev/mapper/wks01-root on / type ext3 (rw,errors=remount-ro) tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755) proc on /proc type proc (rw,noexec,nosuid,nodev) sysfs on /sys type sysfs (rw,noexec,nosuid,nodev) udev on /dev type tmpfs (rw,mode=0755) tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev) devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620) /dev/sda1 on /boot type ext2 (rw) [boot] fusectl on /sys/fs/fuse/connections type fusectl (rw) binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev) none on /proc/fs/vmblock/mountPoint type vmblock (rw)
输入 df 命令显示更易于阅读的输出:
$ df -aTh
图 01:df 命令运行情况
使用 findmnt 命令查看 Linux 中的所有挂载点
我们使用 findmnt 命令列出所有已挂载的 Linux 文件系统。换句话说,可以使用此命令搜索文件系统。findmnt 命令可以在名为 /etc/fstab、/etc/mtab 或 /proc/self/mountinfo 的特定配置文件中搜索。当 CLI 中未提供任何设备或挂载点时,将显示所有文件系统:
$ findmnt
示例
查看/etc/fstab中定义的所有 ext4 文件系统:
$ findmnt --fstab -t ext4
在下一个示例中,显示所有挂载点目录为 /cbz_efs 的 /etc/fstab 文件系统。它还会打印以 /cbz_efs 为源的绑定挂载:
$ findmnt --fstab /cbz_efs
我们还可以显示所有挂载点目录为 /cbz_efs 的 /etc/fstab 文件系统:
$ findmnt --fstab --target /cbz_efs
想要打印所有 /etc/fstab 文件系统并将 LABEL= 和 UUID= 标签转换为真实设备名称?尝试:
$ findmnt --fstab --evaluate
以下是如何显示 Linux 服务器上挂载标签为“/raid1disk”的文件系统的挂载点:
$ findmnt -n --raw --evaluate --output=target LABEL=/raid1disk
想要监视 /efs_stroage 上的挂载、卸载、重新挂载和移动事件?尝试:
$ findmnt --poll --mountpoint /efs_stroage
我们可以等待 /disk2 卸载,如下所示:
$ findmnt --poll=umount --first-only --mountpoint /disk2
在此示例中,我们可以监视所有 ext4 文件系统上的重新挂载到只读模式。例如:我们的最后一个例子模仿df 命令(--df
$ findmnt --poll=remount -t ext4 -O ro
)
的输出,并且仅打印处于读写(--options rw)模式的真实文件系统(--real ):
输出:
$ findmnt --df --real --options rw
SOURCE FSTYPE SIZE USED AVAIL USE% TARGET udev devtmpfs 31.3G 0 31.3G 0% /dev tmpfs tmpfs 6.3G 1.2M 6.3G 0% /run /dev/sda ext4 1.2T 15.3G 1.2T 1% / tmpfs tmpfs 31.4G 0 31.4G 0% /dev/shm tmpfs tmpfs 5M 0 5M 0% /run/lock tmpfs tmpfs 6.3G 0 6.3G 0% /run/user/0 tmpfs[/snapd/ns] tmpfs 6.3G 1.2M 6.3G 0% /run/snapd/ns tmpfs tmpfs 6.3G 4K 6.3G 0% /run/user/1000
当您需要显示特定的已挂载 Linux 分区时,过滤 df/mount 命令输出
可以使用grep 命令或egrep 命令来匹配给定的模式。在此示例中,仅显示有关已安装的 Linux /boot 分区的信息:
$ df -aTh | grep '/boot'
输出:
/dev/nvme0n1p2 ext4 1.4G 448M 869M 35% /boot /dev/nvme0n1p1 vfat 511M 17M 495M 4% /boot/efi
总结
这就是我们如何使用各种 Linux 命令行选项来查看已挂载分区。
参见
尝试以下命令来显示 Linux 磁盘使用情况:
并使用 man 命令或 help 命令阅读以下手册页。例如:
$ man df
$ man mount