Linux不重启识别新挂载磁盘

系统教程10个月前发布 wangzi
4 0 0

Linux不重启识别新挂载磁盘

一、概述

RAC数据库扩容存储空间,新挂载过来的盘没有识别到,通过fdisk -l命令没有看到。经查询需要重启或者扫描来看到新挂载的磁盘,今天分享一下具体的方法。

环境:OEL 6.4 和 RAC 11.2.0.4

二、关键事项

  • 不要使用/dev/sdX 或 /dev/dm-XX 作为设备名称,因为此设备名称在重新启动后可能会更改
  • 使用WWID 识别设备
  • 全局标识符 (WWID) 可用于可靠地识别磁盘设备。
  • WWID 是 SCSI 标准要求所有 SCSI 设备提供的持久的、独立于系统的 ID。

三、显示系统上所有可用的 WWID

Shell script to display WWID on your system
#!/bin/bash
#
#Usage: As root user run : ./check_wwid.sh
#
for FILE in `find /dev -name "sd*" | sort`
do
WWID=`scsi_id --whitelisted --replace-whitespace --device=$FILE `
echo $FILE " WWID: " $WWID
done

$ sudo ./check_wwid.sh
..
/dev/sdb WWID: 1ATA_VBOX_HARDDISK_VB81c4f844-94203a15
/dev/sdb1 WWID: 1ATA_VBOX_HARDDISK_VB81c4f844-94203a15
/dev/sdc WWID: 1ATA_VBOX_HARDDISK_VB2ed83c09-e66dbcfb
/dev/sdc1 WWID: 1ATA_VBOX_HARDDISK_VB2ed83c09-e66dbcfb
..
--> Of course WWIDs for partitions and for the complete disk are identical
# cat 99-oracle-asmdevices.rules
KERNEL=="sd*", SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", ENV{ID_SERIAL}=="14f504e46494c45523264556151442d5261336d2d566e4250", OWNER="grid", GROUP="asmadmin", MODE="0660"

# ls -ls /dev/sdr
0 brw-rw----. 1 grid asmadmin 65, 16 Mar 19 14:42 /dev/sdr

Reload and Restart the udev rules
# udevadm control --reload-rules
# start_udev
Starting udev: [ OK ]
Verify disk protections:
# ls -ltr /dev/asm*
brw-rw----. 1 grid asmadmin 8, 17 Mar 15 10:03 /dev/asmdisk1_udev_sdb1
brw-rw----. 1 grid asmadmin 8, 33 Mar 15 10:03 /dev/asmdisk2_udev_sdc1

Redistribute 99-oracle-asmdevices.rules file to all cluster nodes and restat udev echo system on these nodes
# scp 99-oracle-asmdevices.rules grac42:/etc/udev/rules.d
# scp 99-oracle-asmdevices.rules grac43:/etc/udev/rules.d

On each RAC node
# udevadm control --reload-rules
# start_udev
# ls -ltr /dev/asm*
brw-rw----. 1 grid asmadmin 8, 17 Mar 15 10:03 /dev/asmdisk1_udev_sdb1
brw-rw----. 1 grid asmadmin 8, 33 Mar 15 10:03 /dev/asmdisk2_udev_sdc1

四、使用 /sbin/scsi_id 的磁盘分区的 UDev 规则(首选模式,因为我们可以更改名称)

请注意此示例映射: /dev/sdb1 到 /dev/asmdisk1_udev_sdb1:

# cat 99-oracle-asmdevices.rules
KERNEL=="sd?1", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -d /dev/$parent", RESULT=="1ATA_VBOX_HARDDISK_VB81c4f844-94203a15", NAME=
"asmdisk1_udev_sdb1", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd?1", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -d /dev/$parent", RESULT=="1ATA_VBOX_HARDDISK_VB2ed83c09-e66dbcfb", NAME=
"asmdisk1_udev_sdc1", OWNER="grid", GROUP="asmadmin", MODE="0660"

# ls -l /dev/asmdisk1_udev_sdb1 /dev/asmdisk1_udev_sdc1
brw-rw----. 1 grid asmadmin 8, 17 Mar 19 13:53 /dev/asmdisk1_udev_sdb1
brw-rw----. 1 grid asmadmin 8, 33 Mar 19 13:53 /dev/asmdisk1_udev_sdc1

五、磁盘组

(1) 扩容磁盘组

查找到path:

select group_number,disk_number ,path from v$asm_disk;

扩容磁盘组:

alter diskgroup data2 add disk '/dev/asm-diski';
ALTER DISKGROUP DATA2 REBALANCE POWER 10;

查看是均衡完成:

select operation,est_minutes from v$asm_operation;

完成之后修改回去:

alter diskgroup DATA rebalance power 1;

或者:直接做均衡:

alter diskgroup DATA add disk '/dev/asm-diski' rebalance power 10;

© 版权声明

相关文章