2009-12-01 31 views

Trả lời

26

Danh sách này được gọi là Danh sách thiết bị LANANA Linux và được quản lý bởi Alan Cox.

Bạn có thể tìm thấy latest copy trực tuyến (direct link) hoặc trong nguồn Linux. Tên tệp của nó trong cây hạt nhân là Documentation/devices.txt.

Để xem những con số lớn và nhỏ đã tạo ra một nút trong /dev (hoặc bất kỳ nút thiết bị cho rằng vấn đề), chỉ cần sử dụng ls với -l tùy chọn:

22:26 [email protected]% ls -l /dev/xvd? 
brw-rw---- 1 root disk 202, 0 Nov 1 20:31 /dev/xvda 
brw-rw---- 1 root disk 202, 16 Nov 1 20:31 /dev/xvdb 
brw-rw---- 1 root disk 202, 32 Nov 1 20:31 /dev/xvdc 

Trong ví dụ này, 202 là ba số chính của thiết bị và 0, 1632 là trẻ vị thành niên. Các b ở bên trái chỉ ra rằng nút là một thiết bị khối. Cách khác là c, một thiết bị nhân vật:

crw-rw-rw- 1 root tty  5, 0 Nov 22 00:29 /dev/tty 
+0

hey cảm ơn! nhưng tôi đã hỏi làm thế nào để làm điều này bằng dòng lệnh ...: D –

+0

Thực hiện điều gì bằng dòng lệnh? Câu hỏi của bạn không nói bất cứ điều gì về dòng lệnh, ngoại trừ 'mknod'. –

+0

Bạn nói đúng. Tôi xin lôi. Dù sao, đó là câu trả lời tôi muốn. –

7
 
$ ls -l /dev/fd0 /dev/null 
brw-rw---- 1 root floppy 2, 0 Nov 22 19:48 /dev/fd0 
crw-rw-rw- 1 root root 1, 3 Nov 22 19:48 /dev/null 
$ stat -c '%n: %F, major %t minor %T' /dev/fd0 /dev/null 
/dev/fd0: block special file, major 2 minor 0 
/dev/null: character special file, major 1 minor 3 

Hầu hết số thiết bị được cố định (ví dụ: /dev/null sẽ luôn là nhân vật thiết bị 1:3) nhưng trên Linux, một số được cấp phát động.

 
$ cat /proc/devices 
Character devices: 
... 
10 misc 
... 

Block devices: 
... 
253 mdp 
254 device-mapper 
$ cat /proc/misc 
... 
57 device-mapper 
... 

Ví dụ, trên hệ thống này, nó chỉ như vậy sẽ xảy ra rằng /dev/mapper/control sẽ c:10:57 trong khi phần còn lại của /dev/mapper/* sẽ b:254:*, và điều này có thể khác với một chu trình khởi động khác - hoặc thậm chí là mô-đun được nạp/unloaded và các thiết bị được thêm vào/gỡ bỏ.

Bạn có thể khám phá thêm các đăng ký thiết bị này trong /sys.

 
$ readlink /sys/dev/block/2:0 
../../devices/platform/floppy.0/block/fd0 
$ cat /sys/devices/platform/floppy.0/block/fd0/dev 
2:0 
$ readlink /sys/dev/char/1:3 
../../devices/virtual/mem/null 
$ cat /sys/devices/virtual/mem/null/dev 
1:3 
3

Bạn cũng có thể sử dụng chỉ số.

$ stat -c 'major: %t minor: %T' <file> 
1

Đặc biệt đối với các thiết bị khối:

$ lsblk 
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT 
sda  8:0 0 90G 0 disk 
├─sda1 8:1 0 4G 0 part [SWAP] 
├─sda2 8:2 0 4G 0 part/
0

Alternative mà không phụ thuộc vào stat:

$ cat /sys/class/*/random/dev 
1:8 
Các vấn đề liên quan