Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
client:linux_in_vms [2021/06/16 18:37 CEST] – [Poolumfeld] chrclient:linux_in_vms [2024/01/31 14:31 CET] (aktuell) – [Autologin] sddm: Session mit angeben simon
Zeile 8: Zeile 8:
 ===== Poolumfeld ===== ===== Poolumfeld =====
  
-Im Poolumfeld sind Dinge wie Abschalten, Sperren, Userwechsel und dergleichen natürlich eher sinnlos, da sie entweder vom Grundsystem zur Verfügung gestellt werden (zB. Sperren des Monitors) oder schlichtweg unerwünscht sind (zB. Userwechsel per Menu der Oberfläche). Diese sollten abgestellt werden, sind jedoch von der jeweils verwendeten Oberfläche abhängig.+Im Poolumfeld sind Dinge wie Abschalten, Sperren, Userwechsel und dergleichen natürlich eher sinnlos, da sie entweder vom Grundsystem zur Verfügung gestellt werden (zB. Sperren des Monitors) oder schlichtweg unerwünscht sind (zB. Userwechsel per Menu der Oberfläche, Schlafmodus, Logout innerhalb der VM). Diese sollten abgestellt werden, sind jedoch von der jeweils verwendeten Oberfläche abhängig.
  
 ==== Autologin ==== ==== Autologin ====
Zeile 21: Zeile 21:
  
 Falls diese Hinweise nicht zielführend sind, können Sie noch die Standardmethoden für den jeweiligen Displaymanager probieren: Falls diese Hinweise nicht zielführend sind, können Sie noch die Standardmethoden für den jeweiligen Displaymanager probieren:
- 
  
 === Generisch sddm === === Generisch sddm ===
Zeile 29: Zeile 28:
 <code>[Autologin] <code>[Autologin]
 User=student User=student
 +Session=plasma.desktop
 </code> </code>
 +Wenn Sie die Option **Session** nicht mit angeben, wird im Normalfall eine leere Session gestartet ( = schwarzer Bildschirm). Gültige Sessions sehen Sie im Verzeichnis **/usr/share/xsessions**.
  
 === Generisch lightdm === === Generisch lightdm ===
Zeile 46: Zeile 47:
 </code> </code>
  
 +=== Generisch 'displaymanager' ===
  
 +Wenn Ihr Displaymanager die Datei /etc/sysconfig/displaymanager nutzt, kann auch dort eingefügt werden:
 +<code>
 +DISPLAYMANAGER_AUTOLOGIN="student"
 +</code>
 +==== Unerwünschte UI-Funktionen ====
  
 +Hier schlagen hauptsächlich der Abmelde-Button zu Buche, daneben auch Suspend-Modi, das Öffnen weiterer Session bzw Userwechsel und dergleichen. Diese Aufstellung kann bei der Vielzahl möglicher Desktop-Oberflächen nur schwerlich vollständig sein; bitte lassen sie uns wissen, wenn Sie hier fehlende Lösungen/Möglichkeiten haben!
  
 +=== Abmelden-Button ===
  
-==== KDE ====+== KDE ==
  
 Unter Plasma (KDE 5) finden sich die fraglichen Knöpfe im Anwendungsmenu unter „Energieverwaltung / Sitzung“. In ihrer Funktion erhalten bleiben sollten lediglich „Neustarten“ und „Herunterfahren“. Unter Plasma (KDE 5) finden sich die fraglichen Knöpfe im Anwendungsmenu unter „Energieverwaltung / Sitzung“. In ihrer Funktion erhalten bleiben sollten lediglich „Neustarten“ und „Herunterfahren“.
- 
-=== Abmelden-Button === 
  
 Das Deaktivieren des Abmelden-Buttons sollte eigentlich mit Polkit funktionieren, scheint jedoch fehlerhaft zu sein (getestet unter openSuse 42.3). Daher wurde der Weg über das Verzeichnis [/home/student/].config/plasma-workspace/shutdown/ genommen, und darin ein einfaches Skript abgelegt((… das Skript können Sie natürlich nennen, wie Sie wollen, z. B. „herunterfahren“)): Das Deaktivieren des Abmelden-Buttons sollte eigentlich mit Polkit funktionieren, scheint jedoch fehlerhaft zu sein (getestet unter openSuse 42.3). Daher wurde der Weg über das Verzeichnis [/home/student/].config/plasma-workspace/shutdown/ genommen, und darin ein einfaches Skript abgelegt((… das Skript können Sie natürlich nennen, wie Sie wollen, z. B. „herunterfahren“)):
