Linux平台下裸设备的绑定:

运用RAW绑定

方法一 raw的配置(1)

[root@qs-dmm-rh2 mapper]# cat /etc/rc.local

#!/bin/sh

#

# This script will be executed *after* all theother init scripts.

# You can put your own initialization stuff inhere if you don't

# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local

#####

# Oracle Cluster Voting disks

#####

chown oracle:oinstall /dev/mapper/voting*

chmod 660 /dev/mapper/voting*

raw /dev/raw/raw5 /dev/mapper/votingdiskp1

raw /dev/raw/raw6 /dev/mapper/votingdiskp2

raw /dev/raw/raw7 /dev/mapper/votingdiskp3

raw /dev/raw/raw8 /dev/mapper/votingdiskp4

#sleep 2

chown oracle:oinstall /dev/raw/raw5

chown oracle:oinstall /dev/raw/raw6

chown oracle:oinstall /dev/raw/raw7

chown oracle:oinstall /dev/raw/raw8

chmod 660 /dev/raw/raw5

chmod 660 /dev/raw/raw6

chmod 660 /dev/raw/raw7

chmod 660 /dev/raw/raw8

方法一(2)

[root@felix2 raw]# vi  /etc/rc.local

#!/bin/sh

#

# This script will be executed *after* all theother init scripts.

# You can put your own initialization stuff inhere if you don't

# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local

chown -R oracle:oinstall /dev/raw/raw*

chmod -R 660 /dev/raw/raw*

~

(1)编辑rawdevices的配置文件:

[root@felix2 sysconfig]# pwd

/etc/sysconfig

[root@felix2 sysconfig]# vi rawdevices

# rw device bindings

# format: <rawdev> <major> <minor>

#         <rawdev> <blockdev>

# example: /dev/raw/raw1 /dev/sda1

#         /dev/raw/raw2 8 5

#--加入�裸设备、块设备的绑定条目:

/dev/raw/raw1 /dev/sdb1

/dev/raw/raw2 /dev/sdc1

/dev/raw/raw3 /dev/sdd1

/dev/raw/raw4 /dev/sde1

(2)启动rawdevices服务:

service rawdevices start

(3)配置系统启动时,自己主动启动rawdevices服务:

chkconfig rawdevices on

(4)确认rawdevices服务成功启动,而且裸设备正确创建。先查看rawdevices服务状态:

service rawdevicesstatus

[root@felix2 sysconfig]# service rawdevices status

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

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

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

/dev/raw/raw4: bound to major 8, minor 65

再查看裸设备:

[root@felix2 sysconfig]# cd /dev/raw

[root@felix2 raw]# ll

total 0

crw-rw---- 1 oracle oinstall 162, 1 May 21 15:03raw1

crw-rw---- 1 oracle oinstall 162, 2 May 21 15:35raw2

crw-rw---- 1 oracle oinstall 162, 3 May 21 15:35raw3

crw-rw---- 1 oracle oinstall 162, 4 May 21 15:35raw4

[root@felix2 raw]#

(5)ASM是以Oracle用户身份执行的,要让ASM可以发现这些设备,必须更改这些设备的属主(owner):

[root@felix2 raw]# chown oracle:oinstall/dev/raw/raw*

[root@felix2 raw]# ll

total 0

crw-rw---- 1 oracle oinstall 162, 1 May 21 15:03raw1

crw-rw---- 1 oracle oinstall 162, 2 May 21 15:37raw2

crw-rw---- 1 oracle oinstall 162, 3 May 21 15:37raw3

crw-rw---- 1 oracle oinstall 162, 4 May 21 15:37raw4

方法二 运用UDEV设备绑定:

改动/etc/udev/rules.d/60-raw.rules文件

# 如今我们把/dev/sdb1 知道到raw1上,就能够在/etc/udev/rules.d/60-raw.rules文件中加入�例如以下内容:

[root@centos~]#vi /etc/udev/rules.d/60-raw.rules

Cat >> /etc/udev/rules.d/60-raw.rules<< EOF

ACTION=="add",KERNEL=="sdb1",RUN+="/bin/raw /dev/raw/raw1 %N"

ACTION=="add",KERNEL=="sdc1",RUN+="/bin/raw /dev/raw/raw2 %N"

ACTION=="add",KERNEL=="sdd1",RUN+="/bin/raw /dev/raw/raw3 %N"

ACTION=="add", KERNEL=="sde1",RUN+="/bin/raw/dev/raw/raw4 %N"

ACTION=="add",KERNEL=="raw[1-5]",OWNER="oracle", GROUP="oinstall", MODE="660"

EOF

重新启动UDEV服务:

[root@rac1 ~]# start_udev

[root@zrac1 asmfileapp-linux5.4]# ls -lat/dev/raw/raw*

crw-rw---- 1 oracle oinstall 162, 4 Apr 10 00:49/dev/raw/raw4

crw-rw---- 1 oracle oinstall 162, 3 Apr 10 00:49/dev/raw/raw3

