99-oracle-asmdevices.rules(udev方式创建asm磁盘)
一、创建asm磁盘的几种方式
创建asm方式很多主要有以下几种 1、Faking方式 2、裸设备方式 3、udev方式(它下面有两种方式) 3.1 uuid方式. 3.2 raw方式(裸设备方式) 4、asmlib方式(oracleasm)
二、环境情况采样
[grid@shdb02 ~]$ cat /etc/redhat-release Red Hat Enterprise Linux Server release 6.4 (Santiago) [grid@shfpdb02 ~]$ uname -r 2.6.32-358.el6.x86_64
三、使用asmca创建磁盘组,四个磁盘组
NAME STATE ------------------------------ ----------- ARCH MOUNTED DATA MOUNTED FRA MOUNTED OCR MOUNTED
四、创建asm磁盘,前提条件是需要准备以下
1、A disk or partition from a storage array //一个磁盘或者是磁盘阵列的分区
2、An entire disk or the partitions of a disk //是一个完整的磁盘或是一个磁盘的分区
3、Logical volumes //一个磁盘的逻辑卷
4、Network-attached files (NAS) //NAS(Network-attached storage,网络连接存储)
五、lsblk -f | grep sd ,得到目前创建的磁盘对应关系
[root@shfpdb02 grid]# lsblk -f | grep sd sda ├─sda1 ext4 cf0f3592-a2dc-497c-be07-d4f1e0d42253 /boot └─sda2 LVM2_member nY2JaS-cCZf-qn6E-f4XS-i6Ph-Bf3Y-DxLWF9 sdb oracleasm sdc oracleasm sdd oracleasm sde oracleasm sdf oracleasm sdg oracleasm sdh oracleasm sdi oracleasm sdj sdk oracleasm sdl oracleasm sdm oracleasm sdn oracleasm sdo oracleasm sdp oracleasm sdq oracleasm sdr oracleasm sds oracleasm sdt oracleasm sdu oracleasm sdv oracleasm sdw oracleasm sdx oracleasm sdy oracleasm sdz oracleasm sdaa oracleasm sdab oracleasm sdac oracleasm sdad oracleasm
六、udev方式创建asm磁盘大致创建过程
一、udev方式创建asm磁盘,采用uuid需要添加多块磁盘。大致流程如下 1、获取需要绑定为ASM Disk的磁盘uuid 2、新建/etc/udev/rules.d/99-oracle-asmdevices.rules,增加.... 3、重启start_udev服务 二、/etc/udev/rules.d/99-oracle-asmdevices.rules创建 1、获取需要绑定为ASM Disk的磁盘uuid,比如我们要使用/dev/asm-diskaa作为ASM磁盘,那么uuid,下面实际文件中有: [grid@shfpdb02 ~]$ /sbin/scsi_id -g -u -d /dev/asm-diskaa 369ce37410023334d07db5f9700000019 2、重启服务: [root@rac1 ~]# start_udev Starting udev: [ OK ]
我们看下asm磁盘和真正的磁盘分区的对应关系
[root@shfpdb02 src]# ls /dev/asm*
/dev/asm-diskaa /dev/asm-diskb /dev/asm-diskf /dev/asm-diskk /dev/asm-disko /dev/asm-disks /dev/asm-diskw
/dev/asm-diskab /dev/asm-diskc /dev/asm-diskg /dev/asm-diskl /dev/asm-diskp /dev/asm-diskt /dev/asm-diskx
/dev/asm-diskac /dev/asm-diskd /dev/asm-diskh /dev/asm-diskm /dev/asm-diskq /dev/asm-disku /dev/asm-disky
/dev/asm-diskad /dev/asm-diske /dev/asm-diski /dev/asm-diskn /dev/asm-diskr /dev/asm-diskv /dev/asm-diskz
[root@shfpdb02 src]# ls /dev/sd*
/dev/sda /dev/sdaa /dev/sdad /dev/sdd /dev/sdg /dev/sdj /dev/sdm /dev/sdp /dev/sds /dev/sdv /dev/sdy
/dev/sda1 /dev/sdab /dev/sdb /dev/sde /dev/sdh /dev/sdk /dev/sdn /dev/sdq /dev/sdt /dev/sdw /dev/sdz
/dev/sda2 /dev/sdac /dev/sdc /dev/sdf /dev/sdi /dev/sdl /dev/sdo /dev/sdr /dev/sdu /dev/sdx
//磁盘的uuid是唯一的..不管名称有什么变化.
[root@shfpdb02 src]# /sbin/scsi_id -g -u -d /dev/sdaa 369ce37410023334d07db5f9700000019
[root@shfpdb02 src]# /sbin/scsi_id -g -u -d /dev/asm-diskaa
369ce37410023334d07db5f9700000019
//我们看到他们是一样的
/etc/init.d/oracleasm createdisk asm-diskaa /dev/sdaa //这样对应起来的
七、查看创建的磁盘组,查询可得
SQL> select name,state from v$asm_diskgroup; NAME STATE ------------------------------ ----------- ARCH MOUNTED DATA MOUNTED FRA MOUNTED OCR MOUNTED SQL> set line 9999 SQL> select group_number,disk_number ,path from v$asm_disk; GROUP_NUMBER DISK_NUMBER PATH ------------ ----------- ---------------------------------------------------------------- 0 3 /dev/asm-disky 0 8 /dev/asm-diskz 0 10 /dev/asm-diskx 0 12 /dev/asm-diskw 0 14 /dev/asm-diskv 0 15 /dev/asm-disku 0 16 /dev/asm-diskt 0 18 /dev/asm-disks 2 3 /dev/asm-diskad 2 2 /dev/asm-diskac 1 4 /dev/asm-diski GROUP_NUMBER DISK_NUMBER PATH ------------ ----------- -------------------------------------------------------------------------------------- 2 1 /dev/asm-diskab 2 0 /dev/asm-diskaa 1 1 /dev/asm-diskf 1 2 /dev/asm-diskg 1 0 /dev/asm-diske 4 2 /dev/asm-diskd 2 6 /dev/asm-diskq 2 7 /dev/asm-diskr 4 1 /dev/asm-diskc 2 5 /dev/asm-diskp GROUP_NUMBER DISK_NUMBER PATH ------------ ----------- ------------------------------------------------------------ 3 3 /dev/asm-diskn 3 1 /dev/asm-diskl 3 2 /dev/asm-diskm 3 0 /dev/asm-diskk 4 0 /dev/asm-diskb 28 rows selected.
八、写入udev .rules ( 99-oracle-asmdevices.rules.) udev方式绑定多路径
[grid@shfpdb02 ~]$su - grid
[grid@shfpdb02 ~]$ ln -s /lib/libcap.so.2.16 /lib/libcap.so.1
[grid@shfpdb02 ~]$ echo "/sbin/start_udev" >> /etc/rc.local
[grid@shfpdb02 ~]$vi /etc/udev/rules.d/99-oracle-asmdevices.rules
[root@shfpdb02 grid]# cat /etc/udev/rules.d/99-oracle-asmdevices.rules
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d0029d52900000000", NAME="asm-diskb", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d0029f6d900000001", NAME="asm-diskc", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d002a0ae000000002", NAME="asm-diskd", OWNER="grid", GROUP="asmadmin", MODE="0660"
#KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d002a473e00000003", NAME="asm-diske", OWNER="grid", GROUP="asmadmin", MODE="0660"
#KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d002b566e00000004", NAME="asm-diskf", OWNER="grid", GROUP="asmadmin", MODE="0660"
#KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d002b6ec600000005", NAME="asm-diskg", OWNER="grid", GROUP="asmadmin", MODE="0660"
#KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d002ac4a400000006", NAME="asm-diskh", OWNER="grid", GROUP="asmadmin", MODE="0660"
#KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d002ad45e00000007", NAME="asm-diski", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07da033b00000003", NAME="asm-diske", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07da038500000004", NAME="asm-diskf", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07da03ca00000005", NAME="asm-diskg", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07da03fc00000006", NAME="asm-diskh", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07da045100000007", NAME="asm-diski", OWNER="grid", GROUP="asmadmin", MODE="0660"
#KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07dc2c4b00000008", NAME="asm-diskj", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07da048700000009", NAME="asm-diskk", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07da04df0000000a", NAME="asm-diskl", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07da05170000000b", NAME="asm-diskm", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07da05680000000c", NAME="asm-diskn", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07da05a60000000d", NAME="asm-disko", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07db20180000000e", NAME="asm-diskp", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07db20500000000f", NAME="asm-diskq", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07db209e00000010", NAME="asm-diskr", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07db20d700000011", NAME="asm-disks", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07db213300000012", NAME="asm-diskt", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07db5dbf00000013", NAME="asm-disku", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07db5e2100000014", NAME="asm-diskv", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07db5e5800000015", NAME="asm-diskw", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07db5eb200000016", NAME="asm-diskx", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07db5ef100000017", NAME="asm-disky", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07db5f5000000018", NAME="asm-diskz", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07db5f9700000019", NAME="asm-diskaa", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07db60060000001a", NAME="asm-diskab", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07db604e0000001b", NAME="asm-diskac", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="369ce37410023334d07db60ae0000001c", NAME="asm-diskad", OWNER="grid", GROUP="asmadmin", MODE="0660"
//重新加载udev规则配置文件
[grid@shfpdb02 ~]$ udevadm control --reload-rules
//start_udev命令可以重新启动udev服务,udev服务重新读取配置文件,在/dev/下创建真实设备的设备名称
[grid@shfpdb02 ~]$ start_udev
// 使规则生效,生成udev设备文件
[grid@shfpdb02 ~]$ udevadm trigger
[grid@shfpdb02 ~]$ reboot
九、udevadm命令来管理udev
udev是Linux内核的设备管理器。它主要的功能是管理/dev目录底下的设备节点。它同时也是用来接替devfs(设备文件系统)及hotplug(热拔插)的功能,
这意味着它要在添加/删除硬件时处理/dev目录以及所有用户空间的行为,包括加载firmware时。
udevadm命令是管理udev的一个工具
udevadm可以用来监视和控制udev运行时的行为,请求内核事件,管理事件队列,以及提供简单的调试机制
udevadm命令参数选项:
--debug 打印错误信息
--version 打印版本信息
--help 帮助文档
udevadm info options 查询udev数据库中的设备信息。也可以从sysfs文件系统中查询到设备的属性以辅助创建udev规则。
--query=type 从数据库中查询指定类型的设备。需要--path和--name来指定设备。合法的查询文件是:设备名,链接,路径,属性
--path=devpath 设备的路径
--name=file 设备节点或者链接
--attribute-walk 打印指定设备的所有sysfs记录的属性,以用来udev规则匹配特殊的设备。该选项打印链上的所有设备信息,最大可能到sys目录。
--device-id-of-file=file 打印主/从设备号
--export-db 输出udev数据库中的内容
udevadm trigger [options] 接收内核发送来的设备事件。主要用于重放coldplug事件信息
(译者补充:内核在启动时已经检测到了系统的硬件设备,并把硬件设备信息通过sysfs内核虚拟文件系统导出。udev扫描sysfs文件系统,根据硬件设备信息生成热插拔(hotplug)事件,udev再读取这些事件,生成对应的硬件设备文件。由于没有实际的硬件插拔动作,所以这一过程被称为coldplug。)
--verbose 输出将要被触发的设备列表。
--dry-run 不真的触发事件
--type=type 触发一个特殊的设备。合法的类型:devices,subsystem,failed.默认是devices
--action=action 被触发的事件,默认是change
--subsystem-match=subsystem 触发匹配子系统的设备事件。这个选项可以被多次指定,并且支持shell模式匹配。
--attr-match=attribute=value 触发匹配sysfs属性的设备事件。如果属性值和属性一起指定,属性的值可以使用shell模式匹配。如果没有指定值,会重新确认现有属性。这个选项可以被多次指定。
--attr-nomatch=attribute=value 不要触发匹配属性的设备事件。如果可以使用模式匹配。也可以多次指定
--property-match=property=value 匹配属性吻合的设备。可以多次指定支持模式匹配
--tag-match=property 匹配标签吻合的设备。可以多次指定。
--sysname-match=name 匹配sys设备名相同的设备。可以多次指定支持模式匹配。
udevadm settle [options] 查看udev事件队列,如果所有事件全部处理完就退出。
--timeout=seconds 等待事件队列空的最大时间。默认是180秒。如果是0则立即退出。
--seq-start=seqnum 只等待到给定的顺序号。
--seq-end=seqnum 只等待到给定顺序号之前。
--exit-if-exists=file 如果文件存在就退出
--quiet 不输出任何信息
udevadm monitor [options] 监听内核事件和udev发送的events事件。打印事件发出的设备。可以通过比较内核或者udev事件的时间戳来分析事件时序。
--kernel 输出内核事件
--udev 输出udev规则执行时的udev事件
--property 输出事件的属性
--subsystem-match=string 通过子系统或者设备类型过滤事件。只有匹配了子系统值的udev设备事件通过。
--tag-match=string 通过属性过滤事件,只有匹配了标签的udev事件通过。
udevadm test [options] devpath 模拟一个udev事件,打印出debug信息。
[root@shfpdb02 grid]# udevadm info --query=all --name=sda
P: /devices/pci0000:00/0000:00:03.2/0000:03:00.0/host0/target0:1:0/0:1:0:0/block/sda
N: sda
W: 175
S: block/8:0
S: disk/by-id/scsi-3600508e00000000033c0716c8113760c
S: disk/by-path/pci-0000:03:00.0-scsi-0:1:0:0
S: disk/by-id/wwn-0x600508e00000000033c0716c8113760c
E: UDEV_LOG=3
E: DEVPATH=/devices/pci0000:00/0000:00:03.2/0000:03:00.0/host0/target0:1:0/0:1:0:0/block/sda
E: MAJOR=8
E: MINOR=0
E: DEVNAME=/dev/sda
E: DEVTYPE=disk
E: SUBSYSTEM=block
E: MPATH_SBIN_PATH=/sbin
E: ID_SCSI=1
E: ID_VENDOR=LSI
E: ID_VENDOR_ENC=LSI\x20\x20\x20\x20\x20
E: ID_MODEL=Logical_Volume
E: ID_MODEL_ENC=Logical\x20Volume\x20\x20
E: ID_REVISION=3000
E: ID_TYPE=disk
E: ID_SERIAL_RAW=3600508e00000000033c0716c8113760c
E: ID_SERIAL=3600508e00000000033c0716c8113760c
E: ID_SERIAL_SHORT=600508e00000000033c0716c8113760c
E: ID_WWN=0x600508e000000000
E: ID_WWN_VENDOR_EXTENSION=0x33c0716c8113760c
E: ID_WWN_WITH_EXTENSION=0x600508e00000000033c0716c8113760c
E: ID_SCSI_SERIAL=1819394099209064833
E: ID_BUS=scsi
E: ID_PATH=pci-0000:03:00.0-scsi-0:1:0:0
E: ID_PART_TABLE_TYPE=dos
E: LVM_SBIN_PATH=/sbin
E: UDISKS_PRESENTATION_NOPOLICY=0
E: UDISKS_PARTITION_TABLE=1
E: UDISKS_PARTITION_TABLE_SCHEME=mbr
E: UDISKS_PARTITION_TABLE_COUNT=2
E: DEVLINKS=/dev/block/8:0 /dev/disk/by-id/scsi-3600508e00000000033c0716c8113760c /dev/disk/by-path/pci-0000:03:00.0-scsi-0:1:0:0 /dev/disk/by-id/wwn-0x600508e00000000033c0716c8113760c
[root@shfpdb02 grid]# udevadm info -a -n /dev/asm-diskaa
Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.
looking at device '/devices/up_primary/up_adapter/host9/target9:0:0/9:0:0:26/block/sdaa':
KERNEL=="sdaa"
SUBSYSTEM=="block"
DRIVER==""
ATTR{range}=="16"
ATTR{ext_range}=="256"
ATTR{removable}=="0"
ATTR{ro}=="0"
ATTR{size}=="2147483648"
ATTR{alignment_offset}=="0"
ATTR{discard_alignment}=="0"
ATTR{capability}=="52"
ATTR{stat}=="14119789 0 436708127 3268766 346713 0 7106989 196397 0 3296355 3357899"
ATTR{inflight}==" 0 0"
looking at parent device '/devices/up_primary/up_adapter/host9/target9:0:0/9:0:0:26':
KERNELS=="9:0:0:26"
SUBSYSTEMS=="scsi"
DRIVERS=="sd"
ATTRS{device_blocked}=="0"
ATTRS{type}=="0"
ATTRS{scsi_level}=="7"
ATTRS{vendor}=="up "
ATTRS{model}=="updisk "
ATTRS{rev}=="4303"
ATTRS{state}=="running"
ATTRS{timeout}=="30"
ATTRS{iocounterbits}=="32"
ATTRS{iorequest_cnt}=="0x119"
ATTRS{iodone_cnt}=="0x119"
ATTRS{ioerr_cnt}=="0x0"
ATTRS{modalias}=="scsi:t-0x00"
ATTRS{evt_media_change}=="0"
ATTRS{dh_state}=="detached"
ATTRS{queue_depth}=="30"
ATTRS{queue_type}=="none"
looking at parent device '/devices/up_primary/up_adapter/host9/target9:0:0':
KERNELS=="target9:0:0"
SUBSYSTEMS=="scsi"
DRIVERS==""
looking at parent device '/devices/up_primary/up_adapter/host9':
KERNELS=="host9"
SUBSYSTEMS=="scsi"
DRIVERS==""
looking at parent device '/devices/up_primary/up_adapter':
KERNELS=="up_adapter"
SUBSYSTEMS=="up_vbus"
DRIVERS=="up_vbus_driver"
looking at parent device '/devices/up_primary':
KERNELS=="up_primary"
SUBSYSTEMS==""
DRIVERS==""
fdisk -l | grep sd,lsblk -f | grep sd
[root@shfpdb02 grid]# fdisk -l | grep sd Disk /dev/sda: 599.0 GB, 598999040000 bytes /dev/sda1 * 1 64 512000 83 Linux /dev/sda2 64 72825 584446976 8e Linux LVM Disk /dev/sdb: 10.7 GB, 10737418240 bytes Disk /dev/sdc: 10.7 GB, 10737418240 bytes Disk /dev/sdd: 10.7 GB, 10737418240 bytes Disk /dev/sde: 1099.5 GB, 1099511627776 bytes Disk /dev/sdf: 1099.5 GB, 1099511627776 bytes Disk /dev/sdg: 1099.5 GB, 1099511627776 bytes Disk /dev/sdh: 1099.5 GB, 1099511627776 bytes Disk /dev/sdi: 1099.5 GB, 1099511627776 bytes Disk /dev/sdj: 5497.6 GB, 5497558138880 bytes Disk /dev/sdk: 1099.5 GB, 1099511627776 bytes Disk /dev/sdl: 1099.5 GB, 1099511627776 bytes Disk /dev/sdm: 1099.5 GB, 1099511627776 bytes Disk /dev/sdn: 1099.5 GB, 1099511627776 bytes Disk /dev/sdo: 1099.5 GB, 1099511627776 bytes Disk /dev/sdp: 1099.5 GB, 1099511627776 bytes Disk /dev/sdq: 1099.5 GB, 1099511627776 bytes Disk /dev/sdr: 1099.5 GB, 1099511627776 bytes Disk /dev/sds: 1099.5 GB, 1099511627776 bytes Disk /dev/sdt: 1099.5 GB, 1099511627776 bytes Disk /dev/sdu: 1099.5 GB, 1099511627776 bytes Disk /dev/sdv: 1099.5 GB, 1099511627776 bytes Disk /dev/sdw: 1099.5 GB, 1099511627776 bytes Disk /dev/sdx: 1099.5 GB, 1099511627776 bytes Disk /dev/sdy: 1099.5 GB, 1099511627776 bytes Disk /dev/sdz: 1099.5 GB, 1099511627776 bytes Disk /dev/sdaa: 1099.5 GB, 1099511627776 bytes Disk /dev/sdab: 1099.5 GB, 1099511627776 bytes Disk /dev/sdac: 1099.5 GB, 1099511627776 bytes Disk /dev/sdad: 1099.5 GB, 1099511627776 bytes
二、查看asm磁盘
[root@shfpdb02 grid]# ls -lt /dev/asm-disk* brw-rw---- 1 grid asmadmin 8, 48 Mar 14 19:44 /dev/asm-diskd brw-rw---- 1 grid asmadmin 8, 16 Mar 14 19:44 /dev/asm-diskb brw-rw---- 1 grid asmadmin 8, 32 Mar 14 19:44 /dev/asm-diskc brw-rw---- 1 grid asmadmin 65, 192 Mar 14 19:44 /dev/asm-diskac brw-rw---- 1 grid asmadmin 8, 240 Mar 14 19:44 /dev/asm-diskp brw-rw---- 1 grid asmadmin 65, 176 Mar 14 19:44 /dev/asm-diskab brw-rw---- 1 grid asmadmin 8, 224 Mar 14 19:44 /dev/asm-disko brw-rw---- 1 grid asmadmin 65, 0 Mar 14 19:43 /dev/asm-diskq brw-rw---- 1 grid asmadmin 65, 16 Mar 14 19:41 /dev/asm-diskr brw-rw---- 1 grid asmadmin 65, 160 Mar 14 19:41 /dev/asm-diskaa brw-rw---- 1 grid asmadmin 65, 208 Mar 14 19:39 /dev/asm-diskad brw-rw---- 1 grid asmadmin 8, 176 Dec 15 11:19 /dev/asm-diskl brw-rw---- 1 grid asmadmin 8, 208 Dec 15 11:19 /dev/asm-diskn brw-rw---- 1 grid asmadmin 8, 192 Dec 15 11:19 /dev/asm-diskm brw-rw---- 1 grid asmadmin 8, 112 Dec 15 11:17 /dev/asm-diskh brw-rw---- 1 grid asmadmin 8, 128 Dec 15 10:55 /dev/asm-diski brw-rw---- 1 grid asmadmin 8, 96 Dec 15 10:55 /dev/asm-diskg brw-rw---- 1 grid asmadmin 65, 128 Dec 15 10:55 /dev/asm-disky brw-rw---- 1 grid asmadmin 65, 144 Dec 15 10:55 /dev/asm-diskz brw-rw---- 1 grid asmadmin 8, 64 Dec 15 10:55 /dev/asm-diske brw-rw---- 1 grid asmadmin 8, 80 Dec 15 10:55 /dev/asm-diskf brw-rw---- 1 grid asmadmin 65, 48 Dec 15 10:55 /dev/asm-diskt brw-rw---- 1 grid asmadmin 65, 112 Dec 15 10:55 /dev/asm-diskx brw-rw---- 1 grid asmadmin 65, 80 Dec 15 10:55 /dev/asm-diskv brw-rw---- 1 grid asmadmin 65, 96 Dec 15 10:55 /dev/asm-diskw brw-rw---- 1 grid asmadmin 65, 32 Dec 15 10:55 /dev/asm-disks brw-rw---- 1 grid asmadmin 65, 64 Dec 15 10:55 /dev/asm-disku brw-rw---- 1 grid asmadmin 8, 160 Dec 15 10:55 /dev/asm-diskk
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类