linux存储技术与应用:UDEV配置

一、设备文件管理方法

devfs

–        Linux早期采用的静态管理方法

–        /dev目录下有大量静态文件

–        绝大多数文件没有对应的硬件连接

–        内核版本2.6.13开始被完全取代

udev

–        只有连到系统上来的设备才在/dev下创建设备文件

–        与主、次设备编号无关

–        为设备提供持久、一致的名字

二、接入设备事件链

内核发现设备并导入设备状态到sysfs

udev接到事件通知

udev创建设备节点或是运行指定程序

udev通知hald守护进程

HAL探测设备信息

HAL创建设备对象结构

HAL通过系统消息总线广播该事件

用户程序也可以监控该事件

三、udev

从内核收到添加/移除硬件事件时,udev将会分析:

–        /etc/udev/rules.d目录中的规则

–        根据规则中的命令产生哪些输出

–        /sys目录下信息

基于分析结果,udev会:

–        处理设备命名

–        决定要创建哪些设备文件或链接

–        决定如何设置属性

–        决定触发哪些事件

事件监控

#  udevadm  monitor

1、主配置文件/etc/udev/udev.conf

–        udev_root:创建设备文件位置,默认为/dev

–        udev_rules:udev规则文件位置,默认为/etc/udev/rules.d

–        udev_log:syslog优先级,缺省为err

2、编写规则

文件位置及格式

–        /etc/udev/rules.d/<rule_name>.rules

–        例:75-custom.rules

规则格式

–        <match-key><op><value>[,…]<assignment-key><op>value[,…]

–        BUS=="usb",SYSFS{serial}=="20043512321411d34721",NAME="udisk"

3、udev匹配操作

操作符

–        ==:表示匹配

–        != :表示不匹配

匹配示例

–        ACTION=="add"

–        KERNEL=="sd[a-z]1"

–        BUS=="scsi"

–        DRIVER!="ide-cdrom"

–        PROGRAM=="myapp.pl",RESULT=="test"

4、udev赋值操作

操作符

–        =:指定赋予的值

–        +=:添加新值

–        :=:指定值,且不允许被替换

示例

–        NAME="udisk"

–        SYMLINK+="data1"

–        OWNER="student"

–        MODE="0600"

5、udev规则替换

可以简化或缩写规则

例:
KERNEL=="sda*",SYMLINK+="iscsi%n"

常用替代变量

–        %k:内核所识别出来的设备名,如sdb1

–        %n:设备的内核编号,如sda3中的3

–        %p:设备路径,如/sys/block/sdb/sdb1

–        %%:%符号本身

3、测试动态生成/dev目录下的文件

#  rm  -f  /dev/*

#  ls  /dev/

#  start_udev

#  ls  /dev/

4、例一:

U盘被内核识别出来的名字叫sdc,那么这个U盘上的分区叫udisk1、udisk2、udisk3……

#  cd  /etc/udev/rules.d/

#  vim  99-udisk.rules

BUS=="usb", ACTION=="add", KERNEL=="sd[a-z]*", SYMLINK+="udisk%n"

插入的U盘,如果是sdc,那么就会出现udisk1、udisk2这样的链接文件

4、例二:只识别某一个特定的U盘。先插入U盘,如插入的U盘被识别为/dev/sdc

[[email protected] rules.d]# udevadm info --query=path --name=/dev/sdc1

/devices/pci0000:00/0000:00:11.0/0000:02:03.0/usb1/1-1/1-1:1.0/host9/target9:0:0/9:0:0:0/block/sdc1

[[email protected] rules.d]# udevadm info --query=all --attribute-walk --path=/devices/pci0000:00/0000:00:11.0/0000:02:03.0/usb1/1-1/1-1:1.0/host9/target9:0:0/9:0:0:0/block/sdc1

[[email protected] rules.d]# vim 99-udisk.rules

ACTION=="add", ATTRS{manufacturer}=="Kingston", ATTRS{product}=="DataTraveler G2", ATTRS{serial}=="0014780BBDBCEA9075C90001", KERNEL=="sd[a-z]*", SYMLINK+="myudisk%n"

