GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Was ist die Umgebungsvariable XDG_VTNR?

Was ist $XDG_VTNR ? Wo und wann wird es gesetzt?

Es wird durch die pam_systemd gesetzt PAM-Modul und wird nur auf Rechnern gesetzt, die systemd verwenden, was bedeutet, dass Sie nicht sollten Verlassen Sie sich in Ihren Skripten darauf, es sei denn, Sie möchten sie von systemd abhängig machen.

Auf Systemen, die systemd verwenden, $XDG_VTNR werden sowohl grafisch (durch lightdm , gdm , usw.) und in Sitzungen im Textmodus (durch /bin/login ).

Wo finde ich die offizielle Dokumentation zu dieser Variable?

Im pam_systemd(8) Handbuchseite.

tty ist ein eingebauter Befehl, während $XDG_VTNR wird von Xorg bereitgestellt, warum sich Leute für $XDG_VTNR entscheiden statt eingebautem tty ?

1) tty ist ein eigenständiges Programm, kein eingebautes, und $XDG_VTNR wird nicht von Xorg bereitgestellt.

2) Weil es völlig verschiedene Dinge sind. Wie in seiner Manpage deutlich angegeben, tty(1) teilt Ihnen den Namen des Terminals mit, das mit seiner Standardeingabe verbunden ist, nicht den Namen des virtuellen Terminals, auf dem Ihre GUI-Sitzung oder dergleichen möglicherweise ausgeführt wird[1]. Bedenken Sie Folgendes:

$ script -q /dev/null
$ tty
/dev/pts/5
$ script -q /dev/null
$ tty
/dev/pts/6
$ tty </dev/zero
not a tty

[1] für die XDG_VTNR ist auch kein zuverlässiger Indikator.


Linux
  1. Linux – Wie setzt man die Umgebungsvariable „http_proxy“ in Python zurück?

  2. Wie ändere ich die Sprache meines Git?

  3. Wo wird die Umgebungsvariable $HOME gesetzt?

  4. Was ist das NSFS-Dateisystem?

  5. Was ist der richtige Speicherort für die PS1-Shell-Variable?

Was ist die Shell unter Linux?

Ubuntu-Varianten:Was ist der Unterschied?

Was bedeutet ein Punkt vor dem Variablennamen in struct?

Was bedeutet ein doppeltes Dollarzeichen in Bash/Makefile?

Was macht hier das '-' (Bindestrich) nach Variablennamen?

Was ist der Goldlinker?