Linux verfügt über mehrere virtuelle Konsolen. Ctrl+ Alt+ Schaltet zwischen diesen Konsolen. Wenn Sie von Konsole 7 zu Konsole 2 wechseln, werden die Eingangs- und Ausgangsperipheriegeräte von Konsole 7 zu Konsole 2 umgeleitet. Wenn Konsole 7 inaktiv ist, hat sie keinen Zugriff auf die Eingangs- / Ausgangsperipheriegeräte: Das Display wird nicht angezeigt Auf dem Bildschirm erhalten die Anwendungen keine Tastatureingaben usw.Fn
Aus historischen Gründen werden bei der Audioeingabe und -ausgabe völlig andere Kanäle als bei Eingabegeräten wie Tastatur und Maus sowie bei Videoanzeigen verwendet. Konsolengeräte (die Abstraktion im Betriebssystem) decken Tastatur und Video ab, jedoch keinen Ton. Die häufigste grundlegende Implementierung von Sound auf einem Unix-System ist unabhängig von diesem System. Die Berechtigung zur Verwendung der Sound-Peripheriegeräte wird eher aufgrund der Gruppenmitgliedschaft als aufgrund des Eigentums an der Konsole erteilt. Dies ist in der Tat ein Designmangel.
Ubuntu hat die Dinge so eingerichtet, dass die an der Konsole angemeldete Sitzung und nur sie Zugriff auf das Audiogerät haben. Wenn Sie die Konsole wechseln, verlieren Sie den Zugriff auf das Audiogerät, es sei denn, Sie melden sich auch bei dieser anderen Konsole an. Dies hätte eigentlich von Anfang an getan werden sollen, aber nicht, weil die Designer von Konsolenschnittstellen nicht über Sound nachdachten.
Wenn Sie zu einer anderen Konsole wechseln, werden Ihre Programme weiter ausgeführt, da die CPU nicht einer Konsole, sondern einem Computer zugeordnet ist: Jeder Benutzer mit einem Konto auf dem Computer darf die CPU-Zeit verwenden. Gleiches gilt für andere Ressourcen wie Speicher und Dateien (vorbehaltlich Berechtigungen). Es sind nur Interaktionen mit dem Benutzer, die durch den Besitz der Konsole geregelt werden. Ihr Sound wird nicht mehr abgespielt, wenn Sie zu einer Konsole wechseln, an der Sie nicht angemeldet sind, da Ihre Programme das Zugriffsrecht auf das Soundausgabegerät verlieren.
Ich glaube, dass Ubuntu die Zugriffskontrolle über Polkit implementiert , aber ich weiß nicht genau, wie das funktioniert.