A. linux 平台設備 驅動怎麼使用
驅動就是一個硬體和操作系統通話的
中間界面。linux驅動通常是一個內核
mole。你在系統中安裝那個模塊就把驅動安裝拉
B. linux用mknod怎麼創建設備,創建了設備怎麼用
mknod命令用於創建一個設備文件,即特殊文件
首先要明白什麼是設備文件,簡單的我們說 操作系統與外部設備(入磁碟驅動器,列印機,modern,終端 等等)都是通過設備文件來進行通信的,在Unix/Linux系統與外部設備通訊之前,這個設備必須首先要有一個設備文件,設備文件均放在/dev目錄下
一般情況下在安裝系統的時候系統自動創建了很多已檢測到的設備的設備文件,但有時候我們也需要自己手動創建,命令行生成設備文件的方式有 insf,mksf,mknod等等
根據mknod命令的使用參數來看【mknod Name { b | c } Major Minor 】,使用mknod之前,至少要明白以下幾點:
設備文件類型:分為塊設備和字元設備。ls -l /dev 結果顯示第一個欄位有b*** 和 c****,這里即標識了塊設備和字元設備。
字元設備文件----字元設備文件傳送數據給設備的時候,一次傳送一個字元,終端,列印機,繪圖儀,modern等設備都經過字元設備文件傳送數據
塊設備---系統通過塊設備文件存取一個設備的時候,先從內存中的buffer中讀或寫數據,而不是直接傳送數據到物理磁碟,這種方式能有效的提高磁碟和CD-ROMS的I/O性能。磁碟和CD-ROMS即可以使用字元設備文件也可使用塊設備文件。
主號和次號:
主號:當在任意目錄使用ls -l 時,結果的第5個欄位就是主號,設備主號代表了這個設備使用的是哪個設備驅動程序
次號:次號是一個24位的十六進制數字,定義了設個設備在系統中的物理的位置
就拿我們常用的創建卷組來看;
先來看看mknod 命令,如果該設備文件你想放在一個特定的文件夾下當然就先創建文件夾
mknod 設備文件名[/dev/xyz] b/c 主號 次號
{ mkdir /dev/vg01
mknod /dev/vg01/group c 64 0X010000
}
創建之後,就可以使用你想要創建的設備對於德創建命令了,如我現在的卷組的創建命令:
vgcreate /dev/vg01 /dev/dsk/c*t*d*
一直進行下去
之後的步驟根據不同的設備而不盡相同
C. 如何在Linux中管理設備
linux第塊網卡設備名eth0文件ifcfg-eth0保存/etc/sysconfig/network-scripts/目錄面
1. 臨配置:
ifconfig eth0 192.168.1.1 netmask 255.255.255.0
2. 永久效:
vi /etc/sysconfig/network-scripts/ifcfg-eth0
打文件面寫入內容:
DEVICE=eth0 定義設備名稱
ONBOOT=yes 機否自激
BOOTPROTO=static 獲IP式
IPADDR=192.168.1.1 IP址
NETMASK=255.255.255.0 網掩碼
GATEWAY=192.168.1.100 網關(根據需求定要寫)
保存退重啟服務 service network restart
注意: 面BOOTPROTO=static意思IP址手配置面內容要寫自獲IP址段改BOOTPROTO=dhcp面內容全部刪除同要重啟服務
D. linux用mknod怎麼創建設備怎麼用
首先要明白什麼是設備文件,簡單的我們說,操作系統與外部設備(入磁碟驅動器,列印機,modern,終端 等等)都是通過設備文件來進行通信的,在Unix/Linux系統與外部設備通訊之前,這個設備必須首先要有一個設備文件,設備文件均放在/dev目錄下。
一般情況下在安裝系統的時候系統自動創建了很多已檢測到的設備的設備文件,但有時候我們也需要自己手動創建,命令行生成設備文件的方式有 insf,mksf,mknod等等
根據mknod命令的使用參數來看【mknod Name { b | c } Major Minor 】,使用mknod之前,至少要明白以下幾點:
設備文件類型:分為塊設備和字元設備。ls -l /dev 結果顯示第一個欄位有b*** 和 c****,這里即標識了塊設備和字元設備。
字元設備文件----字元設備文件傳送數據給設備的時候,一次傳送一個字元,終端,列印機,繪圖儀,modern等設備都經過字元設備文件傳送數據
塊設備---系統通過塊設備文件存取一個設備的時候,先從內存中的buffer中讀或寫數據,而不是直接傳送數據到物理磁碟,這種方式能有效的提高磁碟和CD-ROMS的I/O性能。磁碟和CD-ROMS即可以使用字元設備文件也可使用塊設備文件。
主號和次號
主號:當在任意目錄使用ls -l 時,結果的第5個欄位就是主號,設備主號代表了這個設備使用的是哪個設備驅動程序
次號:次號是一個24位的十六進制數字,定義了設個設備在系統中的物理的位置
就拿我們常用的創建卷組來看:
先來看看mknod 命令,如果該設備文件你想放在一個特定的文件夾下當然就先創建文件夾
mknod 設備文件名[/dev/xyz] b/c 主號 次號
{ mkdir /dev/vg01
mknod /dev/vg01/group c 64 0X010000}
創建之後,就可以使用你想要創建的設備對於德創建命令了,如我現在的卷組的創建命令:
vgcreate /dev/vg01 /dev/dsk/c*t*d*
一直進行下去,之後的步驟根據不同的設備而不盡相同。
E. linux系統中是如何表示設備的
所有設備都是以文件來表示的
F. 如何在Linux下實現設備的配置
Linux下設備的配置過程是指在檢測到設備類型、設備當前工作參數等信息之後,使用這些信息來配置設備的驅動程序,工作方式等,要完成這樣的任務,需要做兩方面的工作:
1、需要一個詳盡的設備信息文件,這個文件描述了設備標識、與設備標識對應的設備驅動程序、設備配置參數(設備選項)、設備設置的詳細描述、設備配置方法描述、設備對應的別名、設備的主設備號等信息。
2、根據設備的類型,以及安裝的Linux系統版本(不同的Linux發行版對於同一設備的配置腳本文件存在差異),設置設備對應的配置腳本文件。
具體設置可以參考網路經驗:
http://jingyan..com/article/5553fa82066afa65a23934b0.html
G. Linux如何訪問設備
先看內核是否支持該設備
如果可以 就要安裝驅動
再載入模塊到內核中才可以使用
H. 在Linux系統中,以 什麼 方式訪問設備
在Linux系統中,以 文件 方式訪問設備 。
I. Linux中如何通過設備號找到設備
一個字元設備或者塊設備都有一個主設備號和次設備號。主設備號和次設備號統稱為設備號。主設備號用來表示一個特定的驅動程序。次設備號用來表示使用該驅動程序的各設備。
查看主設備號:
# cat /proc/devices
Character devices:
1 mem
4 /dev/vc/0
4 tty
4 ttyS
5 /dev/tty
5 /dev/console
5 /dev/ptmx
6 lp
7 vcs
10 misc
13 input
14 sound
21 sg
29 fb
116 alsa
128 ptm
136 pts
162 raw
180 usb
189 usb_device
202 cpu/msr
203 cpu/cpuid
216 rfcomm
249 blkwatch_272
250 hidraw
251 usbmon
252 bsg
253 pcmcia
254 rtc
Block devices:
1 ramdisk
2 fd
259 blkext
7 loop
8 sd
9 md
11 sr
65 sd
66 sd
67 sd
68 sd
69 sd
70 sd
71 sd
128 sd
129 sd
130 sd
131 sd
132 sd
133 sd
134 sd
135 sd
253 device-mapper
254 mdp
如上所示,該命令會顯示字元設備和塊設備的主設備號。如果你想查看某個主設備號,那麼可以
[root@mylnx01 ~]# cat /proc/devices | grep 253
253 pcmcia
253 device-mapper
其中Device Mapper,Device Mapper 是 Linux 2.6 內核中提供的一種從邏輯設備到物理設備的映射框架機制,在該機制下,用戶可以很方便的根據自己的需要制定實現存儲資源的管理策略,當前比較流行的 Linux 下的邏輯卷管理器如 LVM2(Linux Volume Manager 2 version)、EVMS(Enterprise Volume Management System)、dmraid(Device Mapper Raid Tool)等都是基於該機制實現的。
次設備號查看
[root@mylnx01 ~]# ls -l /dev 或 ll /dev[root@mylnx01 ~]# ll /dev | grep 253 | grep -v grep
brw-rw---- 1 root root 253, 0 Jul 17 23:08 dm-0
brw-rw---- 1 root root 253, 1 Jul 17 23:08 dm-1
brw-rw---- 1 root root 253, 2 Jul 17 23:08 dm-2
brw-rw---- 1 root root 253, 3 Jul 17 23:08 dm-3
brw-rw---- 1 root root 253, 4 Jul 17 23:09 dm-4
brw------- 1 root root 253, 1 Jul 17 23:09 root
但是在一台伺服器的日誌信息遇到下面錯誤信息,通過/dev 沒有找到次設備號為253:14的塊設備。 如下所示
Jul 19 05:02:01 mylnx01 kernel: BLKWATCH ERR: Attempt to get a sector index out of the bitmap bounds.
Jul 19 05:02:01 mylnx01 kernel: BLKWATCH ERR: Critical error 1 happened for device 253:14. Additional info: Failed to mark block as dirty.
[root@getlnx01 ~]# ll /dev | grep 253 | grep -v grep
關於次設備號的主要用途,這篇博客主設備號和次設備號介紹了部分內容。
1、區分設備驅動程序控制的實際設備;
2、區分不同用途的設備 (misc 系列設備)
3、區分塊設備的分區 (partition)
通常,為了使應用程序區分所控制設備的類型,內核使用主設備號。而存在多台同類設備時,為了選擇其中的一種,設備驅動程序就使用次設備號。
# ll /dev/ | grep sd #或者命令 ll /dev/ | grep disk
brw-r----- 1 root disk 8, 0 Jul 17 23:08 sda
brw-r----- 1 root disk 8, 1 Jul 17 23:10 sda1
brw-r----- 1 root disk 8, 2 Jul 17 23:08 sda2
brw-r----- 1 root disk 8, 3 Jul 17 23:08 sda3
brw-r----- 1 root disk 8, 16 Jul 17 23:08 sdb
brw-r----- 1 root disk 8, 17 Jul 17 23:08 sdb1
brw-r----- 1 root disk 8, 18 Jul 17 23:08 sdb2
brw-r----- 1 root disk 8, 21 Jul 17 23:08 sdb5
brw-r----- 1 root disk 8, 32 Jul 17 23:08 sdc
brw-r----- 1 root disk 8, 33 Jul 17 23:08 sdc1
brw-r----- 1 root disk 8, 34 Jul 17 23:08 sdc2
brw-r----- 1 root disk 8, 37 Jul 17 23:08 sdc5
brw-r----- 1 root disk 8, 48 Jul 17 23:08 sdd
brw-r----- 1 root disk 8, 49 Jul 17 23:08 sdd1
brw-r----- 1 root disk 8, 50 Jul 17 23:08 sdd2
brw-r----- 1 root disk 8, 51 Jul 17 23:08 sdd3
brw-r----- 1 root disk 8, 53 Jul 17 23:08 sdd5
brw-r----- 1 root disk 8, 64 Jul 17 23:08 sde
brw-r----- 1 root disk 8, 65 Jul 17 23:08 sde1
brw-r----- 1 root disk 8, 66 Jul 17 23:08 sde2
brw-r----- 1 root disk 8, 67 Jul 17 23:08 sde3
brw-r----- 1 root disk 8, 69 Jul 17 23:08 sde5
brw-r----- 1 root disk 8, 80 Jul 17 23:08 sdf
brw-r----- 1 root disk 8, 81 Jul 17 23:08 sdf1
brw-r----- 1 root disk 8, 85 Jul 17 23:08 sdf5
brw-r----- 1 root disk 8, 96 Jul 17 23:08 sdg
brw-r----- 1 root disk 8, 97 Jul 17 23:08 sdg1
brw-r----- 1 root disk 8, 98 Jul 17 23:08 sdg2
brw-r----- 1 root disk 8, 101 Jul 17 23:08 sdg5
brw-r----- 1 root disk 8, 112 Jul 17 23:08 sdh
brw-r----- 1 root disk 8, 113 Jul 17 23:08 sdh1
brw-r----- 1 root disk 8, 117 Jul 17 23:08 sdh5