检查逻辑卷挂载点(命令行)

检查逻辑卷挂载点(命令行)

使用 GNOME Disks 实用程序,我可以检查逻辑卷是否已安装:

在此输入图像描述

它安装在哪里:

在此输入图像描述

如何从命令行获取此信息?例如,有了逻辑卷 UUID,我想知道它是否已安装以及安装在何处。

答案1

只需使用lsblk.它打印所有磁盘及其相应的安装点。包括LVM、MD RAID等。

答案2

您可以使用这个工具:

findmnt

grep如果您知道设备名称,则要查找所有安装点或通过管道将其传输,例如:

findmnt | grep hdd_vg

要查找特定的 UUID,只需使用:

findmnt -rn -S UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx -o TARGET

要使用这种简单的方法,需要知道分区的 UUID。

因此,分步指南是:

ls -l /dev/mapper/

然后使用以下命令查找其分区 UUID:

blkid /dev/dm-0

最后只需查找挂载点:

findmnt -rn -S UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx -o TARGET

示例输出:

ls -l /dev/mapper/

给我:

total 0
crw------- 1 root root 10, 236 Nov 13 05:15 control
lrwxrwxrwx 1 root root       7 Nov 13 05:18 mint--vg-root -> ../dm-0
lrwxrwxrwx 1 root root       7 Nov 13 05:18 mint--vg-swap_1 -> ../dm-1

然后:

blkid /dev/dm-0

给我:

/dev/dm-0: UUID="32ee47f8-02df-481d-b731-6e67734999ca" TYPE="ext4"

最后:

findmnt -rn -S UUID=32ee47f8-02df-481d-b731-6e67734999ca -o TARGET

给我:

/

这是该虚拟机中的实际挂载点。

答案3

有了逻辑卷的 UUID,就可以查明它是否已安装以及安装位置。

  1. 找出卷组名称和逻辑卷名称:

sudo lvs -o vg_name,name,uuid

这将列出所有已知的逻辑卷及其 UUID、名称以及包含它们的卷组的名称。记住与给定 UUID 相对应的<vgname>和<lvname>。

  1. 现在列出所有已安装的设备支持的文件系统,并找到您的逻辑卷:

findmnt -l | grep ' /dev/\S\+'

简单的脚本:

UUID='B3629a-B11c-4aec-bE1f-rUdk-a6d2-dd0a6bc'
LVName="$(
  sudo lvs -o vg_name,name,uuid |
  grep "$UUID" |
  sed -e 's/^\s*\(\S\+\)\s\+\(\S\+\).*/\1-\2/'
)"
if [ -z "$LVName" ] ; then
  echo "Cannot find logical volume with UUID=$UUID"
else
  MountPoint="$(
    findmnt -l |
    grep " /dev/mapper/$LVName" |
    awk '{ print $1 }'
  )"
  if [ -z "$MountPoint" ] ; then
    echo "Logical volume /dev/mapper/$LVName with UUID $UUID is not mounted"
  else
    echo "Logical volume /dev/mapper/$LVName with UUID $UUID is mounted on $MountPoint"
  fi
fi

答案4

如果您使用的设备不带lsblkfindmnt(例如:Oracle Enterprise Linux 5),并且您无法在该设备中访问 Internet,请使用cat /etc/fstabcat /proc/mounts

您看不到 UUID,但可以看到逻辑卷及其安装位置。

相关内容