1. 查看是否安装udev
命令 rpm –qa |grep udev
若没有安装,请安装。
2. 查询对应用的硬件信息。
2.1 若安装udevinfo可使用命令,例查sda
[root@localhost ~]# udevinfo -q path -n /dev/sda
/block/sda
[root@localhost ~]# udevinfo -a -p /block/sda //会显示该卡硬件信息
2.2 若没有安装udevinfo,安装了udevadm工具,可使用如下命令
udevadm info -a -p /block/sda
3. 通过第二步查找到了盘的固定硬件信息,就可以针对这块盘创建规则。
建立规则路径为/etc/udev/rules.d/文件夹下(尽量建立数字比较大点的文件(1-99),以.rules结尾。
如:/etc/udev/rules.d/99-names.rules
为命名设备创建规则。创建文件/etc/udev/rules.d/20-names.rules。 在这个文件里,添加命名规则。规则的格式是,参数可以多,只要能唯一标识这个设备。
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="WWID", SYMLINK+="devicename%n"
如:我建立个规则文件内部文件内容
SYSFS{size}=="1953525168",BUS=="scsi",SYSFS{model}=="WDC WD10EARS-003"SYSFS{vendor}=="ATA ",DRIVER=="sd",SUBSYSTEM=="block",NAME=”sda%n”
注解:以上除了最后一个NAME参数为我定义的外,其它都是为了唯一标识设备使用的。我设置它的名称为sda%n的意思为,无论以后如何重启,该盘都为sda,,若有分区,则显示sda1, sda2…以此类推。
4. 重新启动加载的配置
udevadm control --reload-rules
start_udev
实例:目的将sdc 设定成自定义名称。
1. 首先查询到本地磁盘,包括 sda/sdb/sdc/sdd
[root@localhost ~]#ls /dev/sd
sda sdb sdc sdd sdd1 sdd2 sdd3 sdd4 sdd5
2. 查询sdc盘的信息
[root@localhost ~]#udevadm info -a -p /sys/block/sdc
3. 编辑策略文件
[root@localhost ~]#cd /etc/udev/rules.d/
[root@localhost ~]#vim 99-sata.rules
内容如下:
SUBSYSTEMS=="scsi",DRIVERS=="sd",ATTRS{vendor}=="ATA ",ATTRS{model}=="ST3500418AS ",NAME="mydisk"
4. 重新启动配置的加载文件
[root@localhost ~]#udevadm control --reload-rules
[root@localhost ~]#start_udev
5. 重新查询系统所有硬盘
[root@localhost ~]# ls /dev/sd (从结果中反映sdc已经没有了)
sda sdb sdd sdd1 sdd2 sdd3 sdd4 sdd5
查询变更名称后的硬盘是否存在。
[root@localhost ~]# ls /dev/my*
/dev/mydisk
6. mydisk即我们的原sdc硬盘,无论以后系统如何重启,或是增加硬盘,盘符都不会变化,我们可以正常格式化,挂载操作。
[[root@localhost ~]# mkfs.ext3 /dev/mydisk
mke2fs 1.41.12 (17-May-2010)
/dev/mydisk is entire device, not just one partition!
Proceed anyway? (y,n)