Gastsitzung anpassen
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Ubuntu 20.04 Focal Fossa
Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Die Gastsitzung unter LightDM kann vom Verwalter des Rechners nach seinen Vorstellungen angepasst werden. Ein paar Kniffe zeigt dieser Artikel.
Hinweis:
Unter Ubuntu MATE 22.04 wird das Vorlagenverzeichnis /etc/guest-session/skel/ ignoriert.
Vorhandenes Benutzerkonto als Muster¶
Im Folgenden wird beschrieben, wie man diese Gastsitzung anpassen kann. Generell werden die Einstellungen, die das Verhalten der Gastsitzung beeinflussen, im Ordner /etc/guest-session/skel/ gespeichert. Man kann ein bestehendes Benutzerkonto, das als Vorlage für die Gastsitzung dienen soll, mit Root-Rechten [1] in diesen Ordner kopieren. Im Terminal [3] dienen dazu folgende Befehle:
Wenn Ordner noch nicht vorhanden:
sudo mkdir -p /etc/guest-session/skel
Man sollte vorzugsweise den Ordner /etc/guest-session/skel als Ziel benutzen und nicht das systemweite Verzeichnis /etc/skel, weil letzteres als Vorlage für jeden neu angelegten User genutzt wird.
sudo cp -r /home/BENUTZERNAME/* /etc/guest-session/skel
Wenn man sich nun als Gast anmeldet, sollte das Konto genau so eingerichtet sein wie das des ursprünglichen Benutzers BENUTZERNAME
. Möchte man absolut identische Einstellungen haben, kann der folgende Befehl nützlich sein, der auch Versteckte Dateien mitkopiert. Aber Vorsicht: auf diese Weise gelangen unter Umständen persönliche Daten (Kennwörter und vertrauliche Informationen) in falsche Hände!
sudo cp -r /home/BENUTZERNAME/. /etc/guest-session/skel
Einzelne Einstellungen ändern¶
Möchte man nicht die gesamten Einstellungen eines anderen Benutzers übernehmen, kann man auch gezielt einzelne Dateien nach /etc/guest-session/skel/ kopieren.
Interessant ist dabei bswp. die Datei .config/gnome-initial-setup-done, ohne die der Gast sonst bei jeder Nutzung durch die Einrichtung geführt wird. Ähnliches gilt für .cache/ubuntu-report und ggf. .local/share/gnome-shell/lock-warning-shown.
Desktop-Hintergrund¶
In den Beispielen wird das Hintergrundbild unter GNOME und Unity geändert. Es gibt u. a. folgende Möglichkeiten
a) Nutzen des Startskripts /etc/guest-session/auto.sh der Gastsitung
durch hinzufügen von
#!/bin/bash gsettings set org.gnome.desktop.background picture-uri "'file:///usr/share/backgrounds/guest.jpg'"
b) einen Starter im /etc/guest-session/.config/autostart/
[Desktop Entry] Name=Hintergund Type=Application Terminal=false Exec=gsettings set org.gnome.desktop.background picture-uri "'file:///usr/share/backgrounds/guest.jpg'" Autostart-enabled=true Autostart-Delay=2
c) Für GTK-basierte Desktopumgebungen kann auch eine systemweite Einstellung eines Hintergrundbildes für alle neuen Benutzer eingerichtet werden: gnome.org: Benutzerdefinierte Vorgabewerte für Systemeinstellungen
Programm-Einstellungen¶
Möchte man z.B. in Firefox gewisse Einstellungen (Lesezeichen etc.) speichern, ist es am einfachsten, die Firefox-Einstellungen eines anderen Kontos zu verwenden. Man richtet also den Firefox nach Belieben ein und kopiert dann das Verzeichnis /home/BENUTZERNAME/.mozilla/ mit Root-Rechten nach /etc/guest-session/skel/:
sudo cp -r /home/BENUTZERNAME/.mozilla/ /etc/guest-session/skel/
Die Firefox-Einstellungen werden erst beim Beenden von Firefox gespeichert. Daher wird folgende Reihenfolge empfohlen:
Firefox einrichten
Firefox beenden
Einstellungen kopieren
Autostart-Programme¶
Um in der Gastsitzung automatisch Programme wie z.B. Caffeine zu starten, ist es wiederum am einfachsten, bei einem bestehenden Konto das gewünschte Programm als Autostart-Programm einzurichten. Man öffnet hierzu "Startprogramme" und klickt auf "Hinzufügen". Für Caffeine gibt man in den Feldern "Name" und "Befehl" jeweils caffeine
ein und bestätigt mit "Hinzufügen".
Nun befindet sich im Ordner /home/BENUTZERNAME/.config/autostart/ eine Datei caffeine.desktop. Diese Datei kopiert man mit Root-Rechten [1] nach /etc/guest-session/skel/.config/autostart/ (dieser Ordner muss zuerst angelegt werden):
sudo mkdir -p /etc/guest-session/skel/.config/autostart/ sudo cp /home/BENUTZERNAME/.config/autostart/caffeine.desktop /etc/guest-session/skel/.config/autostart/
Fazit: Auf diese Weise können sämtliche Einstellungen und Dateien für die Gastsitzung eingerichtet werden.
Einstellungen und Dokumente speichern¶
Möchte man Dokumente oder Einstellungen, die in der Gastsitzung gemacht werden, auch nach dem nächsten Anmelden zur Verfügung haben, kann man in die Datei /usr/sbin/guest-account einen Kopierbefehl einfügen. Der erste Teil der Datei (unter add-acount ()
) wird beim Anmelden ausgeführt, der zweite Teil (unter remove-account ()
) beim Abmelden. Um Einstellungen zu speichern, ist nur der zweite Teil interessant.
Allgemein kopiert man Dateien aus dem temporären Homeverzeichnis des Gastbenutzers in den Ordner /etc/guest-session/skel/, von wo sie dann beim nächsten Anmelden wieder in das Homeverzeichnis kopiert werden.
Um zum Beispiel die Firefox-Einstellungen zu speichern, öffnet man die Datei /usr/sbin/guest-account mit Root-Rechten und fügt die folgende Befehlszeile unter dem Block # kill all remaining processes
ein.
cp -r "${GUEST_HOME}"/.mozilla/* /etc/guest-session/skel/.mozilla/
Es sollte dann etwa so aussehen:
… GUEST_HOME=$(echo ${PWENT} | cut -f6 -d:) # kill all remaining processes if [ -x /bin/loginctl ] || [ -x /usr/bin/loginctl ]; then loginctl --signal=9 kill-user ${GUEST_USER} >/dev/null || true else while ps h -u ${GUEST_USER} >/dev/null do killall -9 -u ${GUEST_USER} || true sleep 0.2; done fi cp -r "${GUEST_HOME}"/.mozilla/* /etc/guest-session/skel/.mozilla/ if [ ${GUEST_HOME} = ${GUEST_HOME#/tmp/} ]; then echo "Warning: home directory ${GUEST_HOME} is not in /tmp/. It won't be rem oved." else …
Auf diese Weise können selbstverständlich alle Verzeichnisse oder Dokumente gesichert werden.
Links¶
Displaymanager Übersichtsartikel