首页 > 代码库 > centos6上安装RAC权限绑定问题

centos6上安装RAC权限绑定问题

自己的环境如下:

[root@syk1 ~]# ll /dev/mapper/*
crw-rw---- 1 root root 10, 58 Oct 24 07:59 /dev/mapper/control
lrwxrwxrwx 1 root root      7 Oct 26 09:19 /dev/mapper/dg -> ../dm-0
lrwxrwxrwx 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-0
brw-rw---- 1 grid asmadmin 253, 1 Oct 26 09:43 /dev/dm-1
[root@syk1 ~]# more /etc/multipath.conf 
defaults {
user_friendly_names       yes
max_fds                   max
queue_without_daemon      no
flush_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" 

添加上面的每一条信息 



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

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


本文出自 “刚刚出壳的小鸟” 博客,请务必保留此出处http://qhd2004.blog.51cto.com/629417/1866011

centos6上安装RAC权限绑定问题