标签 LUN 下的文章

我们过去写过几篇文章来查找映射到块设备/磁盘的 LUN ID,但是当你管理 VCS 集群时,在某些情况下你可能需要映射 LUN 用于 VxFS 文件系统扩展的 VxVM(Veritas 卷管理器)磁盘的 ID。

这篇短文介绍了如何在 Linux 中查找与 VxVM 磁盘关联的 LUN 号。

推荐阅读:

在 Linux 中查找映射到 VxVM 磁盘的 LUN 号的 Shell 脚本

这个方便的 Shell 脚本可帮助你识别哪个存储 LUN 与 Linux 上的哪个 VxVM 磁盘关联。

这个脚本是如何工作的

该脚本按照以下步骤收集和打印这些信息。

  • 它收集系统上活动 “磁盘组”(DG)的列表
  • 查找与相应 DG 关联的 “设备名称”。
  • 接下来,它列出了与各个设备映射的 “块设备”。
  • 最后收集与这些块设备关联的 LUN ID 并将它们全部打印在一起,如 DG 名称、块设备名称和 LUN 编号。
vi VxVM_disk_mapping_with_LUN_number.sh
#!/bin/bash
###########################################################
# Purpose: Mapping LUN Number to VxVM Disk in Linux
# Author: 2DayGeek
# Version: v1.0
###########################################################

echo "DG_Name           Block_Device            LUN_Number"
echo "-------------------------------------------------------------------"
for dg_name in `vxdg list | awk '{print $1}' | grep -v NAME`
do
  for d_name in `vxdisk -e list | grep -i $dg_name | awk '{print $1}'
  do
    for b_device in `vxdisk list $d_name | grep -w state=enabled | awk '{print $1}' | head -1`
    do
      echo "$dg_name --> $b_device --> $(lsscsi --scsi | grep $b_device | awk '{print $NF}'"
    done
  done
done | column -t

设置 Shell 脚本文件的可执行权限。

chmod +x VxVM_disk_mapping_with_LUN_number.sh

最后执行脚本查看结果。

sh VxVM_disk_mapping_with_LUN_number.sh

你的输出将类似于此。但是,DG 名称、块设备和 LUN 会与此不同。

如果你想即时运行上述脚本,请使用下面的单行脚本。

# for dg_name in `vxdg list | awk '{print $1}' | grep -v NAME`; do for d_name in `vxdisk -e list | grep -i $dg_name | awk '{print $1}'; do for b_device in `vxdisk list $d_name | grep -w state=enabled | awk '{print $1}' | head -1`; do echo "$dg_name --> $b_device --> $(lsscsi --scsi | grep $b_device | awk '{print $NF}'"; done; done; done | column -t
apachedg   -->  sde -->  3600d0230000000000e11404639558823
apachedg   -->  sdf -->  3600d0230000000000e11404639558824
apachedg   -->  sdg -->  3600d0230000000000e11404639558825
sftpdg     -->  sdh -->  3600d0230000000000e11404639558826
sftpdg     -->  sdi -->  3600d0230000000000e11404639558827

总结

在本教程中,我们向你展示了如何在 Linux 中查找与 VxVM 磁盘映射的 LUN 号。

如果你有任何问题或反馈,请随时在下面发表评论。

(题图:MJ/251ada36-41d9-4a1b-b857-a1def52f27f2)


via: https://www.2daygeek.com/find-san-lun-mapping-with-vxvm-disk-veritas-linux/

作者:Prakash Subramanian 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

在某些情况下,你需要映射存储 LUN(逻辑单元号)、块设备、LVM(LV 和 VG 名称)和文件系统(FS)信息以进行文件系统扩展或灾难恢复(DR)操作。

这是大多数 Linux 管理员的例行活动,我们通常使用一些脚本来显示针对 SAN LUN 的块设备映射,然后我们将手动添加 LVM 和文件系统信息来完成操作。

今后,你无需手动干预此活动,因为这些信息可以通过 Shell 脚本进行映射,如下所示。

参考以下类似文章:

在 Linux 中映射 LUN、磁盘、LVM 和文件系统的 Shell 脚本

这个 Shell 脚本可帮助你识别哪些 SAN 磁盘映射到 Linux 上的哪些块设备、LV、VG 和文件系统。

请注意: 我们排除了 sda 磁盘,因为这是操作系统(OS)盘,它有多个分区。

vi block_device_mapping_with_LUN_FS_LVM.sh
#!/bin/bash
for bdevice in `lsblk | grep disk | awk '{print $1}' | grep -v 'sda'`; do
    for mpoint in `lsblk /dev/$bdevice | grep lvm | awk '{print $NF}'`; do
        LVM_INFO=`lvs -o +devices | grep -i $bdevice | awk '{print $1,$2}'`
        LUN_ID=`lsscsi --scsi | grep $bdevice | awk '{print $NF}'`
        echo "$bdevice --> $mpoint --> $LVM_INFO --> $LUN_ID"
    done
