Webページにttyドライバを記述する文があります。
/proc/tty/driversファイルは、現在登録されているすべてのttyドライバを表示します。
以下は w および /proc/tty/drivers に関するいくつかの情報です。
debian8@hwy:~$ w
23:53:38 up 2 min, 1 user, load average: 0.47, 0.46, 0.20
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
debian8 :0 :0 23:51 ?xdm? 4.62s 0.05s /usr/bin/lxsess
debian8@hwy:~$ cat /proc/tty/drivers
/dev/tty /dev/tty 5 0 system:/dev/tty
/dev/console /dev/console 5 1 system:console
/dev/ptmx /dev/ptmx 5 2 system
/dev/vc/0 /dev/vc/0 4 0 system:vtmaster
serial /dev/ttyS 4 64-95 serial
pty_slave /dev/pts 136 0-1048575 pty:slave
pty_master /dev/ptm 128 0-1048575 pty:master
unknown /dev/tty 4 1-63 console
/proc/tty/driversのどの行がwコマンドを反映していますか?
ベストアンサー1
私が知る限り、このw
ユーティリティはutmp
データベースを読み取ってTTY情報を表示します。これは、「Manage utmp / wtmp items for non-init client」というX11ユーティリティを使用して作成されたようですwtmp
。xdm
sessreg
マニュアルにはsessreg
線を入れるようになっています。
sessreg -a -l $DISPLAY -x /etc/X11/xdm/Xservers $USER
X11Xstartup
スクリプトで。私のOpenBSDコンピュータでは、この行は実際には(in /etc/X11/xdm/Xstartup
)です。
exec /usr/X11R6/bin/sessreg -a -w /var/log/wtmp -u /var/run/utmp -x /etc/X11/xdm/Xservers -l $DISPLAY -h "" $USER
この-l
フラグはマニュアルで次のように説明されていますsessreg
。
これは項目の「行」名を説明します。ターミナルセッションの場合、これはターミナルデバイスファイル名の最終パス名セグメントです
ttyd0
。 Xセッションの場合は、ユーザーセッションに割り当てられたローカル表示名でなければなりません(例:0
:)。指定しない場合、端末名は前のttyname(3)
コンポーネントによって決定され削除されます。
実験として:
$ doas sessreg -a -l hello kk
(私はOpenBSDkk
と「同等の」人です)doas
sudo
$ w
7:31PM up 10:55, 2 users, load averages: 1.20, 1.16, 1.10
USER TTY FROM LOGIN@ IDLE WHAT
kk p0 192.168.216.1 8:47AM 0 tmux: client (/tmp/tmux-1000/default)
kk he - 7:31PM 0 -
$ doas sessreg -d -l hello kk
$ w
7:32PM up 10:56, 1 user, load averages: 1.22, 1.17, 1.11
USER TTY FROM LOGIN@ IDLE WHAT
kk p0 192.168.216.1 8:47AM 0 tmux: client (/tmp/tmux-1000/default)
$ last | head -n 3
kk hello Wed Jan 11 19:31 - 19:31 (00:00)
kk ttyC0 Wed Jan 11 18:54 - 19:21 (00:27)
kk ttyp0 192.168.216.1 Wed Jan 11 08:47 still logged in
結論:ユーティリティがそこに置いたテキスト文字:0
列にすぎません。sessreg
何でもすることができますが$DISPLAY
。