在 CentOS 系统管理中,查询挂载点是一项基础且至关重要的技能,挂载点是文件系统树中访问特定存储设备(如硬盘分区、逻辑卷、网络共享等)的入口,了解如何有效地查看挂载信息,有助于管理员进行磁盘空间管理、故障排查以及系统维护,本文将详细介绍几种在 CentOS 中查询挂载点的常用方法,并对它们的特点进行比较。
使用 df
命令查看挂载点信息
df
(disk free)命令是最常用于报告文件系统磁盘空间使用情况的工具,但它也清晰地显示了每个已挂载文件系统的挂载点。
其最实用的组合选项是 -h
(human-readable,以易读的 K、M、G 格式显示)和 -T
(显示文件系统类型)。
df -hT
执行后,您会看到类似以下的输出:
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 50G 8.5G 42G 17% /
devtmpfs devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs tmpfs 3.9G 8.6M 3.9G 1% /run
tmpfs tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 150M 865M 15% /boot
优点:输出简洁,一目了然地展示了设备、文件系统类型、总容量、已用空间、可用空间以及最重要的挂载点,非常适合快速概览磁盘使用情况。
使用 mount
命令列出所有挂载点
mount
命令是传统的挂载管理工具,不带任何参数直接执行时,它会列出系统中当前所有已挂载的文件系统及其详细的挂载选项。
mount
其输出格式为:设备 on 挂载点 type 文件系统类型 (挂载选项)
。
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
/dev/mapper/centos-root on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=29,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=17743)
/dev/sda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
优点:信息非常详尽,特别是挂载选项(如 rw
读写、noexec
不可执行等),这对于安全审计和高级配置至关重要。
使用 findmnt
命令进行高级查询
findmnt
是一个功能更强大、输出更现代的查询工具,它可以以树状结构显示挂载信息,非常直观,并且支持多种过滤条件。
默认情况下,它会以漂亮的树状图展示所有挂载点:
findmnt
您也可以根据特定条件进行查询,例如查找挂载到 /home
目录的设备:
findmnt --target /home
或者查找 /dev/sdb1
这个设备挂载到了哪里:
findmnt --source /dev/sdb1
优点:输出格式美观,支持树状视图便于理解挂载层级关系,且查询功能灵活,非常适合脚本化和自动化任务。
使用 lsblk
命令查看设备与挂载点关系
lsblk
(list block devices)命令主要用于列出块设备信息,使用 -f
选项时,它会在设备列表中额外显示文件系统类型、UUID 和对应的挂载点。
lsblk -f
输出示例:
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 xfs 1a2b3c4d-5e6f-7g8h-9i0j-klmnopqrstuv /boot
└─sda2 LVM2_member abcdef12-3456-7890-abcd-ef1234567890
└─centos-root
xfs 9876fedc-5432-10ba-cdef-1234567890ab /
sdb
└─sdb1 ext4 mydata-uuid /mnt/data
优点:清晰地展示了物理/逻辑设备与挂载点之间的对应关系,对于规划分区或添加新硬盘时非常有帮助。
常用命令对比
命令 | 主要用途 | 输出特点 | 推荐场景 |
---|---|---|---|
df -hT | 查看磁盘空间和挂载点 | 表格化,包含容量、使用率 | 快速检查磁盘空间使用情况 |
mount | 列出所有挂载信息 | 详细列表,包含挂载选项 | 查看具体的挂载参数,进行安全审计 |
findmnt | 高级挂载点查询 | 默认树状图,支持过滤 | 理解挂载层级,精确查找特定挂载 |
lsblk -f | 查看块设备与挂载点关系 | 树状图,展示设备层级和文件系统信息 | 规划磁盘分区,查看设备与挂载点的对应关系 |
掌握以上四种方法,您就可以在 CentOS 系统中游刃有余地查询和管理挂载点了,根据不同的需求选择合适的命令,将使您的系统管理工作更加高效。
相关问答 (FAQs)
问题1:如何临时挂载一个U盘或新硬盘分区到指定目录?
解答: 创建一个用于挂载的目录,sudo mkdir /mnt/mydisk
,使用 mount
命令进行挂载,假设您的设备是 /dev/sdb1
,命令如下:sudo mount /dev/sdb1 /mnt/mydisk
,这种挂载方式是临时的,系统重启后就会失效,若要永久生效,需要将挂载信息写入 /etc/fstab
文件中。
*问题2:为什么我用 df
命令看到的根分区(/)已用空间,和我用 `du -sh /` 命令统计出来的文件总大小对不上?解答:** 这是一个常见问题,通常由以下原因造成:
- 文件被删除但进程仍在使用:如果一个文件被删除了,但仍有进程打开其句柄,
df
会认为该文件仍占用磁盘空间,而du
因为扫描不到文件路径所以不会计算它,可以使用lsof | grep '(deleted)'
命令查找这类文件,重启对应的服务或进程即可释放空间。 - 文件系统保留空间:
ext4
、xfs
等文件系统默认会为root
用户保留一部分空间(通常是5%),以防系统磁盘被普通用户占满导致服务无法启动。df
显示的总可用空间已经扣除了这部分保留空间,而du
统计的是普通文件实际占用的空间。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复