千家信息网

centos6上安装RAC权限绑定问题

发表于:2024-10-10 作者:千家信息网编辑
千家信息网最后更新 2024年10月10日,自己的环境如下:[root@syk1 ~]# ll /dev/mapper/*crw-rw---- 1 root root 10, 58 Oct 24 07:59 /dev/mapper/contro
千家信息网最后更新 2024年10月10日centos6上安装RAC权限绑定问题

自己的环境如下:

[root@syk1 ~]# ll /dev/mapper/*crw-rw---- 1 root root 10, 58 Oct 24 07:59 /dev/mapper/controllrwxrwxrwx 1 root root      7 Oct 26 09:19 /dev/mapper/dg -> ../dm-0lrwxrwxrwx 1 root root      7 Oct 26 09:19 /dev/mapper/ocr -> ../dm-1[root@syk1 ~]# ll /dev/dm-*brw-rw---- 1 grid asmadmin 253, 0 Oct 26 09:43 /dev/dm-0brw-rw---- 1 grid asmadmin 253, 1 Oct 26 09:43 /dev/dm-1[root@syk1 ~]# more /etc/multipath.conf defaults {user_friendly_names       yesmax_fds                   maxqueue_without_daemon      noflush_on_last_del         yes}multipaths  {                    multipath {                   wwid 14f504e46494c4552736437624e562d55494b362d5130656e                   alias ocr            }            multipath {                   wwid 14f504e46494c45525742544e57792d3349514d2d5472315a                   alias dg            }}[root@syk1 ~]# more /etc/udev/rules.d/12-dm-permissions.rules      60-raw.rules                 90-alsa.rules                98-kexec.rules               60-fprint-autosuspend.rules  70-persistent-cd.rules       90-hal.rules                 99-fuse.rules                60-pcmcia.rules              70-persistent-net.rules      97-bluetooth-serial.rules    [root@syk1 ~]# more /etc/udev/rules.d/12-dm-permissions.rules ENV{DM_NAME}=="dg", OWNER:="grid", GROUP:="asmadmin", MODE:="0660", SYMLINK+="iscsi/oraasm-$env{DM_NAME}"ENV{DM_NAME}=="ocr", OWNER:="grid", GROUP:="asmadmin", MODE:="0660", SYMLINK+="iscsi/oraasm-$env{DM_NAME}"

转载一个帖子:关于RHEL6安装RAC权限绑定问题

红帽企业版 Linux 6.0 开始弃用 /etc/multipath.conf 配置文件中的mode、uid 和 gid 参数。device-mapper 设备的权限(包括 multipath 映射)由 udev 规则设定,在我们安装RAC的过程中,对权限的给予是一个比较麻烦的问题,一般来说,无论是RHEL5还是RHEL6我们都会通过UDEV来对权限做很好的控制,一下说明在RHEL6下通过两种方法对磁盘权限做控制


方法一:

如果使用的是linux自带的多路径软件我们可以使用如下:

/usr/share/doc/device-mapper-version 中有一个模板文件,名为 12-dm-permissions.rules,我们可以使用它并将其放在 /etc/udev/rules.d 目录中使其生效

主要就是修改以下内容,如:

ENV{DM_NAME}=="mpatha", OWNER:="grid", GROUP:="oinstall", MODE:="660"


如果给多路径设备指定了别名,如/etc/multipath.conf配置如下

multipath {

wwid 360050763008101d4e00000000000000a

alias ocr

则12-dm-permissions.rules里面需要用别名替换默认的mpath*如:

ENV{DM_NAME}=="ocr", OWNER:="grid", GROUP:="oinstall", MODE:="660"

配置完成后,执行udevadm trigge使配置生效,如果不行再用start_udev

[root@rac1 ~]# udevadm trigger

检查dm设备权限是否正确

[root@rac1 rules.d]# ll /dev/dm*



方法二:

如果采用的是存储自带的多路径软件,比如HDS存储的多路径软件:

则采用在/etc/udev/rules.d/99-oracle-asmdevices.rules

KERNEL=="sddlmac*",OWNER="grid", GROUP="oinstall", MODE="0660"

KERNEL=="sddlmaa*",OWNER="grid", GROUP="oinstall", MODE="0660"

KERNEL=="sddlmab*",OWNER="grid", GROUP="oinstall", MODE="0660"



如果采用的是Linux自带的多路径软件DM-Multipath则需要先获取存储挂在设备的UUID号:

比如,我们通过multipath创建了如下几个设备:

ocrvote1p1 ocrvote2p1 ocrvote3p1 db1p1 db2p1 frap1 redop1

通过如下的命令获取UUID:

# for i in ocrvote1p1 ocrvote2p1 ocrvote3p1 db1p1 db2p1 frap1 redop1; do

printf "%s %s\n" "$i" "$(udevadm info --query=all --name=/dev/mapper/$i |

grep -i dm_uuid)"; done



结果类似如下:

ocrvote1p1 E: DM_UUID=part1-mpath-3600c0ff000dabfe596a0f65101000000

ocrvote2p1 E: DM_UUID=part1-mpath-3600c0ff000dabfe5a2a0f65101000000

ocrvote3p1 E: DM_UUID=part1-mpath-3600c0ff000dabfe5b4a0f65101000000

db1p1 E: DM_UUID=part1-mpath-3600c0ff000d7e7a854a0f65101000000

db2p1 E: DM_UUID=part1-mpath-3600c0ff000dabfe562a0f65101000000

frap1 E: DM_UUID=part1-mpath-3600c0ff000d7e7a874a0f65101000000

redop1 E: DM_UUID=part1-mpath-3600c0ff000dabfe585a0f65101000000





那么我们在/etc/udev/rules.d/99-oracle-asmdevices.rules下做如下编辑:

KERNEL=="dm-*",ENV{DM_UUID}=="part1-mpath-3600c0ff000dabfe5f4d8515101000000",OWNER="grid",GROUP="oinstall",MODE="0660"

添加上面的每一条信息



通过以上两种方式我们均可以绑定多路径设备权限,并且保证不发生变化

建议采用存储自带的多路径软件


0