ttyとptsについて
dokcer runのオプションで意味不明だったので、調べていました。
docker run -it ←こいつ
% docker run --help -i, --interactive Keep STDIN open even if not attached -t, --tty Allocate a pseudo-TTY
ここでTTYが出てきました。
TTYとは
ttyとは、標準入出力となっている端末デバイス(制御端末、controlling terminal)の名前を表示するUnix系のコマンドである。 元来ttyとはteletypewriter(テレタイプライター)のことを指す。
ターミナルで打つとこうなります。
% tty /dev/ttys004
実際にターミナルで打っている端末の情報ですね。
よくある遊びです。
ここでターミナルを別のウィンドウで立ち上げます。
% tty ←ターミナル1 /dev/ttys004 % tty ←ターミナル2 /dev/ttys006 ターミナル1のウィンドウから下記コマンドを実行する % echo "Hello tty" > /dev/ttys006 % Hello tty←ターミナル2
これを実験するとどういうものかわかりやすいと思います。
pts
ptsはsshでログインした時の端末の情報です。
tty /dev/pts/0
ということは、誰かがsshで同時接続していた場合に、相手をびっくりさせることができますね。
【参考】