如果重新重入U盘,/dev目录下将出现udisk*的符号链接。换成其他U盘,这个链接将不会出现。

5、某一个iscsi设备总是被命名为remotedisk。比如,iscsi设备被识别为sdb

[[email protected] rules.d]# udevadm info --query=path --name=/dev/sdb

[[email protected] rules.d]# udevadm info --query=all --attribute-walk --path=/devices/platform/host3/session1/target3:0:0/3:0:0:1/block/sdb

[[email protected] rules.d]# vim  99-iscsidisk.rules

ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="IET     ", ATTRS{model}=="VIRTUAL-DISK    ", ATTRS{rev}=="0001" SYMLINK+="remotedisk%n"

只有硬盘被重新加载的时候,udev规则才会生效,所以将iscsi存储先logout,再login

#   iscsiadm --mode node --targetname iqn.2013-12.com.tarena.tech:rack1.sata.disk1 --portal 192.168.194.20:3260 –logout

iscsiadm --mode node --targetname iqn.2013-12.com.tarena.tech:rack1.sata.disk1 --portal 192.168.194.20:3260 –login

6、例三:

当设备插入到系统中后,根据执行某一个命令获得的结果来命名设备

#  vim  99-iscsidisk.rules

KERNEL=="sd*", SUBSYSTEMS=="scsi", PROGRAM=="/lib/udev/scsi_id --whitelisted --device=/dev/%k --replace-whitespace", RESULT=="1IET_00010001", SYMLINK+="iscsidisk%n"

7、案例分析1

BUS=="scsi", SYSFS{serial}=="123456789", NAME="byLocation/rack1-shelf2-disk3“

KERNEL=="sd*", BUS=="scsi", PROGRAM=="/lib/udev/scsi_id -g -s %p", RESULT=="SATA ST340014AS 3JX8LVCA", NAME="backup%n"

KERNEL=="sd?1", BUS=="scsi", SYSFS{model}=="DSCT10", SYMLINK+="camera"

8、案例分析2

KERNEL=="sd*", SYSFS{idVendor}=="0781", SYSFS{idProduct}=="5150", SYMLINK+="keycard", OWNER="student", GROUP="student", MODE="0600“

ACTION=="add", KERNEL=="ppp0", RUN+="/usr/bin/wall PPP Interface Added"

时间: 2024-08-06 18:45:20

linux存储技术与应用:UDEV配置的相关文章

01: 存储技术与应用 、 iSCSI技术应用 、 udev配置 、 NFS网络文件系统 、 Mul

存储的是什么? 数据数据存储的介质? 永久存储(硬盘) 临时存储(内存)存储位置? 云存储 内存存储 硬盘存储存储类型? 共享存储 分布式存储存储技术? DAS NAS SAN iscsi ip包nfs ip_sancifs FC_san 一.配置iscsi把本机的/dev/vdb 和/dev/vdc 两块盘共享给 网站服务器103和104主机. A.配置后端存储 1051 准备磁盘 #fdisk -l /dev/vdb#fdisk -l /dev/vdc2 装包]# rpm -q scsi-t

iscsi target存储技术-多路径 udev动态管理设备文件方法 nfs

惠普 戴尔 华为 目前国内服务器厂商排名 存储技术分类: SCSI小型计算机系统接口DAS直连式存储NAS网络技术存储SAN存储区域网络FC光纤通道 SCSI小型计算机系统接口 (U盘) DAS技术:直连式存储(将存储设备通过scsi接口或光纤通道直连到计算机上,不能实现数据与其它主机的共享,占用服务器操作系统资源cpu,io等,数据量越大,性能越差) NAS网络技术存储  做公享文件夹  (这是一种专用数据存储服务器,以数据为中心,将存储设备与服务器彻底分离,集中管理数据,提高性能,节省成本)

linux存储技术与应用:配置iSCSI服务及应用示例

