---
author: Prakash Subramanian
category: 技术
comments_data: []
count:
  commentnum: 0
  favtimes: 0
  likes: 0
  sharetimes: 0
  viewnum: 1322
date: '2023-09-06 15:00:19'
editorchoice: false
excerpt: 这篇短文介绍了如何在 Linux 中查找与 VxVM 磁盘关联的 LUN 号。
fromurl: https://www.2daygeek.com/find-san-lun-mapping-with-vxvm-disk-veritas-linux/
id: 16164
islctt: true
largepic: /images/p/202309/06/145937qzio9bi65iq6uozu.jpg
permalink: /article-16164-1.html
pic: /images/p/202309/06/145937qzio9bi65iq6uozu.jpg.thumb.jpg
related:
- displayorder: 0
  raid: 16154
- displayorder: 1
  raid: 16160
reviewer: wxy
selector: lujun9972
summary: 这篇短文介绍了如何在 Linux 中查找与 VxVM 磁盘关联的 LUN 号。
tags:
- LUN
thumb: false
title: 如何在 Linux 中查找映射到 VxVM 磁盘的 SAN LUN
titlepic: true
translator: geekpi
updated: '2023-09-06 15:00:19'
---

![](/images/p/202309/06/145937qzio9bi65iq6uozu.jpg)


我们过去写过几篇文章来查找映射到块设备/磁盘的 LUN ID，但是当你管理 [VCS 集群](https://www.2daygeek.com/category/veritas-cluster/)时，在某些情况下你可能需要映射 LUN 用于 VxFS 文件系统扩展的 VxVM（Veritas 卷管理器）磁盘的 ID。


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


**推荐阅读：**


* **[如何在 Linux 中查找 SAN 磁盘 LUN id](https://www.2daygeek.com/find-san-disk-lun-id-linux/)**
* **[如何在 Linux 中将 ASM 磁盘映射到物理磁盘](https://www.2daygeek.com/shell-script-map-oracle-asm-disks-physical-disk-lun-in-linux/)**
* **[如何在 Linux 中映射 SAN LUN、磁盘和文件系统](https://www.2daygeek.com/map-san-lun-physical-disk-filesystem-linux/)**
* **[如何在 Linux 中映射 LUN、磁盘、LVM 和文件系统](https://www.2daygeek.com/map-san-lun-physical-disk-filesystem-lvm-info-linux/)**


### 在 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 会与此不同。


![](/images/p/202309/06/150019ibxssa80ew2h20q5.jpg)


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



```
# 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](https://www.2daygeek.com/author/prakash/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出