Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
client:linux_in_vms [2017/06/29 16:56 CEST] – [Aktualisierte Skripte per Konfigmodul] chr | client:linux_in_vms [2024/01/31 14:31 CET] (aktuell) – [Autologin] sddm: Session mit angeben simon | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Linux in virtuellen Maschinen ====== | ====== Linux in virtuellen Maschinen ====== | ||
- | ===== Drucken ===== | + | Wie bei den Windows-VMs empfehlen wir, unsere bereitgestellte Linux-Vorlage aus dem öffentlichen Austausch zu verwenden. Diese ist für den Poolbetrieb vorbereitet und muss nur noch um die von Ihnen benötigte Software erweitert werden. |
- | Bitte vergleichen | + | Falls Sie dennoch eine eigene |
- | ===== Hilfsskripte ===== | ||
- | Die für Linux vorhandenen Skripte sind innerhalb per Poolsystem gebooteter VMs auf dem zweiten Floppylaufwerk (/dev/fd1) nach dem Mounten im Unterverzeichnis ' | + | ===== Poolumfeld ===== |
- | Händisches Mounten (es wird angenommen, /mnt sei leer, Rootrechte erforderlich): | + | Im Poolumfeld sind Dinge wie Abschalten, Sperren, Userwechsel |
- | < | + | |
- | … anschließend finden Sie die Skripte unter / | + | |
- | Die Hilfsskripte beziehen ihre Informationen aus den im Grundverzeichnis der Pseudofloppy befindlichen Dateien openslx.ini und shares.dat. Die Datei HOSTRES.TXT wird nur noch aus Kompatibilitätsgründen eine Weile mitgeführt. Stützen Sie sich nicht auf HOSTRES.TXT, | + | ==== Autologin ==== |
- | ==== Automatische Anpassung der Auflösung ==== | + | Da die Authentifizierung in den Pools bereits vorher erfolgt, ist anzuraten, die VM-interne Userkennung direkt anzumelden (Autologin). Dies ist je nach Distribution, |
- | Damit sich die Auflösung innerhalb von bwLehrpool automatisch anpassen kann, muss ein entsprechendes Skript automatisch bei der Anmeldung ausgeführt werden, welches die optimale Auflösung des verwendeten Bildschirms ermittelt und diese Auflösung anschließend setzt. Bei den Vorlagen für Windows-VMs ist dafür beispielswiese die ' | + | <note tip>Es ist empfehlenswert, als Userkennung „student“ mit Paßwort „student“ zu verwenden. Die Linuxskripte erwarten diesen Usernamen.</ |
- | Zur Auflösungsanpassung stehen bisher zwei Möglichkeiten zur Verfügung: | + | * openSuse: Setzen Sie in der Datei / |
- | * lediglich Auflösungsanpassung, | + | * KDE/sddm allgemein (Kubuntu ua.): Öffnen Sie die KDE-Systemeinstellungen, dort „Starten und Beenden“. Wählen Sie den Reiter „Erweitert“ oder (Kubuntu) den Schalter „Verhalten“. Unter „Automatisch anmelden“ kann normalerweise die Userkennung gewählt werden; wenn nicht finden Sie dort gewöhnlich versionsspezifische Hinweise. |
- | * ein Paket mit Auflösungsanpassung | + | * Ubuntu: Gehen Sie zu den Systemeinstellungen, |
- | === resolution_standalone === | + | Falls diese Hinweise nicht zielführend sind, können Sie noch die Standardmethoden für den jeweiligen Displaymanager probieren: |
- | Ziehen Sie das Skript resolution_standalone entweder von der Pseudodiskette /dev/fd1 (s.o.) einer gestarteten VM, direkt per git((Direkt nach / | + | === Generisch sddm === |
- | Das weitere Vorgehen ist sehr stark von Ihrer Distribution anhängig. Der übliche Weg((Darüber läßt sich natürlich trefflich streiten. Hier wurde der Weg mit root-Rechten und etwas Gewalt begangen, um user-unabhängig beim X-Start bzw. X-Ende zu agieren.)) beim X-Start wäre über Xsetup bzw. bei X-Ende Xreset. Bedauerlicherweise ist nicht nur der Pfad zu Xsetup distributionsabhängig, | + | Hängen Sie - wenn Eintrag nicht vorhanden, ansonsten editieren |
- | === openSuse (13.2) === | + | < |
+ | User=student | ||
+ | Session=plasma.desktop | ||
+ | </ | ||
+ | Wenn Sie die Option **Session** nicht mit angeben, wird im Normalfall eine leere Session gestartet ( = schwarzer Bildschirm). Gültige Sessions sehen Sie im Verzeichnis **/ | ||
- | Bereits eingebunden. | + | === Generisch lightdm === |
- | === Ubuntu und Derivate | + | Fügen Sie an die Datei / |
+ | < | ||
+ | autologin-user=student | ||
+ | autologin-user-timeout=0 | ||
+ | </ | ||
+ | |||
+ | === Generisch gdm3 === | ||
+ | |||
+ | Hängen Sie an / | ||
+ | < | ||
+ | AutomaticLogin = student | ||
+ | </ | ||
- | Einige Versionen liefern lightdm aus, leider mit mangelhafter Konfiguration((Bug ist Ubuntu bekannt)). Prüfen Sie daher, ob die Datei '/ | + | === Generisch |
+ | Wenn Ihr Displaymanager die Datei / | ||
< | < | ||
- | [SeatDefaults] | + | DISPLAYMANAGER_AUTOLOGIN="student" |
- | autologin-user=student | + | </code> |
- | session-setup-script=/etc/ | + | ==== Unerwünschte UI-Funktionen ==== |
- | session-cleanup-script=/ | + | |
- | </ | + | |
- | === Linux Mint === | + | Hier schlagen hauptsächlich der Abmelde-Button zu Buche, daneben auch Suspend-Modi, |
+ | |||
+ | === Abmelden-Button | ||
+ | |||
+ | == 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“. | ||
+ | |||
+ | Das Deaktivieren des Abmelden-Buttons sollte eigentlich mit Polkit funktionieren, | ||
+ | |||
+ | <code bash> | ||
+ | #!/bin/sh | ||
+ | sudo -n poweroff | ||
+ | </ | ||
- | Linux Mint nutzt mdm. Die zu prüfende Datei wäre in diesem Fall '/ | + | Vergessen Sie anschließend nicht, das Skript mit ‚chmod +x [Skriptname]‘ ausführbar zu machen. Damit es funktioniert, |
< | < | ||
- | [daemon] | + | student ALL=(ALL) NOPASSWD: / |
- | AutomaticLoginEnable=true | + | |
- | AutomaticLogin=student | + | |
</ | </ | ||
- | Bedauerlicherweise entspricht der mdm nach Auskunft der Mint-Entwickler einem älteren gdm und hat wie dieser seine Mucken. Ein PreSessionScriptDir (Default:/ | + | Anschließend löst ein Druck auf den Abmelden-Knopf einen Shutdown |
- | === Xsetup | + | == lightdm |
+ | |||
+ | Hängen Sie in der / | ||
+ | |||
+ | === Sperren / Benutzerwechsel / Neue Session starten === | ||
+ | |||
+ | == KDE == | ||
+ | |||
+ | Fügen Sie der Datei [/ | ||
- | Editieren Sie die Datei '/ | ||
< | < | ||
- | #!/bin/sh | + | [KDE Action Restrictions][$i] |
- | /usr/ | + | action/lock_screen=false |
+ | action/switch_user=false | ||
+ | action/start_new_session=false | ||
</ | </ | ||
- | <note important> | + | === Standby-Modi (Suspend/Hibernate) === |
- | Danach sollte sich die Auflösung in den Poolräumen automatisch anpassen. | + | Erstellen Sie im Verzeichnis / |
+ | < | ||
+ | polkit.addRule(function(action, | ||
+ | if (action.id == " | ||
+ | action.id == " | ||
+ | action.id == " | ||
+ | action.id == " | ||
+ | { | ||
+ | return polkit.Result.NO; | ||
+ | } | ||
+ | }); | ||
+ | </ | ||
- | ==== Paket Auflösungsanpassung, native Netzlaufwerke ==== | + | Sollte obiges nicht funktionieren, können Sie folgende Brutalinski-Methode testen: Suchen Sie im Verzeichnisse / |
- | Es steht weiterhin eine noch etwas in Entwicklung befindliche | + | < |
+ | cd / | ||
+ | grep -r ' | ||
+ | </ | ||
+ | |||
+ | 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 „< | ||
+ | |||
+ | == grub, systemd == | ||
+ | |||
+ | Ein | ||
+ | < | ||
+ | sollte unerwünschte systemd-Targets (sleep, suspend, hibernate) deaktivieren. Eventuell ist auch empfehlenswert, | ||
+ | |||
+ | ==== Automatische Updates ==== | ||
+ | |||
+ | Automatische Updates ergeben im Poolumfeld natürlich ebenfalls keinen Sinn. Als Faustregel gilt, alles zu deaktivieren oder zu entfernen, was automatische Updates auslösen kann. Dies ist je nach Distribution durchaus unterschiedlich, | ||
+ | |||
+ | * Deaktivieren Sie automatische Updates womöglich auf Systemebene((Debian/ | ||
+ | * Prüfen Sie evtl. crontabs auf zeitgesteuerte Updates. | ||
+ | * Deinstallieren Sie packagekitd. | ||
+ | * Wenn eine komplette Deinstallation (z.B. packagekit unter (K)ubuntu) nicht möglich ist, deinstallieren Sie lästige ' | ||
+ | |||
+ | === Ubuntu === | ||
+ | |||
+ | Ubuntu ist bezüglich automatischer Updates besonders nervig, da eine Vielzahl von Mechanismen im System verankert ist. Deinstalliert werden sollten update-notifier, | ||
+ | |||
+ | Das Verzeichnis / | ||
+ | |||
+ | < | ||
+ | APT:: | ||
+ | APT:: | ||
+ | APT:: | ||
+ | APT:: | ||
+ | </ | ||
+ | |||
+ | Da die Dateien in / | ||
+ | < | ||
+ | APT:: | ||
+ | </ | ||
+ | anzulegen. | ||
+ | |||
+ | Darüber hinaus ist es empfehlenswert, | ||
+ | < | ||
+ | systemctl mask apt-daily-upgrade.timer | ||
+ | systemctl mask apt-daily.timer | ||
+ | systemctl mask apt-news.service | ||
+ | systemctl mask esm-cache.service | ||
+ | </ | ||
+ | |||
+ | Ein letztes besonders lästiges Popup kann durch Deinstallation der Pakete | ||
+ | < | ||
+ | dpkg -P gnome-software-plugin-snap gnome-software ubuntu-software | ||
+ | </ | ||
+ | verhindert werden, wobei es zweifellos eleganter wäre, das verantwortliche Plugin zu identifizieren. | ||
+ | ===== Drucken ===== | ||
+ | |||
+ | Bitte vergleichen Sie hierzu [[drucken_in_bwlehrpool# | ||
+ | |||
+ | ===== Hilfsskripte ===== | ||
+ | |||
+ | Analog zur " | ||
+ | * die automatische Anpassung der Auflösung, | ||
+ | * Einbindung von Netzlaufwerken (Homeverzeichnis und weitere Laufwerke), | ||
+ | * ggf. Ausführung vorgegebener Startskripte. | ||
+ | |||
+ | Das Skript ist im Poolbetrieb auf dem zweiten Floppylaufwerk (/dev/fd1) nach dem Mounten unter / | ||
+ | |||
+ | Händisches Mounten aus einer im Poolsystem gebooteten VM (es wird angenommen, /mnt sei leer, Rootrechte erforderlich): | ||
+ | < | ||
+ | … anschließend finden Sie die Skripte unter /mnt/linux und können diese, wenn gewünscht, umkopieren. Bitte lesen Sie in jedem Fall die mitgelieferte Datei linux/ | ||
+ | |||
+ | Die Hilfsskripte beziehen ihre Informationen aus den im Grundverzeichnis der Pseudofloppy befindlichen Dateien openslx.ini und shares.dat. Die Datei HOSTRES.TXT wird nur noch aus Kompatibilitätsgründen eine Weile mitgeführt. Stützen Sie sich daher nicht auf HOSTRES.TXT, | ||
+ | |||
+ | Damit sich die Auflösung innerhalb von bwLehrpool automatisch anpassen kann, muss ein entsprechendes Skript automatisch bei der Anmeldung ausgeführt werden, welches die optimale Auflösung des verwendeten Bildschirms ermittelt und diese Auflösung anschließend setzt. Bei den Vorlagen für Windows-VMs ist dafür beispielswiese die ' | ||
+ | |||
+ | Zur Auflösungsanpassung stehen bisher zwei Möglichkeiten zur Verfügung: | ||
+ | * ein Paket mit Auflösungsanpassung und nativem (innerhalb einer Linux-VM) Einhängen von Netzlaufwerken, | ||
+ | * ein hauptsächlich zu Debugzwecken verwendetes Skript „resolution_standalone“ lediglich zur Auflösungsanpassung, | ||
+ | |||
+ | <note important> | ||
+ | |||
+ | |||
+ | ==== Paket Auflösungsanpassung und Netzlaufwerke ==== | ||
+ | |||
+ | Es steht weiterhin eine Paketlösung zur Verfügung, die sowohl für die automatische Auflösungsanpassung als auch für die native Einbindung der Netzlaufwerke sorgt. Die hierzu verwendeten Skripte werden zur VM-Laufzeit von der Pseudofloppy nachgeladen; | ||
Der Ablauf stellt sich in diesem Fall wie folgt dar: | Der Ablauf stellt sich in diesem Fall wie folgt dar: | ||
- | * Das Skript ' | + | * Das Skript ' |
- | Dies sollte unter den derzeit | + | Dies sollte unter den derzeit |
+ | |||
+ | Also z.B. innerhalb der VM: | ||
+ | |||
+ | < | ||
+ | wget https:// | ||
+ | sudo bash vm_installer | ||
+ | </ | ||
=== Auflösungsanpassung === | === Auflösungsanpassung === | ||
- | Das 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 und korrigiert | + | Das vom ' |
+ | * Anmerkung: IPv6 kann stören. Deaktivieren Sie IPv6 testweise. | ||
+ | * Sollte die vom ' | ||
+ | * Wayland kann derzeit noch nicht unterstützt werden, daher ist X empfehlenswert. | ||
=== Native Einbindung Netzlaufwerke === | === Native Einbindung Netzlaufwerke === | ||
- | Netzlaufwerke (Home und ggf. gemeinsame Netzlaufwerke) | + | Netzlaufwerke (Home und ggf. gemeinsame Netzlaufwerke) |
<note tip>Sie können überprüfen, | <note tip>Sie können überprüfen, | ||
Zeile 92: | Zeile 228: | ||
* 3 = VMWare-shared folder nutzen. | * 3 = VMWare-shared folder nutzen. | ||
Bitte beachten Sie, daß Sie für den VMWare-shared folder-Mechanismus entweder die originalen VMWare-Tools benötigen, oder im Falle der open-vm-tools ein hgfs-Kernelmodul kompilieren müssen! | Bitte beachten Sie, daß Sie für den VMWare-shared folder-Mechanismus entweder die originalen VMWare-Tools benötigen, oder im Falle der open-vm-tools ein hgfs-Kernelmodul kompilieren müssen! | ||
+ | |||
+ | Die Einstellung des " | ||
</ | </ | ||
- | ==== Aktualisierte Skripte per Konfigmodul ==== | + | <note important> |
- | + | ||
- | Wenn Sie die in Ihrer Minilinux-Version enthaltenen | + | |
- | + | ||
- | * Legen Sie in irgendeinem Unterverzeichnis folgende Verzeichnisstruktur an: opt/ | + | |
- | * Kopieren Sie das zu überlagernde Skript in das Unterverzeichnis ./ | + | |
- | * Falls Sie eine der von mnt_shares oder umnt_shares nachgeladenen include-Dateien ändern wollen, erzeugen | + | |
- | * Packen Sie die Änderungen ein: < | + | |
- | * Es ist eventuell ratsam, eine eigene Systemkonfiguration der bestehenden nachzubauen (mit gleichen Modulen bestückt), dieser das generische Modul hinzuzufügen und diese abgeleitete Systemkonfiguration per Satellitenserver-Raumkonfiguration zum Testen nur auf ausgewählten Rechnern / in ausgewählten Räumen starten zu lassen. Mehr dazu finden Sie im [[satellite: | + | |
- | + | ||
- | <note tip>Sie finden ein solches generisches-Modul-Archiv übrigens [[https://www.bwlehrpool.de/lib/ | + | |
- | <note important> | ||
===== bwLehrpool-Suite-Startskript ===== | ===== bwLehrpool-Suite-Startskript ===== |