Zeile 70: Zeile 77:
  
 Anschließend löst ein Druck auf den Abmelden-Knopf einen Shutdown der virt. Maschine aus. Anschließend löst ein Druck auf den Abmelden-Knopf einen Shutdown der virt. Maschine aus.
 +
 +== lightdm ==
 +
 +Hängen Sie in der /etc/lightdm/lightdm.conf eine Zeile des Inhalts <code>session-cleanup-script = /sbin/poweroff</code> an. Ein sudoers-Eintrag ist hier nicht vonnöten, da lightdm das Skript mit Rootrechten ausführt.
  
 === Sperren / Benutzerwechsel / Neue Session starten === === Sperren / Benutzerwechsel / Neue Session starten ===
 +
 +== KDE ==
  
 Fügen Sie der Datei [/home/student/].config/kdeglobals folgenden Abschnitt hinzu: Fügen Sie der Datei [/home/student/].config/kdeglobals folgenden Abschnitt hinzu:
Zeile 96: Zeile 109:
 }); });
 </code> </code>
- 
-Dies sollte auch unter Gnome oder anderen Oberflächen funktionieren - YMMV. 
  
 Sollte obiges nicht funktionieren, können Sie folgende Brutalinski-Methode testen: Suchen Sie im Verzeichnisse /usr/share/polkit-1/actions nach Vorkommen des Strings „org.freedesktop.login1.suspend“: Sollte obiges nicht funktionieren, können Sie folgende Brutalinski-Methode testen: Suchen Sie im Verzeichnisse /usr/share/polkit-1/actions nach Vorkommen des Strings „org.freedesktop.login1.suspend“:
Zeile 106: Zeile 117:
 </code> </code>
  
-Dies wird vermutlich die Datei „org.freedesktop.login1.policy“ im Unterverzeichnis „actions“ zu Tage fördern. Editieren Sie diese so, daß unter den Einträgen „<action id="org.freedesktop.login1.suspend">“ und evtl. „<action id="org.freedesktop.login1.suspend-multiple-sessions">“ bei „<allow_active>“ „no“ steht. Der Nachteil dieser Methode ist, daß evtl. Schaltflächen 'Suspend' zwar nicht mehr funktionieren, doch weiterhin angezeigt werden.+Dies wird vermutlich die Datei „org.freedesktop.login1.policy“ im Unterverzeichnis „actions“ zu Tage fördern. Editieren Sie diese so, daß unter den Einträgen „<action id="org.freedesktop.login1.suspend">“ und evtl. „<action id="org.freedesktop.login1.suspend-multiple-sessions">“ bei „<allow_active>“ „no“ steht. Der Nachteil dieser Methode ist, dass in seltenen Fällen auch nach Reboot die Schaltflächen 'Suspend' zwar nicht mehr funktionieren, doch weiterhin angezeigt werden
 + 
 +== grub, systemd == 
 + 
 +Ein 
 +<code>systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target</code> 
 +sollte unerwünschte systemd-Targets (sleep, suspend, hibernate) deaktivieren. Eventuell ist auch empfehlenswert, den Wert resume aus der Kernel-Kommandozeile zu entfernen (/etc/default/grub editieren, anschl. ‚grub2-mkconfig -o /boot/grub2/grub.cfg‘ ausführen).
  
 ==== Automatische Updates ==== ==== Automatische Updates ====
Zeile 117: Zeile 134:
   * Wenn eine komplette Deinstallation (z.B. packagekit unter (K)ubuntu) nicht möglich ist, deinstallieren Sie lästige 'Pop-up-Programme' (z.B. plasma-discover).   * Wenn eine komplette Deinstallation (z.B. packagekit unter (K)ubuntu) nicht möglich ist, deinstallieren Sie lästige 'Pop-up-Programme' (z.B. plasma-discover).
  
 +=== Ubuntu ===
  
 +Ubuntu ist bezüglich automatischer Updates besonders nervig, da eine Vielzahl von Mechanismen im System verankert ist. Deinstalliert werden sollten update-notifier, update-manager (auch als software-updater bekannt) und unattended-upgrades.
 +
 +Das Verzeichnis /etc/apt/apt.conf.d enthält Steuerdateien, die einen Teil der automatischen Updates konfigurieren. Insbesondere die Datei 20auto-upgrades sollte so editert werden, daß die relevanten Werte auf 0 (Null) stehen:
 +
 +<code>
 +APT::Periodic::Update-Package-Lists "0";
 +APT::Periodic::Download-Upgradeable-Packages "0";
 +APT::Periodic::AutocleanInterval "0";
 +APT::Periodic::Unattended-Upgrade "0";
 +</code>
 +
 +Da die Dateien in /etc/apt/apt.conf.d praktisch von unten (00…) nach oben (99…) durchgegangen werden, kann es sein, daß Werte mehrfach bzw. in mehreren Datein gesetzt werden. In diesem Fall gewinnt der letzte Eintrag. Daher mag es sinnvoll sein, eine zusätzliche Datei a la "99periodic-disable' des Inhaltes
 +<code>
 +APT::Periodic::Enable "0";
 +</code>
 +anzulegen.
 +
 +Darüber hinaus ist es empfehlenswert, folgende systemd-Dienste zu deaktivieren:
 +<code>
 +systemctl mask apt-daily-upgrade.timer
 +systemctl mask apt-daily.timer
 +systemctl mask apt-news.service
 +systemctl mask esm-cache.service
 +</code>
 +
 +Ein letztes besonders lästiges Popup kann durch Deinstallation der Pakete 
 +<code>
 +dpkg -P gnome-software-plugin-snap gnome-software ubuntu-software
 +</code>
 +verhindert werden, wobei es zweifellos eleganter wäre, das verantwortliche Plugin zu identifizieren.
 ===== Drucken ===== ===== Drucken =====
  
