Redhat 5 中裸设备(raw) 的配置

2024-04-04 03:58
文章标签 配置 设备 raw redhat 中裸

本文主要是介绍Redhat 5 中裸设备(raw) 的配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

 

Redhat 5 之前的版本中,系统通过/etc/sysconfig/rawdevices配置raw的控制文件,通过/etc/init.d/rawdevices来管理raw设备的启动和关闭。而在Redhat 5之后,原来的raw设备接口已经取消了,redhat 5中通过udev规则进行配置。 要配置,需要编辑/etc/udev/rules.d/60-raw.rules 这个文件。

 

 

 

下面给出一个添加raw设备的测试过程。

 

1.现在虚拟机上添加一个硬盘。 我们仅做测试,所以分10M

 

 

 

2. 启动我们的虚拟机,连上后查看磁盘情况

[root@centos ~]# fdisk -l

Disk /dev/sda: 16.1 GB, 16106127360 bytes

255 heads, 63 sectors/track, 1958 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *         201        1958    14121135   83  Linux

/dev/sda2               1         200     1606468+  82  Linux swap / Solaris

Partition table entries are not in disk order

 

Disk /dev/sdb: 10 MB, 10485760 bytes

64 heads, 32 sectors/track, 10 cylinders

Units = cylinders of 2048 * 512 = 1048576 bytes

Disk /dev/sdb doesn't contain a valid partition table

 

这里的/dev/sdb 因为是刚加上来的硬盘,还没有格式化。

 

 

 

3. 格式化/dev/sdb

[root@centos ~]# fdisk /dev/sdb

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): 1

First cylinder (1-10, default 1):

Using default value 1

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

Using default value 10

Command (m for help): w

The partition table has been altered!

Calling ioctl() to re-read partition table.

Syncing disks.

 

查看格式化之后的硬盘情况:

[root@centos ~]# fdisk -l

 

Disk /dev/sda: 16.1 GB, 16106127360 bytes

255 heads, 63 sectors/track, 1958 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *         201        1958    14121135   83  Linux

/dev/sda2               1         200     1606468+  82  Linux swap / Solaris

 

Partition table entries are not in disk order

Disk /dev/sdb: 10 MB, 10485760 bytes

64 heads, 32 sectors/track, 10 cylinders

Units = cylinders of 2048 * 512 = 1048576 bytes

   Device Boot      Start         End      Blocks   Id  System

/dev/sdb1               1          10       10224   83  Linux

[root@centos ~]#

 

 

 

 

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

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

# Enter raw device bindings here.

#

# An example would be:

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

# to bind /dev/raw/raw1 to /dev/sda, or

#   ACTION=="add", ENV{MAJOR}=="8", ENV{MINOR}=="1", RUN+="/bin/raw /dev/raw/raw2 %M %m"

# to bind /dev/raw/raw2 to the device with major 8, minor 1.


设备名称:
ACTION=="add", KERNEL="<device name>", RUN+="/bin/raw /dev/raw/rawX %N"
主/次号码:
ACTION=="add", ENV{MAJOR}="A", ENV{MINOR}="B", RUN+="/bin/raw /dev/raw/rawX %M %m"

用你需要绑定的设备名称替换 <device name>(如:/dev/sda1)。"A" 和 "B" 是设备的主/次号码,是系统使用的 raw 设备号码。在设置的时候,主次号码是可选的。 如果不指定,默认从11开始,

如:/dev/raw/raw1:  bound to major 1, minor 1

 

 

现在我们/dev/sdb1 知道到raw1上,就可以在/etc/udev/rules.d/60-raw.rules文件里添加如下内容:

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

 


5. 重启服务:
[root@centos ~]# start_udev

Starting udev:             [  OK  ]

 


6. 查看raw设备:
[root@centos ~]# ls -lrt /dev/raw

 

total 0

crw------- 1 root root 162, 1 Aug  8 06:56 raw1

[root@centos ~]# raw -aq

/dev/raw/raw1:  bound to major 1, minor 1

 

如果我们添加了下面的语句:

ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="1",RUN+="/bin/raw /dev/raw/raw1 %M %m"

那么就会显示我们指定的Majorminor

[root@centos ~]# ls -lrt /dev/raw

total 0

crw-rw---- 1 dave tianlesoftware 162, 1 Aug  8 08:06 raw1

[root@centos ~]# raw -aq

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

 

 

 

 

 

7. 设置raw设备的用户和权限信息

 

/etc/udev/rules.d/60-raw.rules文件里添加如下信息:

ACTION=="add", KERNEL=="raw1", OWNER="dave", GROUP="tianlesoftware", MODE="660"

如果有多个raw设备,可以写成:

