Linux下的裸设备研究(原创)

Linux平台下,缺省没有提供对磁盘设备的字符访问方式,必须通过配置rawdevices服务,把块设备绑定到裸设备上才行,具体方法有3种。这3种方法创建裸设备的方式完全一样,区别在于对Oracle用户权限处理方法的不同。RHEL5推荐使用第3种方法

第一种方法:
# vim /etc/sysconfig/rawdevices
/dev/raw/raw1   /dev/sdb1
/dev/raw/raw2   /dev/sdb2
#/etc/init.d/rawsdevices start
#chkconfig --level 235 rawdevices on

成功开启裸设备的标志为

# /etc/init.d/rawdevices status
/dev/raw/raw1:  bound to major 8, minor 17
/dev/raw/raw2:  bound to major 8, minor 18

为裸设备赋予权限
# chown oracle:oinstall /dev/raw/raw1 /dev/raw/raw2
# ll /dev/raw/raw*
crw-rw---- 1 oracle oinstall 162, 1 Jan 22 14:09 /dev/raw/raw1
crw-rw---- 1 oracle oinstall 162, 2 Jan 22 14:12 /dev/raw/raw2

配置成功。
这 种方法的问题在于,虽然创建了裸设备,但是这些裸设备是在rawdevices服务启动时创建的,而rawdevices是以root用户身份运行的。因 此这些裸设备缺省的owner是root:root。所以每次服务重启后都要重新修改这些设备的owner为oracle:oinstall.

第二种方法:
为了解决上述的问题,可以采用第二种方法。即用mknod提前创建出一个字符方式访问的文件,然后在文件绑定到块设备上,并把该文件的owner设置为oracle,因为这个文件是手工创建的,所以这个文件的owner不会被修改
# mknod /oradata c 162 1
# chown oracle:oinstall /oradata
# vim /etc/sysconfig/rawdevices
/oradata        /dev/sdd2

#/etc/init.d/rawsdevices start
#chkconfig --level 235 rawdevices on

第三种方法:
使用udev管理设备的权限
#vim /etc/udev/rules.d/50-udev.rules
KERNEL=="raw[0-9]*",MODE="0660",GROUP="oinstall",OWNER="oracle",NAME="raw/%k"
# vim /etc/sysconfig/rawdevices
/dev/raw/raw1   /dev/sdb1
/dev/raw/raw2   /dev/sdb2

#/etc/init.d/rawsdevices start
#chkconfig --level 235 rawdevices on


参考至:《大话Oracle RAC》张晓明著
本文原创,转载请注明出处、作者
如有错误,欢迎指正
邮箱:czmcj@163.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值