zoukankan      html  css  js  c++  java
  • SUSE Linux 10配置裸设备(raw devices)

    SUSE Linux 10配置裸设备(raw devices)

     裸设备,是没有经过格式化的分区或磁盘,也叫裸分区(原始分区),不被Unix通过文件系统来读取的特殊字符设备。它由应用程序负责对它进行读写操作。不经过文件系统的缓冲,是不被操作系统直接管理的设备。由于跨过操作系统管理,使得I/O效率更高。
     

    在基于SUSE Linux 10上安装Oracle 10g RAC的话,由于Oracle 10g 不支持将ocr与votingdisk 存放在ASM 磁盘中,因此,依然需要为其使用裸设备方式。SUSE Linux裸设备的配置与其他的Linux稍有差异,下面将具体描述。  www.ahlinux.com  
     

    [python

    1、先对磁盘进行分区,sdd如下面的方法炮制  

    #下面的示例中使用sdc和sdd来用作裸设备,一块用于ocr,一块用于votingdisk  

      www.ahlinux.com  

    bo2dbp:~ # fdisk /dev/sdc  

    Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel  

    Building a new DOS disklabel. Changes will remain in memory only,  

    until you decide to write them. After that, of course, the previous  

    content won't be recoverable.  

      

    Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)  

      

    Command (m for help): n  

    Command action  

       e   extended  

       p   primary partition (1-4)  

    p  

    Partition number (1-4):   

    Value out of range.  

    Partition number (1-4):   

    Value out of range.  

    Partition number (1-4): 1  

    First cylinder (1-200, default 1):   

    Using default value 1  

    Last cylinder or +size or +sizeM or +sizeK (1-200, default 200):   

    Using default value 200  

        www.ahlinux.com  

    Command (m for help): w  

    The partition table has been altered!  

      

    Calling ioctl() to re-read partition table.  

    Syncing disks.  

      

    2、分区后的结果  

    bo2dbp:~ # fdisk -l /dev/sdc  

      

    Disk /dev/sdc: 209 MB, 209715200 bytes  

    64 heads, 32 sectors/track, 200 cylinders  

    Units = cylinders of 2048 * 512 = 1048576 bytes  

      

       Device Boot      Start         End      Blocks   Id  System  

    /dev/sdc1               1         200      204784   83  Linux  

    bo2dbp:~ # fdisk -l /dev/sdd  

      

    Disk /dev/sdd: 209 MB, 209715200 bytes  

    64 heads, 32 sectors/track, 200 cylinders  

    Units = cylinders of 2048 * 512 = 1048576 bytes  

      

       Device Boot      Start         End      Blocks   Id  System  

    /dev/sdd1               1         200      204784   83  Linux  

        www.ahlinux.com  

    3、配置裸设备  

    bo2dbp:~ # vi /etc/raw  

      

    # /etc/raw  

    #  

    # sample configuration to bind raw devices  

    # to block devices  

    #  

    # The format of this file is:  

    # raw<N>:<blockdev>  

    #  

    # example:  

    # ---------  

    # raw1:hdb1  

    #  

    # this means: bind /dev/raw/raw1 to /dev/hdb1  

    #  

    # ...  

      

    #Add new raw devices  

    raw1:sdc1  

    raw2:sdd1  

        www.ahlinux.com  

    4、启动裸设备  

    bo2dbp:~ # rcraw start  

    bind /dev/raw/raw1 to /dev/sdc1...                                    done  

    bind /dev/raw/raw2 to /dev/sdd1...                                    done  

      

    5、配置裸设备随系统启动  

    bo2dbp:~ # chkconfig raw  

    raw  on  

    #修改裸设备的权限与所有者,尽管该操作会修改,但重启之后将失效。永久修改见第7点  

    bo2dbp:~ # chown oracle:dba /dev/raw/raw[1-2]  

    bo2dbp:~ # chmod 660 /dev/raw/raw[1-2]  

      

    6、测试裸设备  

    bo2dbp:~ # dd if=/dev/zero of=/dev/raw/raw1 bs=1024k count=200  

    dd: writing `/dev/raw/raw1': No space left on device  

    200+0 records in  

    199+0 records out  

    209698816 bytes (210 MB) copied, 2.59567 seconds, 80.8 MB/s  

      

    7、修改裸设备启动后权限及所有者  

    #使用root用户修改/etc/udev/rules.d/50-udev-default.rules,确保raw设备的权限GROUP="dba", MODE="660", OWNER="oracle"  

    #将其中包含KENREL=="raw"的记录修改为如下  

    KERNEL=="raw[0-9]*", SUBSYSTEM=="raw", NAME="raw/%k", GROUP="dba", MODE="640", OWNER="oracle"  

        www.ahlinux.com  

    8、确认配置成功  

    #重启之后的状态   

    bo2dbp:~ # ls -hltr /dev/raw  

    total 0  

    crw-rw---- 1 root   disk 162, 0 Sep 19 10:22 rawctl  

    crw-rw---- 1 oracle dba  162, 1 Sep 19 10:22 raw1  

    crw-rw---- 1 oracle dba  162, 2 Sep 19 10:22 raw2  

      

    bo2dbs:~ # /usr/sbin/raw -qa   

    /dev/raw/raw1:  bound to major 8, minor 33  

    /dev/raw/raw2:  bound to major 8, minor 49  

  • 相关阅读:
    【Java8新特性】你知道Java8为什么要引入Lambda表达式吗?
    你说你懂计算机网络,那这些你都知道吗
    程序员需要了解的硬核知识之控制硬件
    程序员需要了解的硬核知识之汇编语言(全)
    真的,Kafka 入门一篇文章就够了
    程序员需要了解的硬核知识之汇编语言(一)
    带你涨姿势的认识一下 Kafka 消费者
    程序员需要了解的硬核知识之操作系统和应用
    详解Kafka Producer
    程序员需要了解的硬核知识之操作系统入门
  • 原文地址:https://www.cnblogs.com/out8/p/4212729.html
Copyright © 2011-2022 走看看