查看磁盘分区情况
# fdisk -l /dev/sdb
Disk /dev/sdb: 4880 MB, 4880072704 bytes
255 heads, 63 sectors/track, 593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 25 200781 83 Linux
/dev/sdb2 26 50 200812+ 83 Linux
配置 /etc/udev/rules.d/60-raw.rules文件
# grep -v ^# /etc/udev/rules.d/60-raw.rules
ACTION=="add", KERNEL=="sdb1", RUN+="/bin/raw /dev/raw/raw1 %N"
ACTION=="add", KERNEL=="sdb2", RUN+="/bin/raw /dev/raw/raw2 %N"
ACTION=="add", ENV{MAJOR}=="3", ENV{MINOR}=="2", RUN+="/bin/raw /dev/raw/raw1 %M %m"
ACTION=="add", ENV{MAJOR}=="7", ENV{MINOR}=="2", RUN+="/bin/raw /dev/raw/raw2 %M %m"
启动raw设备
# start_udev
Starting udev: [ OK ]
查看配置情况
# raw -qa
/dev/raw/raw1: bound to major 8, minor 17
/dev/raw/raw2: bound to major 8, minor 18
这里笔者不清楚为什么主设备号和复设备号并不和我在 /etc/udev/rules.d/60-raw.rules指定的一样,望了解的读者告知,系统内核信息如下
# uname -a
Linux rac1 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:54 EDT 2009 i686 i686 i386 GNU/Linux
# cat /etc/RedHat-release
Red Hat Enterprise Linux Server release 5.4 (Tikanga)
可以通过如下方式指定 主设备号和复设备号
# raw /dev/raw/raw1 1 1
/dev/raw/raw1: bound to major 1, minor 1
删除裸设备
# raw /dev/raw/raw2 0 0
/dev/raw/raw2: bound to major 0, minor 0
# raw -qa
/dev/raw/raw1: bound to major 1, minor 1
以上设置必须同时修改 /etc/udev/rules.d/60-raw.rules才能保证重启后生效,否则重启后系统会重新读取 /etc/udev/rules.d/60-raw.rules
如需设置raw设备的用户和权限信息,可在/etc/udev/rules.d/60-raw.rules文件里添加如下信息:
ACTION=="add", KERNEL=="raw1", OWNER="dave", GROUP="tianlesoftware", MODE="660"
如果有多个raw设备,可以写成:
ACTION=="add", KERNEL=="raw[1-4]", OWNER="dave", GROUP="tianlesoftware", MODE="660"
#chown Oracle:oinstall /dev/raw/raw[1-4]
#chmod 775 /dev/raw/raw[1-4]
注意:在内核2.6.9-89.5AXS2之前使用/etc/sysconfig/rawdevices和/etc/udev/permissions.d/50-udev.permissions进行raw设备的配置和权限管理。在内核 2.6.18-128.7AXS3以后则使用了本文介绍的 /etc/udev/rules.d/60-raw.rules进行raw设备的管理