实验:配置iSCSI服务,(服务4.103,客户4.254/4.100) 先添加一块新硬盘 fdisk -cu /dev/sdb    # 进入磁盘分区模式 分区模式中输入以下信息进行:分区 -n            #新建分区 -p            #创建主分区 1             #第一个分区 回车 +1G        #第一个分区大小 w             #保存并退出 lsblk    可以发现新分区已经存在 mount /dev/sdb1  /var/lib/m

linux存储技术与应用:Multipath多路径

1.两台服务器各配置两块网卡 存储: eth0:192.168.1.20/24 eth1:192.168.2.20/24 节点: eth0:192.168.1.10/24 eth1:192.168.2.10/24 2.存储服务器配置targert # vim /etc/tgt/targets.conf <target iqn.2016-02.cn.tedu.tech:sata> backing-store /dev/sdb1 initiator-address 192.168.1.10 ini

linux管理员技术-01 -SElinux、配置高级连接、防火墙管理策略、

Security-Enhanced Linux(SElinux) – 美国NSA国家安全局主导开发,一套增强Linux系统安全的强制访问控制体系 目的:强制访问控制体系 – 集成到Linux内核(2.6及以上)中运行 – RHEL7基于SELinux体系针对用户.进程.目录和文件提供了预设的保护策略,以及管理工具 SELinux的运行模式 – enforcing(强制).permissive(宽松) – disabled(彻底禁用) 切换运行模式 -临时切换(当前切换):setenforce  

SCSI技术应用+udev配置+nfs文件系统,Multipath多路径

一.基础概念块级别:提供块设备(磁盘)文件级别:提供共享文件夹DAS:直连式存储.本地磁盘NAS:网络附加存储.本质上就是共享文件夹SAN:存储区域网络.FC SAN:基于光纤的存储区域网络 二.配置iSCSI1.准备三台虚机vh01.tedu.cn 192.168.4.1 存储服务器Vh02.tedu.cn 192.168.4.2 mysql1Vh03.tedu.cn 192.168.4.3 mysql2[[email protected] nsd1802]# clone-auto7 2.初始

session的官方定义是:Session:在计算机中,尤其是在网络应用中,称为“会话控制”。Session 对象存储特定用户会话所需的属性及配置信息。 说白了session就是一种可以维持服务器端的数据存储技术。session主要有以下的这些特点: 1. session保存的位置是在服务器端 2. session一般来说是要配合cookie使用,如果是浏览器禁用了cookie功

session的官方定义是:Session:在计算机中,尤其是在网络应用中,称为"会话控制".Session 对象存储特定用户会话所需的属性及配置信息. 说白了session就是一种可以维持服务器端的数据存储技术.session主要有以下的这些特点: 1. session保存的位置是在服务器端 2. session一般来说是要配合cookie使用,如果是浏览器禁用了cookie功能,也就只能够使用URL重写来实现session存储的功能 3. 单纯的使用session来维持用户状态的话

Lenovo DS存储Linux下ISCSI 多路径映射配置

Lenovo  DS存储Linux下ISCSI 多路径映射配置 Renren  2018-01-17 实验环境: DS4200存储,B控制器池划分一个大小为18G的volume,通过两个1G ISCSI口port2和port3同时映射给客户机.Port B2口IP为172.16.1.14/24 :port B3口IP为172.16.1.15/24. 客户机系统为centos 6.9,两个以太网口,eth0口IP为172.16.1.195/24,eth1口的IP为172.16.1.196/24.网

明晰三种常见存储技术:DAS、SAN和NAS

随着企业网络应用的时间和应用的数据量的加大,企业已经感觉到存储容量和性能落后与网络的应用发展需求,特别是流媒体企业,在这种应用条件下满足用户的存储需求的技术应用诞生,DAS.NAS和SAN三种存储技术成为当今主流的存储技术. 发现自己知识还是非常匮乏的,首先我还是来总结一下基础知识吧,当然这些都是存储互联网上找到的资料,原创不属于本作者,这里也是为了分析存储知识而已.希望能够跟更多的人来探讨存储,从而学到更多的知识. 今天我们来看一下存储的分类,根据服务器类型分为:封闭系统的存储和开放系统的存储