Zeile 154: Zeile 202:
   * Das Skript 'vm_installer' erzeugt die systemd-Servicedateien 'openslx-resolution.service', 'openslx-mount.service' sowie 'openslx-umount.service' und verlinkt diese in graphical.target.wants, basic.target.wants und shutdown.target. Diese Servicedateien sorgen für das Mounten der Pseudofloppy unter /mnt/diskmount und starten die betreffenden Skripte resolution, mnt_shares und umnt_shares.   * Das Skript 'vm_installer' erzeugt die systemd-Servicedateien 'openslx-resolution.service', 'openslx-mount.service' sowie 'openslx-umount.service' und verlinkt diese in graphical.target.wants, basic.target.wants und shutdown.target. Diese Servicedateien sorgen für das Mounten der Pseudofloppy unter /mnt/diskmount und starten die betreffenden Skripte resolution, mnt_shares und umnt_shares.
  
-Dies sollte unter den derzeit verbreiteten Distributionen direkt funktionieren, so diese systemd nutzen. Das Installskript finden Sie unter https://git.openslx.org/openslx-ng/mltk.git/plain/core/modules/run-virt/data/opt/openslx/vmchooser/data/linux/vm_installer - ggf. Rechtsklick, „Seite speichern unter“ oder bequem ‚wget [Adresse]‘.+Dies sollte unter den derzeit verbreiteten Distributionen direkt funktionieren, so diese systemd nutzen. Das Installskript finden Sie unter https://git.openslx.org/openslx-ng/mltk.git/plain/core/modules/run-virt/data/opt/openslx/vmchooser/data/linux/vm_installer - ggf. Rechtsklick, „Seite speichern unter“ oder bequem ‚wget [Adresse]‘ und anschließend innerhalb der VM ausführen. 
 + 
 +Also z.B. innerhalb der VM: 
 + 
 +<code> 
 +wget https://git.openslx.org/openslx-ng/mltk.git/plain/core/modules/run-virt/data/opt/openslx/vmchooser/data/linux/vm_installer 
 +sudo bash vm_installer 
 +</code>
  
 === Auflösungsanpassung === === Auflösungsanpassung ===
Zeile 160: Zeile 215:
 Das vom 'openslx-resolution.service'-Dienst gestartete Skript resolution wartet eine gewisse Zeit auf den X-Server, paßt dessen Auflösung an und prüft noch eine Weile, ob nach dem Userlogin (etwa von Seiten einer Desktopumgebung) evtl. eine andere, unerwünschte Auflösung gesetzt wird. Diese wird dann korrigiert. Das vom 'openslx-resolution.service'-Dienst gestartete Skript resolution wartet eine gewisse Zeit auf den X-Server, paßt dessen Auflösung an und prüft noch eine Weile, ob nach dem Userlogin (etwa von Seiten einer Desktopumgebung) evtl. eine andere, unerwünschte Auflösung gesetzt wird. Diese wird dann korrigiert.
   * Anmerkung: IPv6 kann stören. Deaktivieren Sie IPv6 testweise.   * Anmerkung: IPv6 kann stören. Deaktivieren Sie IPv6 testweise.
-  * Sollte die vom 'openslx-resolution.service'-Dienst korrekt eingestellte Auflösung sofort zurückgestellt werden, läuft vermutlich im Hintergrund ein Dienst der betreffenden Oberfläche((Der KDE-Hintergrunddienst kscreen_backend_launcher wird von der neuen Skriptversion Skript erkannt und beendet)). +  * Sollte die vom 'openslx-resolution.service'-Dienst korrekt eingestellte Auflösung sofort zurückgestellt werden, läuft vermutlich im Hintergrund ein Dienst der betreffenden Oberfläche((Der KDE-Hintergrunddienst kscreen_backend_launcher wird von der neuen Skriptversion Skript erkannt und beendet))
 +  * Wayland kann derzeit noch nicht unterstützt werden, daher ist X empfehlenswert.
  
 === Native Einbindung Netzlaufwerke === === Native Einbindung Netzlaufwerke ===
Drucken/exportieren