zoukankan      html  css  js  c++  java
  • (转)How to use udev for Oracle ASM in Oracle Linux 6

    How to use udev for Oracle ASM in Oracle Linux 6

    原文:http://www.dbform.com/html/2011/1708.html

    大部分在网上可以找到的文档都是在RHEL5或者OEL5中设置udev,udev对于Linux而言最大的作用是防止操作系统重新启动以后,作为ASM磁盘使用的盘符发生变化。
    比如说Tim Hall的文章:UDEV SCSI Rules Configuration for ASM in Oracle Linux 5
    比如说Maclean的文章:利用UDEV服务解决RAC ASM存储设备名

    但是在OEL6或者RHEL6中,这一切都有所变化。

    主要的变化是:
    1. scsi_id的命令语法发生了变化,scsi_id -g -u -s这样的命令不再有效。
    2. udevtest命令已经没有了,整合到了udevadm中。

    可以参考Redhat的官方文档(这个文档中本身有一些错误,在udev rules中漏了–device=,正确的方法参看下面的第3步):
    Configuring persistent storage in Red Hat Enterprise Linux 6

    步骤如下:
    1. 编辑/etc/scsi_id.config文件,如果该文件不存在,则创建该文件,添加如下行:

    options=--whitelisted --replace-whitespace

    备注:在我的测试中,此步骤可以省略。

    2. 获取需要绑定为ASM Disk的磁盘uuid,比如我们要使用/dev/sdc和/dev/sdd作为ASM磁盘,那么:

    # scsi_id --whitelisted --replace-whitespace --device=/dev/sdc

    1ATA_VBOX_HARDDISK_VB36a9e548-1838194a

    # scsi_id --whitelisted --replace-whitespace --device=/dev/sdd

    1ATA_VBOX_HARDDISK_VB9808fc7f-cdf35030

    3. 编写udev rules文件,PROGRAM中写scsi_id命令,RESULT中写上面命令中返回的uuid,这跟OEL5中没什么区别,只是scsi_id命令的语法发生变化了。

    vi /etc/udev/rules.d/99-oracle-asmdevices.rules

    KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VB36a9e548-1838194a", NAME="asm-disk1",  OWNER="grid",  GROUP="dba", MODE="0660"

    KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VB9808fc7f-cdf35030", NAME="asm-disk2",  OWNER="grid",  GROUP="dba", MODE="0660"

    4. 用udevadm进行测试,注意udevadm命令不接受/dev/sdc这样的挂载设备名,必须是使用/sys/block/sdc这样的原始设备名。

    udevadm test /sys/block/sdc

    udevadm info --query=all --path=/sys/block/sdc

    udevadm info --query=all --name=asm-disk1

    在显示中,有类似如下输出,表示测试正确,/dev/sdc设备在udev启动以后将会绑定为/dev/asm-disk1:

    udevadm_test: UDEV_LOG=6

    udevadm_test: DEVPATH=/devices/pci0000:00/0000:00:0d.0/host4/target4:0:0/4:0:0:0/block/sdc

    udevadm_test: MAJOR=8

    udevadm_test: MINOR=32

    udevadm_test: DEVNAME=/dev/asm-disk1

    udevadm_test: DEVTYPE=disk

    udevadm_test: ACTION=add

    udevadm_test: SUBSYSTEM=block

    5. 启动udev

    # /sbin/start_udev

    6. 检查设备是否正确绑定

    # ls -l /dev/asm*

    brw-rw---- 1 grid dba 8, 32 Oct 26 21:24 /dev/asm-disk1

    brw-rw---- 1 grid dba 8, 48 Oct 26 21:17 /dev/asm-disk2

  • 相关阅读:
    Android OpenGL ES 2.0 (四) 灯光perfragment lighting
    Android OpenGL ES 2.0 (五) 添加材质
    冒泡排序函数
    javascript object 转换为 json格式 toJSONString
    Liunx CentOS 下载地址
    jquery 图片切换特效 鼠标点击左右按钮焦点图切换滚动
    javascript 解析csv 的function
    mysql Innodb Shutdown completed; log sequence number解决办法
    Centos 添加 yum
    javascript 键值转换
  • 原文地址:https://www.cnblogs.com/jimeper/p/2809727.html
Copyright © 2011-2022 走看看