(No es un duplicado de Understanding / dev y sus subdirecciones y archivos )
Estaba navegando por mi sistema de archivos y por primera vez me tomé un segundo para analizar mi /dev
directorio. Me sorprendió la cantidad de archivos de dispositivos que contenía, y no pude entenderlos todos:
max@linux-vwzy:/dev> ls
adsp disk fd0u1760 initctl mem root sg0 tty tty21 tty35 tty49 tty62 vboxdrv vcsa2
audio dri fd0u1840 input mixer rtc sg1 tty0 tty22 tty36 tty5 tty63 vboxnetctl vcsa3
autofs dsp fd0u1920 kmem mixer1 rtc0 sg2 tty1 tty23 tty37 tty50 tty7 vboxusb vcsa4
block dvd fd0u360 kmsg net scd0 sg3 tty10 tty24 tty38 tty51 tty8 vcs vcsa5
bootsplash dvdrw fd0u720 log network_latency sda sg4 tty11 tty25 tty39 tty52 tty9 vcs1 vcsa6
bsg fb0 fd0u800 loop0 network_throughput sda1 sg5 tty12 tty26 tty4 tty53 ttyS0 vcs10 vcsa7
btrfs-control fd fd0u820 loop1 null sda2 sg6 tty13 tty27 tty40 tty54 ttyS1 vcs2 vga_arbiter
bus fd0 fd0u830 loop2 nvram sda3 sg7 tty14 tty28 tty41 tty55 ttyS2 vcs3 xconsole
cdrom fd0u1040 full loop3 oldmem sdb shm tty15 tty29 tty42 tty56 ttyS3 vcs4 zero
cdrw fd0u1120 fuse loop4 port sdc snapshot tty16 tty3 tty43 tty57 ttyS4 vcs5
char fd0u1440 fw0 loop5 ppp sdc1 snd tty17 tty30 tty44 tty58 ttyS5 vcs6
console fd0u1600 hidraw0 loop6 psaux sdd sr0 tty18 tty31 tty45 tty59 ttyS6 vcs7
core fd0u1680 hidraw1 loop7 ptmx sde stderr tty19 tty32 tty46 tty6 ttyS7 vcsa
cpu fd0u1722 hidraw2 mapper pts sdf stdin tty2 tty33 tty47 tty60 uinput vcsa1
cpu_dma_latency fd0u1743 hpet mcelog random sdg stdout tty20 tty34 tty48 tty61 urandom vcsa10
Sé que los sd*
's son mis discos y sistemas de ficheros, pero ¿cuáles son loopx
, fd0uxxxx
, sgx
, vcsxxx
y todos los demás archivos individuales. La mayoría de ellos son archivos de dispositivo según ls
.
Entiendo que responder completamente esta pregunta requeriría una tonelada de información, por lo que a menos que alguien pueda proporcionar un enlace con un resumen de los diferentes archivos de dispositivos dev
y para qué se utilizan, propongo que respondamos CW.
filesystems
devices
n0pe
fuente
fuente
/dev
que debo conocer? (Tal vez tenga respuestas para todos de todos modos, tal vez no ...)Respuestas:
Algunos de estos tienen páginas de manual (en la sección 4 ; omita los dígitos finales y, en algunos casos, como
sda
la letra final).Para obtener una respuesta más definitiva, pero generalmente menos fácil de leer, consulte la documentación del kernel . Primero determine si el dispositivo es un dispositivo de bloque o un dispositivo de caracteres , y su número mayor y menor. Por ejemplo
también lo
sda
es un dispositivo de bloque (b
) con mayor: menor = 8: 0. Ahora búsquelo endevices.txt
: 8 bloques son dispositivos de disco SCSI, que son la mayoría de los discos hoy en día (la mayoría de los discos IDE y SATA también se ven a través de la interfaz SCSI, aunque esto depende de las opciones de compilación del núcleo). El dispositivo de bloque 8: 1 (/dev/sda1
) es la primera partición de/dev/sda
.Puede haber algunos dispositivos extraños que no están documentados. Puede buscar en su sistema, por ejemplo
/sys/dev/block/8:0
: este es un enlace simbólico a un directorio en el/sys
que se proporcionan diversos elementos de información sobre el dispositivo. Puede seguir más enlaces, y en particular (en este caso) lo/sys/dev/block/8:0/device/driver
lleva a un directorio que corresponde con el controlador. Otra fuente de información es/proc/devices
, que indica qué controlador reclama cada número de dispositivo principal.La mayoría de los sistemas Linux usan udev para completar en
/dev
función de los controladores y hardware disponibles. Puede examinar las reglas para crear archivos de dispositivo, generalmente en/lib/udev/rules.d
y/etc/udev/rules.d
(las ubicaciones exactas dependen de la distribución).Algunos de los archivos no son dispositivos.
lsof /dev/NAME
(como root) le dirá a qué proceso los está utilizando y, por lo tanto, le dará una pista de para qué sirven. Para los directorios, mira los archivos en ellos.Esta respuesta es específica de Linux, pero otras unidades siguen los mismos principios. Consulte las páginas de manual (en la sección 4 sobre la mayoría de las variantes, pero algunas usan la sección 7), u otra documentación del sistema o del núcleo. La información relevante es el bit de bloque / carácter y el mayor: números menores.
fuente