crw-rw---- 1 oracle oinstall 162, 2 Apr 10 00:49/dev/raw/raw2

crw-rw---- 1 oracle oinstall 162, 1 Apr 10 00:49/dev/raw/raw1

Linux平台下裸设备的绑定:的更多相关文章

  1. 在 Linux 平台下使用 JNI

    引言 Java 的出现给大家开发带来的极大的方便.但是,如果我们有大量原有的经过广泛测试的非 Java 代码,将它们全部用 Java 来重写,恐怕会带来巨大的工作量和长期的测试:如果我们的应用中需要访 ...

  2. linux平台下防火墙iptables原理(转)

    原文地址:http://www.cnblogs.com/ggjucheng/archive/2012/08/19/2646466.html iptables简介 netfilter/iptables( ...

  3. Windows及Linux平台下的计时函数总结

    本文对Windows及Linux平台下常用的计时函数进行总结,包括精度为秒.毫秒.微秒三种精度的各种函数.比如Window平台下特有的Windows API函数GetTickCount().timeG ...

  4. Thrift在Windows及Linux平台下的安装和使用示例

    本文章也同时发表在个人博客Thrift在Windows及Linux平台下的安装和使用示例上. thrift介绍 Apache Thrift 是 Facebook 实现的一种高效的.支持多种编程语言的R ...

  5. Linux平台下源码安装mysql多实例数据库

    Linux平台下源码安装mysql多实例数据库[root@linux-node1 ~]# netstat -tlunp | grep 330tcp6 0 0 :::3306 :::* LISTEN 6 ...

  6. Windows 和 Linux 平台下的端口转发工具

    原文地址: http://unmi.cc/windows-linux-port-forwarding/ 这里记录一下我曾经使用过的几个端口转发工具,即端口映射.端口重定向,和 NAT 也是差不多的概念 ...

  7. 【android开发】如何在Linux平台下安装JDK环境

    原文:http://android.eoe.cn/topic/android_sdk Linux平台JDK安装 本文主要描述如何在Linux平台下安装JDK环境.进入网页:http://www.ora ...

  8. linux平台下防火墙iptables原理

    iptables简单介绍 netfilter/iptables(简称为iptables)组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它能够取代昂贵的商业 ...

  9. Linux平台下卸载MySQL的方法

    转载自: https://www.cnblogs.com/taomylife/p/7234925.html Linux平台下卸载MySQL的方法: MySQL的安装主要有三种方式:二进制包安装.RPM ...

随机推荐

  1. 怎样用js得到当前页面的url信息方法(JS获取当前网址信息)

    设置或获取对象指定的文件名称或路径.window.location.pathname 设置或获取整个 URL 为字符串.window.location.href; 设置或获取与 URL 关联的端口号码 ...

  2. 《TCP/IP作品详细解释2:实现》笔记--Radix树路由表

    通过IP完整的路由是路由机制,它通过搜索路由表来确定从哪个分组被发送的接口执行此,它是不一样的路由策略,路由策略 它是一组规则,这些规则可以被用来确定哪些路由编程到路由表,Net/3内核实现的路由机制 ...

  3. 【Android每周专题】触摸屏事件

    本系列文章均为A2BGeek原创,转载务必在明显处注明: 转载自A2BGeek的[Android每周专题]系列,原文链接:http://blog.csdn.net/benbmw2008/article ...

  4. 使用CXF创建REST WEBSERVICE

    简单小结下CXF跟REST搭配webservice的做法,直接举代码为样例: 1 order.java   package com.example.rest; import javax.xml.bin ...

  5. 2014 Multi-University Training Contest 1 - J Rating

    题目链接: pid=4870">http://acm.hdu.edu.cn/showproblem.php?pid=4870 题目大意: 题意:一个人注冊两个账号,初始rating都是 ...

  6. ZOJ 1610 间隔染色段树

    要长8000仪表板.间染色的范围,问:最后,能看到的颜色,而且颜色一共有段出现 覆盖段 数据对比水   水可太暴力 段树: #include "stdio.h" #include ...

  7. cocos2dx 制作单机麻将(一)

    今天開始打算解说下cocos2dx下怎样制作国标麻将 前半部分先解说麻将的逻辑部分,由于都是代码,可能会比較枯燥无聊. 这部分讲完后,你也能够用其它游戏引擎来制作麻将 后半部分,就解说余下的cocos ...

  8. hdu1520(树形dp)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1520 题意:举办一个party,候选人当中有很多人之间有上下级关系,求没有直接上下级的最多的人数. 分 ...

  9. 啊上班我排名可人皮号i家狂喷

    http://pan.baidu.com/share/link?shareid=3011665141&uk=338692646&third=15                http ...

  10. cocostudio内存释放

    在使用cocostudio时,在释放内存时能够这样做: 在onExit()方法里加入例如以下: void LoadLayer::onExit() { // 释放本对象自己 removeFromPare ...