設備文件 和 udev

兩種方法來手動的創建設備文件:

1.mknod

mknod :創建設備文件的基本方式,必須知道該設備的正確設備號纔可以。

NAME
       mknod - make block or character special files 

       mknod [OPTION]... NAME TYPE [MAJOR MINOR]

       Both  MAJOR  and  MINOR must be specified when TYPE is b, c, or u, and they must be omitted when TYPE is p

 b      create a block (buffered) special file


 1770  2014-05-06 14:40:41 mknod /dev/dm-24 b 253 24
 1772  2014-05-06 14:40:54 mknod /dev/dm-27 b 253 27
ls -rtl /dev/oracleasm/disks/
total 0
brw-rw---- 1 grid asmadmin 253, 24 May  6 14:42 ASM_OLDB1
brw-rw---- 1 grid asmadmin 253, 27 May  6 14:43 ASM_FAST1


2.MAKEDEV

MAKEDEV is a program that will create the devices in /dev used to interface with drivers in the kernel. 



是一個記錄很多設備的名字與其設備號之間的關係的程序,因此它能使用正確的設備號來創建設備。

首先進去/dev目錄,然後再執行makedev  /dev/sdb5

很多應用程序都會從/dev下查找所需的設備文件。

oracleasm 從/dev下查找所需的塊設備文件信息。

ls -rtl
total 0
brw-rw---- 1 grid asmadmin 253, 24 May  6 14:42 ASM_OLDB1
brw-rw---- 1 grid asmadmin 253, 27 May  6 14:43 ASM_FAST1
blkid  |grep oracle
/dev/mapper/data_vg-db_lv: LABEL="ASM_OLDB1" TYPE="oracleasm"
/dev/mapper/data_vg-db_u03_lv: LABEL="ASM_FAST1" TYPE="oracleasm"
/dev/mapper/data_vg-oracle_lv: UUID="786dcbdb-fae1-42a6-b107-04e82f82712c" TYPE="ext3" SEC_TYPE="ext2"
/dev/data_vg/db_lv: LABEL="ASM_OLDB1" TYPE="oracleasm"
/dev/data_vg/db_u03_lv: LABEL="ASM_FAST1" TYPE="oracleasm"


使用udev的好處:

1.動態管理

添加/刪除設備時候,udev守護進程偵聽來自內核的uevent ,以此動態的添加/刪除 /dev下的設備文件

2.自定義命名規則

udev在/dev裏爲所有設備定義了內核設備名稱。比如/dev/sda ,/dev/sdb1

linux 用戶可以通過子定義規則文件,靈活產生標識性強的設備文件,比如/dev/oracle_disk





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章