https://unix.stackexchange.com/a/492304/674 sagt
Unter Linux gibt es bei Verwendung von devpts keine Master-Gerätedatei. Der Prozess auf der Masterseite verwendet einen Dateideskriptor, den er durch Öffnen von ptmx erhält, aber es gibt keinen entsprechenden Geräteknoten.
Hat der Autor auf /dev/ptmx
verwiesen oder /dev/pts/ptmx
?
Warum sind /dev/ptmx
und /dev/pts/ptmx
keine Gerätedateien? Um welche Dateitypen handelt es sich?
Was ist der Unterschied zwischen /dev/ptmx
und /dev/pts/ptmx
?
Danke.
Auf 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: -
Akzeptierte Antwort:
Der Kontext war „Ein Pseudoterminal hat ein Paar aus Master und Slave.“ Als ich schrieb „Es gibt keine Master-Gerätedatei“, meinte ich, dass es keinen Geräteknoten im Dateisystem gibt, der dem Master-Ende einer Pseudoterminal-Verbindung entspricht, im Gegensatz zum Slave-Ende. Ich habe mich nicht auf /dev/ptmx
bezogen oder /dev/pts/ptmx
.
/dev/ptmx
und /dev/pts/ptmx
sind Geräteknoten, wie durch ihren Typ in der Ausgabe von ls
angegeben oder stat
. Sie haben denselben Major und Minor, was bedeutet, dass sie Zugriff auf dasselbe Gerät bieten.
Siehe die Antwort von JdeBP auf Woher kommt `/dev/pts/ptmx`? für die Geschichte beider Geräteknoten (und den Grund, warum es heutzutage zwei unter Linux gibt).