ACTION=="add", KERNEL=="raw[1-4]", OWNER="dave", GROUP="tianlesoftware", MODE="660"

 

 

Oracle 中使用raw设备时,如果裸设备对应的属组不是oracle,裸设备将无法供oracle使用

 

 

查看结果:

[root@centos ~]# start_udev

Starting udev:                                  [  OK  ]

[root@centos ~]# ls -lrt /dev/raw

total 0

crw-rw---- 1 dave tianlesoftware 162, 1 Aug  8 06:59 raw1

[root@centos ~]# raw -aq

/dev/raw/raw1:  bound to major 1, minor 1

 

 

 

8. 取消raw 映射

把major and minor设成0,就可以取消裸设备的绑定。

[root@rac1 mapper]# raw /dev/raw/raw9 0 0   

 

 

 

 

------------------------------------------------------------------------------ 

QQ: 492913789
Email: ahdba@qq.com
Blog: http://www.cndba.cn/dave

网上资源: http://tianlesoftware.download.csdn.net 

相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx 

DBA1 群:62697716(); DBA2 群:62697977()

DBA3 群:63306533;     聊天 群:40132017

这篇关于Redhat 5 中裸设备(raw) 的配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/874739

相关文章

SpringBoot结合Knife4j进行API分组授权管理配置详解

《SpringBoot结合Knife4j进行API分组授权管理配置详解》在现代的微服务架构中,API文档和授权管理是不可或缺的一部分,本文将介绍如何在SpringBoot应用中集成Knife4j,并进... 目录环境准备配置 Swagger配置 Swagger OpenAPI自定义 Swagger UI 底

Oracle迁移PostgreSQL隐式类型转换配置指南

《Oracle迁移PostgreSQL隐式类型转换配置指南》Oracle迁移PostgreSQL时因类型差异易引发错误,需通过显式/隐式类型转换、转换关系管理及冲突处理解决,并配合验证测试确保数据一致... 目录一、问题背景二、解决方案1. 显式类型转换2. 隐式转换配置三、维护操作1. 转换关系管理2.

IDEA中配置Tomcat全过程

《IDEA中配置Tomcat全过程》文章介绍了在IDEA中配置Tomcat的六步流程,包括添加服务器、配置部署选项、设置应用服务器及启动,并提及Maven依赖可能因约定大于配置导致问题,需检查依赖版本... 目录第一步第二步第三步第四步第五步第六步总结第一步选择这个方框第二步选择+号,找到Tomca

Win10安装Maven与环境变量配置过程

《Win10安装Maven与环境变量配置过程》本文介绍Maven的安装与配置方法,涵盖下载、环境变量设置、本地仓库及镜像配置,指导如何在IDEA中正确配置Maven,适用于Java及其他语言项目的构建... 目录Maven 是什么?一、下载二、安装三、配置环境四、验证测试五、配置本地仓库六、配置国内镜像地址

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Debian系和Redhat系防火墙配置方式

《Debian系和Redhat系防火墙配置方式》文章对比了Debian系UFW和Redhat系Firewalld防火墙的安装、启用禁用、端口管理、规则查看及注意事项,强调SSH端口需开放、规则持久化,... 目录Debian系UFW防火墙1. 安装2. 启用与禁用3. 基本命令4. 注意事项5. 示例配置R

PyCharm中配置PyQt的实现步骤

《PyCharm中配置PyQt的实现步骤》PyCharm是JetBrains推出的一款强大的PythonIDE,结合PyQt可以进行pythion高效开发桌面GUI应用程序,本文就来介绍一下PyCha... 目录1. 安装China编程PyQt1.PyQt 核心组件2. 基础 PyQt 应用程序结构3. 使用 Q

Redis MCP 安装与配置指南

《RedisMCP安装与配置指南》本文将详细介绍如何安装和配置RedisMCP,包括快速启动、源码安装、Docker安装、以及相关的配置参数和环境变量设置,感兴趣的朋友一起看看吧... 目录一、Redis MCP 简介二、安www.chinasem.cn装 Redis MCP 服务2.1 快速启动(推荐)2.

Spring Boot配置和使用两个数据源的实现步骤

《SpringBoot配置和使用两个数据源的实现步骤》本文详解SpringBoot配置双数据源方法,包含配置文件设置、Bean创建、事务管理器配置及@Qualifier注解使用,强调主数据源标记、代... 目录Spring Boot配置和使用两个数据源技术背景实现步骤1. 配置数据源信息2. 创建数据源Be

Linux之platform平台设备驱动详解

《Linux之platform平台设备驱动详解》Linux设备驱动模型中,Platform总线作为虚拟总线统一管理无物理总线依赖的嵌入式设备,通过platform_driver和platform_de... 目录platform驱动注册platform设备注册设备树Platform驱动和设备的关系总结在 l