`

Linux下的裸设备研究(原创)

阅读更多

Linux平台下,缺省没有提供对磁盘设备的字符访问方式,必须通过配置rawdevices服务,把块设备绑定到裸设备上才行,具体方法有3种。这3种方法创建裸设备的方式完全一样,区别在于对Oracle用户权限处理方法的不同。RHEL5推荐使用第3种方法

第一种方法:
# vim /etc/sysconfig/rawdevices
/dev/raw/raw1   /dev/sdb1
/dev/raw/raw2   /dev/sdb2
#/etc/init.d/rawsdevices start
#chkconfig --level 235 rawdevices on

成功开启裸设备的标志为

# /etc/init.d/rawdevices status
/dev/raw/raw1:  bound to major 8, minor 17
/dev/raw/raw2:  bound to major 8, minor 18

为裸设备赋予权限
# chown oracle:oinstall /dev/raw/raw1 /dev/raw/raw2
# ll /dev/raw/raw*
crw-rw---- 1 oracle oinstall 162, 1 Jan 22 14:09 /dev/raw/raw1
crw-rw---- 1 oracle oinstall 162, 2 Jan 22 14:12 /dev/raw/raw2

配置成功。
这 种方法的问题在于,虽然创建了裸设备,但是这些裸设备是在rawdevices服务启动时创建的,而rawdevices是以root用户身份运行的。因 此这些裸设备缺省的owner是root:root。所以每次服务重启后都要重新修改这些设备的owner为oracle:oinstall.

第二种方法:
为了解决上述的问题,可以采用第二种方法。即用mknod提前创建出一个字符方式访问的文件,然后在文件绑定到块设备上,并把该文件的owner设置为oracle,因为这个文件是手工创建的,所以这个文件的owner不会被修改
# mknod /oradata c 162 1
# chown oracle:oinstall /oradata
# vim /etc/sysconfig/rawdevices
/oradata        /dev/sdd2

#/etc/init.d/rawsdevices start
#chkconfig --level 235 rawdevices on

第三种方法:
使用udev管理设备的权限
#vim /etc/udev/rules.d/50-udev.rules
KERNEL=="raw[0-9]*",MODE="0660",GROUP="oinstall",OWNER="oracle",NAME="raw/%k"
# vim /etc/sysconfig/rawdevices
/dev/raw/raw1   /dev/sdb1
/dev/raw/raw2   /dev/sdb2

#/etc/init.d/rawsdevices start
#chkconfig --level 235 rawdevices on


参考至:《大话Oracle RAC》张晓明著
本文原创,转载请注明出处、作者
如有错误,欢迎指正
邮箱:czmcj@163.com

0
0
分享到:
评论

相关推荐

    Linux下PCI设备驱动程序研究.pdf

    《Linux下PCI设备驱动程序研究》是一篇深入探讨Linux操作系统中PCI(Peripheral Component Interconnect)设备驱动程序设计的专业文章。作者周光祥和江国星来自华中科技大学电子与信息工程系,他们通过实例分析,...

    基于linux系统的字符设备驱动研究与设计.pdf

    本文主要研究了Linux系统下的字符设备驱动的设计和实现,详细介绍了字符设备驱动的设计方法和实现过程。在Linux系统下,字符设备驱动是一种特殊的设备驱动,它可以控制字符设备的输入/输出操作。字符设备驱动的设计...

    zynq7020(linux + 裸核流水灯)基于zturn board

    同时,Linux端可能需要通过设备驱动程序来控制裸核,或者通过网络或串口发送指令给CPU1,实现远程控制。 总的来说,这个项目展示了Zynq7020 SoC在嵌入式系统设计中的强大功能,以及如何利用AMP模式实现复杂的系统...

    Linux下的PCI设备开发以及字符驱动程序框架的研究.pdf

    "Linux下的PCI设备开发以及字符驱动程序框架的研究" 本文主要研究了Linux下的PCI设备开发和字符驱动程序框架。PCI(Peripheral Component Interconnect)是一种通用的总线接口标准,广泛应用于当前的计算机系统中。...

    Linux设备驱动模型框架的分类研究.pdf

    Linux 设备驱动模型框架的分类研究 Linux 设备驱动模型框架的分类研究是指在 Linux 操作系统中,设备驱动程序的编写和分类研究。设备驱动程序是指计算机硬件设备的控制程序,它是计算机系统中不可或缺的一部分。在...

    简单AMP:在ZYNQ SoC处理器上运行Linux和裸机系统

    在zynq上双系统搭建的教程,cpu0跑linux,cpu1跑裸程序。

    LINUX设备驱动程序

    1. 设备识别:Linux内核通过设备节点(/dev下)来识别设备。 2. 驱动注册:将设备驱动注册到内核,使内核知道该驱动的存在。 3. 驱动加载:通过insmod、modprobe或编译进内核等方式加载驱动。 4. 设备初始化:驱动...

    Linux下支持阻塞操作的字符设备驱动

    Linux下支持阻塞操作的字符设备驱动Linux下支持阻塞操作的字符设备驱动Linux下支持阻塞操作的字符设备驱动Linux下支持阻塞操作的字符设备驱动Linux下支持阻塞操作的字符设备驱动Linux下支持阻塞操作的字符设备驱动...

    Linux 系统下蓝牙设备驱动程序研究和实现

    ### Linux 系统下蓝牙设备驱动程序研究和实现 #### 背景介绍与意义 随着移动通信技术的发展,蓝牙技术作为一种短距离无线通信技术,因其便捷性、灵活性等特点,在消费电子、工业控制等领域得到了广泛应用。为了更...

    Linux设备驱动开发详解:基于最新的Linux4.0内核,linux设备驱动开发详解pdf,LINUX

    《Linux设备驱动开发详解》是一本深度探讨Linux内核驱动程序开发的专业书籍,它以Linux 4.0内核为背景,为驱动工程师提供了一条深入理解与实践Linux设备驱动的路径。这本书涵盖了许多关键的知识点,对于想要在Linux...

    ORALCE创建裸设备手工建库笔记

    通过以上步骤,我们可以在Red Hat Linux环境下,利用Oracle 10g软件和两个4GB的新硬盘,成功地手工创建一个基于裸设备的Oracle数据库。这一过程不仅加深了对Linux磁盘管理的理解,还提供了构建高性能数据库系统的...

    ZYNQ双核AMP官方例程(双核分别跑Linux+裸机实现核间通信)

    在本文中,我们将深入探讨基于Xilinx ZYNQ平台的双核异构处理系统(Heterogeneous Processing System, HPS)实现的AMP(Asymmetric Multi-Processing)模式下的Linux与裸机程序之间的核间通信。Xilinx ZYNQ是集成ARM...

    Linux下音频设备编程

    本章着重阐述了Linux下对音频设备的编程方法。读完本章,读者将了解以下内容:  音频信号的数字化和相关概念;  音频总线接口IIS的控制原理和控制程序;  Linux下音频设备编程的特点和操作方法;  MPlayer...

    基于Linux的USB网络设备驱动程序的研究

    Linux 操作系统作为一个免费的开源操作系统,与其它的操作系统相比有着相当 明显的优势。特别是嵌入式 Linux 操作系统,越来越广泛的应用于各种领域。...而对 Linux 设备驱动程序的研究具有很高的价值。

    Linux设备驱动开发详解-基于最新的Linux4.0内核》配套代码.zip

    总之,Linux设备驱动开发是嵌入式Linux开发的重要组成部分,通过深入研究《Linux设备驱动开发详解-基于最新的Linux4.0内核》这本书及其配套代码,你将能够熟练地驾驭Linux内核与硬件设备之间的通信,为你的嵌入式...

    《Linux设备驱动开发详解-基于最新的Linux4.0内核》源码

    《Linux设备驱动开发详解-基于最新的Linux4.0内核》是一本深入探讨Linux设备驱动程序开发的专业书籍,其源码提供了丰富的实践示例,帮助读者理解如何在Linux操作系统下编写和调试驱动程序。该书涵盖了从基础概念到...

    嵌入式Linux环境下的串口通信研究.pdf

    嵌入式Linux环境下的串口通信设计研究 本文主要研究了在嵌入式Linux环境下的串口通信设计,介绍了串口通信的程序设计技术,详细阐述了一种基于$3C2410微处理器的嵌入式ARM9与Linux操作系统之间的串口通信设计方法...

    Linux下usb设备驱动开发5部曲

    一个别人的资源,是个linux环境下usb设备驱动开发的“入门到精通”,里面有5个逐步深入的例子。 其中最后一个例子step 5 是个通用驱动,应用层打开驱动设备文件,如同用串口设备一样简单就能读取到usb数据,usb应用...

Global site tag (gtag.js) - Google Analytics