https://unix.stackexchange.com/a/492304/674 dice
En Linux, usando devpts, no hay un archivo de dispositivo maestro. El proceso en el extremo maestro usa un descriptor de archivo, que obtiene al abrir ptmx, pero no hay un nodo de dispositivo correspondiente.
¿Se refirió el autor a /dev/ptmx
? o /dev/pts/ptmx
?
¿Por qué /dev/ptmx
y /dev/pts/ptmx
¿No son archivos de dispositivo? ¿Qué tipos de archivos son?
¿Cuál es la diferencia entre /dev/ptmx
y /dev/pts/ptmx
?
Gracias.
En Lubuntu 18.04
$ file /dev/ptmx
/dev/ptmx: character special (5/2)
$ file /dev/pts/ptmx
/dev/pts/ptmx: character special (5/2)
$ sudo su
# stat -L /dev/fd/3 3<> /dev/pts/ptmx
File: /dev/fd/3
Size: 0 Blocks: 0 IO Block: 1024 character special file
Device: 15h/21d Inode: 2 Links: 1 Device type: 5,2
Access: (0000/c---------) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2018-11-21 13:39:10.544000218 -0500
Modify: 2018-11-21 13:39:10.544000218 -0500
Change: 2018-11-21 13:39:10.544000218 -0500
Birth: -
# stat -L /dev/fd/3 3<> /dev/ptmx
File: /dev/fd/3
Size: 0 Blocks: 0 IO Block: 4096 character special file
Device: 6h/6d Inode: 87 Links: 1 Device type: 5,2
Access: (0666/crw-rw-rw-) Uid: ( 0/ root) Gid: ( 5/ tty)
Access: 2019-01-06 07:19:54.372098540 -0500
Modify: 2019-01-06 07:19:54.372098540 -0500
Change: 2018-11-21 13:39:30.372098540 -0500
Birth: -
Respuesta aceptada:
El contexto era "Un pseudoterminal tiene un par de maestro y esclavo". Cuando escribí "no hay un archivo de dispositivo maestro", quise decir que no hay un nodo de dispositivo en el sistema de archivos correspondiente al extremo maestro de una conexión pseudoterminal, a diferencia del extremo esclavo. No me refería a /dev/ptmx
o /dev/pts/ptmx
.
/dev/ptmx
y /dev/pts/ptmx
son nodos de dispositivo, como se indica por su tipo en la salida de ls
o stat
. Tienen el mismo mayor y menor, lo que significa que brindan acceso al mismo dispositivo.
Vea la respuesta de JdeBP a ¿De dónde viene `/dev/pts/ptmx`? para la historia de ambos nodos de dispositivos (y la razón por la que hay dos en Linux hoy en día).