done

设置 block_device_mapping_with_LUN_FS_LVM.sh 文件的可执行权限。

chmod +x block_device_mapping_with_LUN_FS_LVM.sh

最后运行脚本查看结果。

sh block_device_mapping_with_LUN_FS_LVM.sh

注意: 在上面的输出中,设备 sdb 不会显示任何 LUN 信息,因为它是从 VMWare 端添加的虚拟磁盘,没有任何 LUN。其他 3 块磁盘是从存储映射的,这就是为什么可以看到 LUN 信息。

如果你想即时运行上述脚本,请使用下面的一行脚本。

for bdevice in `lsblk | grep disk | awk '{print $1}' | grep -v 'sda'`; do for mpoint in `lsblk /dev/$bdevice | grep lvm | awk '{print $NF}'`; do LVM_INFO=`lvs -o +devices | grep -i $bdevice | awk '{print $1,$2}'`; LUN_ID=`lsscsi --scsi | grep $bdevice | awk '{print $NF}'`; echo "$bdevice --> $mpoint --> $LVM_INFO --> $LUN_ID"; done; done
sdb --> [SWAP] --> swap2lv swapvg --> -
sdc --> /appserver --> appserver_lv appserver_vg --> 360000670000415600477312020662021
sdd --> /data --> data_lv data_vg --> 360000670000415600477312020662022
sde --> /backup --> backup_lv backup_vg --> 360000670000415600477312020662023

总结

在本教程中,我们向你展示了如何在 Linux 上检查 SAN 提供的 LUN 以及底层操作系统磁盘、LV 名称、VG 名称和关联的文件系统。

如果你有任何问题或反馈,请随时在下面发表评论。

(题图:MJ/f5da2270-4e5a-4b2c-8998-fae974214384)


via: https://www.2daygeek.com/map-san-lun-physical-disk-filesystem-lvm-info-linux/

作者:Rasool Cool 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

对于某些需求,你可能需要找到映射到逻辑单元号(LUN)和文件系统(FS)的块设备,以进行文件系统扩展或灾难恢复(DR)活动。

当你管理更大的基础设施时,类似的活动可能会经常发生。假设有超过 1000 台服务器托管各种应用。

参考以下类似文章:

在本文中,我们将向你展示如何在 Linux 中映射物理磁盘、存储 LUN 和文件系统(FS)。

将物理磁盘映射到 Linux 中的存储 LUN 和文件系统的 Shell 脚本

这个小 shell 脚本可帮助你识别哪些 SAN 磁盘映射到 Linux 上的哪些块设备和文件系统。

vi block_device_mapping_with_LUN_FS.sh
#!/bin/bash
for lunmap in `lsblk | grep disk | grep ^s | awk '{print $1}'`; do
   for mpoint in `lsblk /dev/$lunmpa | grep lvm | awk '{print $NF}'`; do
      echo "$lunmap --> $mpoint --> $(smartctl -a /dev/$lunmap | grep "Logical Unit id" | awk -F":" '{print $2}')"
   done
done

设置 block_device_mapping_with_LUN_FS.sh 文件的可执行权限。

chmod +x block_device_mapping_with_LUN_FS.sh

最后运行脚本查看结果。

sh block_device_mapping_with_LUN_FS.sh

注意: 在上面的输出中,设备 sda 不会显示任何 LUN 信息,因为它是从 VMWare 端添加的虚拟磁盘,没有任何 LUN。其他 3 个磁盘是从存储映射的,这就是我们能够看到 LUN 信息的原因。

如果你想即时运行该脚本,请使用下面的一行脚本。

for lunmap in `lsblk | grep disk | grep ^s | awk '{print $1}'`; do 
    for mpoint in `lsblk /dev/$lunmpa | grep lvm | awk '{print $NF}'`; do 
        echo "$lunmap --> $mpoint --> $(smartctl -a /dev/$lunmap | grep "Logical Unit id" | awk -F":" '{print $2}')"
    done
done
sda --> /
sda --> /usr
sda --> /opt
sda --> /tmp
sda --> /var
sda --> /home
sdb --> /data -->      0x3600d0230000000000e1140463955737c
sdc --> /app -->      0x3600d0230000000000e114046395577cd
sdd --> /backup -->      0x3600d0230000000000e11404639558cc5

总结

在本教程中,我们向你展示了如何在 Linux 上检查 SAN 提供的 LUN 以及底层操作系统磁盘和关联的文件系统。

如果你有任何问题或反馈,请随时在下面发表评论。

(题图:MJ/09a00c62-f6a1-48b0-bf43-dc1bcb3c7861)


via: https://www.2daygeek.com/map-san-lun-physical-disk-filesystem-linux/

作者:Rasool Cool 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出