Linux一键挂载ASM磁盘(适用几十上百块盘)

2021-08-17 15:18:13 浏览数 (2)

一、多路径 UDEV

1、使用多路径multipath挂载需要挂载的盘:mpath*格式。

代码语言:javascript复制
cat </etc/multipath.conf
defaults {
    user_friendly_names yes
}
 
blacklist {
  devnode "^sda"
}
EOF
multipath -F
multipath -v2

2、将多路径盘的UUID输出到udev_info文件中

代码语言:javascript复制
cd /dev/mapper
for i in `ls mpath*`;
do
printf "%s %sn" "$i" "$(udevadm info --query=all --name=/dev/mapper/$i |grep -i dm_uuid)">>udev_info;
done

3、写入到UDEV rule文件中

代码语言:javascript复制
cat /dev/mapper/udev_info |while read line 
do
dm_uuid=`echo $line |awk -F'=' '{print $2}'`;
disk_name=`echo $line|awk '{print $1}'`;
echo "KERNEL=="dm-*",ENV{DM_UUID}=="${dm_uuid}",SYMLINK ="asmdisks/${disk_name}",OWNER="grid",GROUP="asmadmin",MODE="0660"">>/etc/udev/rules.d/99-oracle-asmdevices.rules
done

二、asmlib

代码语言:javascript复制
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin
export PATH
i=1
while [ $i -lt 13 ]                  #硬盘数量,除系统盘之外是12块
do
j=`echo $i|awk '{printf "%c",97 $i}'` #系统盘是sda,如果是其它的需要修改脚本
fdisk /dev/sd$j <

0 人点赞