Apa itu
$XDG_VTNR
? Di mana dan kapan itu disetel?
Diatur oleh pam_systemd
Modul PAM, dan hanya disetel pada mesin yang menggunakan systemd, yang artinya Anda tidak andalkan itu dalam skrip Anda, kecuali jika Anda ingin membuatnya bergantung pada systemd.
Pada sistem yang menggunakan systemd, $XDG_VTNR
akan diatur keduanya secara grafis (oleh lightdm
, gdm
, dll) dan dalam sesi mode teks (dengan /bin/login
).
Di mana saya dapat menemukan dokumentasi resmi tentang variabel ini?
Di pam_systemd(8)
halaman manual.
tty
adalah perintah bawaan sedangkan$XDG_VTNR
disediakan oleh Xorg, mengapa orang memilih untuk menggunakan$XDG_VTNR
bukantty
bawaan ?
1) tty
adalah program mandiri, bukan bawaan, dan $XDG_VTNR
tidak disediakan oleh Xorg.
2) Karena mereka adalah hal yang sangat berbeda. Seperti yang dinyatakan dengan jelas di halaman manualnya, tty(1)
akan memberi tahu Anda nama terminal yang terhubung ke input standarnya, bukan nama terminal virtual yang mungkin digunakan oleh sesi GUI Anda atau semacamnya[1]. Pertimbangkan ini:
$ script -q /dev/null
$ tty
/dev/pts/5
$ script -q /dev/null
$ tty
/dev/pts/6
$ tty </dev/zero
not a tty
[1] untuk XDG_VTNR
yang mana juga bukan indikator yang dapat diandalkan.