关闭
搜索
搜索
本版
帖子
用户
热搜:
程序员
简洁模式
高级模式
用户组: 游客
消息
提醒
新听众
我关注的
帖子
道具
勋章
任务
设置
退出
请
登录
后使用快捷导航
没有帐号?
立即注册
设为首页
收藏本站
开启辅助访问
切换到窄版
登录
or
立即注册
快捷导航
搜索
首页
论坛
BBS
MCU单片机技术
程序员交流
如何在Linux上扫描/检测新的LUN和SCSI磁盘|Linux中国
[复制链接]
作者:
295255980
版块:
›
嵌入式操作系统
›
linux
发布时间:
2020-11-23 11:38:04
980
0
返回列表
295255980
当前离线
中级会员
中级会员, 积分 270, 距离下一级还需 230 积分
中级会员
中级会员, 积分 270, 距离下一级还需 230 积分
积分
270
发消息
楼主
电梯直达
295255980
发表于 2020-11-23 11:38:04
|
只看该作者
|
倒序浏览
|
阅读模式
导读:
当 Linux 系统连接到 SAN(存储区域网络)后,你需要重新扫描 iSCSI 服务以发现新的 LUN。
本文字数:3394,阅读时长大约:4分钟
作者:Magesh Maruthamuthu
译者:geekpi
当 Linux 系统连接到 SAN(存储区域网络)后,你需要重新扫描 iSCSI 服务以发现新的 LUN。
要做到这一点,你必须向存储团队提供 Linux 主机的 WWN 号和所需的 LUN 大小。
这篇文章将帮助你查找 Linux 主机的 WWN 号。
当存储团队将 LUN 与给定的 Linux 主机进行了映射,他们将为你提供新的 LUN 详细信息。
LUN 在存储术语中被称为 LUN 的串行十六进制。
你需要扫描 SCSI 主机来寻找存储团队分配的新 LUN。
这可以通过两种方式进行,扫描每个 scsi 主机设备或运行rescan-scsi-bus.sh脚本来检测新磁盘。
扫描后可以在/dev/disk/by-id目录下找到它们。
# ll /dev/disk/by-id
total 0
lrwxrwxrwx 1 root root 10 Jul 9 17:52 scsi-60a98000486e542d4f5a2f47694d684b -> ../../sdah
lrwxrwxrwx 1 root root 9 Jul 9 17:52 scsi-60a98000486e542d4f5a2f47694d684c -> ../../sdw
.
.
lrwxrwxrwx 1 root root 10 Jul 9 17:52 scsi-60a98000486e542d4f5a2f47694d684d -> ../../sdjk
lrwxrwxrwx 1 root root 10 Jul 9 17:52 scsi-60a98000486e542d4f5a2f47694d684e -> ../../sdaa
lrwxrwxrwx 1 root root 9 Jul 9 17:52 scsi-60a98000486e542d4f5a2f47694d684f -> ../../sdh
另外,如果你已经用multipath配置了它们,那么可以用multipath命令找到。
`multipath 主要是配置到 Oracle 数据库服务器中,以提高性能。
# multipath -ll
60a98000486e542d4f5a2f47694d684b dm-37 NETAPP,LUN C-Mode
size=512G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 alua' wp=rw
|-+- policy='round-robin 0' prio=50 status=active
| |- 1:0:4:18 sdoe 128:416 active ready running
| |- 0:0:4:18 sdpq 131:256 active ready running
| |- 0:0:5:18 sdsr 135:496 active ready running
| `- 1:0:5:18 sdsq 135:480 active ready running
`-+- policy='round-robin 0' prio=10 status=enabled
|- 1:0:1:18 sdfw 131:32 active ready running
|- 1:0:0:18 sdci 69:96 active ready running
|- 0:0:1:18 sdbz 68:208 active ready running
|- 0:0:0:18 sds 65:32 active ready running
|- 1:0:3:18 sdmd 69:336 active ready running
|- 1:0:2:18 sdjj 8:464 active ready running
|- 0:0:3:34 sdjt 65:368 active ready running
`- 0:0:2:34 sdgi 131:224 active ready running
这个过程适用于基于 Red Hat 6.x、7.x 和 8.x(RHEL - Red Hat Enterprise Linux)的系统,如 CentOS 和 Oracle Linux。
方法 1:如何使用 /sys 类文件在 Linux 上扫描新的 LUN 和 SCSI 磁盘
sysfs 文件系统是一个伪文件系统,它为内核数据结构提供了一个接口。
sysfs 下的文件提供了关于设备、内核模块、文件系统和其他内核组件的信息。
sysfs 文件系统通常被挂载在/sys。通常,它是由系统自动挂载的。
你可以使用echo命令来扫描每个 SCSI 主机设备,如下所示:
# echo "- - -" > /sys/class/scsi_host/host/scan
当你运行上面的重新扫描所有的命令时,三个破折号(- – -)指的是通配符选项。这些值如下:
# echo "c t l" > /sys/class/scsi_host/host/scan
这里:
c:HBA 上的通道
t:SCSI 目标 ID
l:LUN ID
n:HBA 编号
运行下面的命令来查找系统中所有的主机总线编号:
# ls /sys/class/scsi_host
host0 host1 host2
得到主机总线编号后,运行以下命令来发现新的磁盘:
# echo "- - -" > /sys/class/scsi_host/host0/scan
# echo "- - -" > /sys/class/scsi_host/host1/scan
# echo "- - -" > /sys/class/scsi_host/host2/scan
另外,还可以用for循环用一条命令进行扫描。
# for host in ls /sys/class/scsi_host/;do echo "- - -" >/sys/class/scsi_host/${host}/scan; done
你可以使用文章开头提到的ls 命令来检查它们。
# ls /dev/disk/by-id | grep -i "serial-hex of LUN"
方法 2:如何使用rescan-scsi-bus.sh脚本在 Linux 上扫描新的 LUN 和 SCSI 磁盘
确保你已经安装了sg3_utils包来使用这个脚本。否则,运行以下命令来安装它。
对于 RHEL/CentOS 6/7 系统,使用yum 命令安装sg3_utils。
# yum install -y sg3_utils
对于 RHEL/CentOS 8 和 Fedora 系统,使用dnf 命令安装 sg3_utils。
# dnf install -y sg3_utils
现在你可以使用rescan-scsi-bus.sh脚本重新扫描 LUN。
# ./rescan-scsi-bus.sh
via:http://www.2daygeek.com/scan-detect-luns-scsi-disks-on-redhat-centos-oracle-linux/
作者:Magesh Maruthamuthu选题:lujun9972译者:geekpi校对:wxy
本文由LCTT原创编译,Linux中国荣誉推出
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有帐号?
立即注册
收藏
0
相关帖子
•
说说鸿蒙操作系统
•
Linux操作系统应用试题
•
DBA常用Linux命令
•
缅怀那些年盗版XP系统:不仅埋葬了我的青春,还弄坏了我的电脑
•
INTEWELL案例为智慧风电保驾护航
•
怎样参与鸿蒙?
•
风河正在引领RTOS进入“现代化”创新期
•
Android面试必备:System、App、Activity启动过程
•
麒麟操作系统什么来头?为什么可随中国航天“上天”
回复
使用道具
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
表情
@朋友
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
浏览过的版块
招聘&找工作
ARM
生活交流*灌水区*工程师滋润生活*
快速回复
返回顶部
返回列表