文件系统位于哪个磁盘上?

文件系统位于哪个磁盘上?

我需要找出服务器上的特定文件系统位于哪个磁盘上。在这种情况下,让我们以我的/home目录为例:

[root@master playbooks]# df -h /home
Filesystem           Size  Used Avail Use% Mounted on
/dev/mapper/rl-home  4.0G   62M  4.0G   2% /home

[root@master playbooks]# lsblk
NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda           8:0    0 16.7G  0 disk
├─sda1        8:1    0    1G  0 part /boot
└─sda2        8:2    0 15.7G  0 part
  ├─rl-root 253:0    0   10G  0 lvm  /
  ├─rl-swap 253:1    0  1.7G  0 lvm  [SWAP]
  └─rl-home 253:2    0    4G  0 lvm  /home
sr0          11:0    1 1024M  0 rom

所以对于/home文件系统,我希望获得sdasda2至少。

我想限制一些复杂的awk命令。

答案1

使用df命令结合非常简单grepawk

df | grep "search string" | awk '{ print $1 }'

例如:

df | grep "/home" | awk '{ print $1 }'

导致:

/dev/sda2

对于 LVM 卷,您将得到卷而不是物理磁盘(因为这是 LVM 的工作方式)。

答案2

您可以使用findmnt以下方式获取设备(嗯,无论 中列出的是什么df):

findmnt /home -n -o source

(也可以看看,我的另一个答案用于查找源的 UUID。)

相关内容