| Version 15 (modified by , 13 years ago) ( diff ) |
|---|
LTSP unter Ubuntu
GConf, GSettings und DConf
GNOME speichert seine Einstellungen in einer Datenbank. Früher hieß diese Datenbank und das dazugehörige API GConf. Seit einiger Zeit wird jedoch graduell auf das neue API GSettings umgestellt. Zukünftig sollen alle Gnome-Programme ihre Einstellungen darüber speichern und auslesen. Unity tut das bereits jetzt, aber nicht alle Programme haben umgestellt.
GSettings definiert nur das API, die tatsächlichen Daten werden in einer geeigneten Datenbank abgelegt. Unter Windows landen die Daten z.B. in der Registry. Unter Linux wird als Datenbank-Backend DConf verwendet.
Gsettings hat derzeit anscheinend noch kein eigenes GUI-Tool, sondern nur ein CLI (man:gsettings), mit dem man aber recht gut umgehen kann. Wird ein GUI gewünscht, so kann man dconf-editor aus dem Paket dconf-tools verwenden und direkt auf die Datenbank zugreifen.
Systemweite Vorgaben
Da derzeit noch das alte GConf und das neue GSettings/Dconf nebeneinander benutzt werden, muss man jeweils suchen, in welcher der beiden Datenbanken das betreffende Programm seine Voreinstellungen speichert.
Das Verfahren ist dann unterschiedlich:
GConf
- Die betreffenden GConf-Schlüssel werden am besten über den grafischen gconf-editor (als root) in einen "mandatory" oder "default"-Schlüssel verwandelt.
- Das muss auf einem LtspServer geschehen, danach muss die betreffende Datenbank per "rsync-to-all-ltsp-servers" auf die anderen verteilt werden:
# rsync-to-all-ltsp-servers /etc/gconf/gconf.xml.defaults/%gconf-tree.xml # rsync-to-all-ltsp-servers /etc/gconf/gconf.xml.mandatory/%gconf-tree.xml
- Wurden Defaults geändert und sollen diese Änderung alle Nutzer einmalig "übergebraten" bekommen, muss danach der entsprechende GConf-Schlüssel der Nutzer zurückgesetzt werden. Das geschieht auf einem LtspServer mit
# for u in $(teachers) $(students); do sudo -sHu $u dbus-launch gconftool --unset /PFAD/ZUM/SCHLÜSSEL ; done
- Beispiel
- Docky-Launcherleiste aktualisieren.
Unity
In den neueren Ubuntu-Versionen wurde der Gnome-Desktop teilweise durch die Alternative Unity (entwickelt von der Ubuntu-Firma Canonical) ersetzt.
Unity-Launcher
Der Inhalt des Unity-Launchers (Programmstarter) kann über den dconf-Machanismus konfiguriert werden. Dazu auf den LtspServern
- Datei /etc/dconf/db/site.d/00_site_settings editieren
- Soll der Inhalt unveränderbar sein, auch Datei /etc/dconf/db/site.d/locks/oo_site_locks entsprechend anpassen
- (Achtung, keine Tilde-Backups der alten Dateien herumliegen lassen, die werden mit gelesen!)
- dconf update
- Wenn der Inhalt nicht gelockt sein soll, sondern die Nutzer nur den neuen Inhalt des Launchers per Default bekommen sollen, muss jetzt der entsprechende gconf-Schlüssel der Nutzer zurückgesetzt werden. Dazu als root auf einem LtspServer:
for u in $(teachers) $(students) ; do sudo -sHu $u dbus-launch gsettings reset-recursively com.canonical.Unity.Launcher ; done
Indicators
Die früheren Gnome-Notifications (systray) wurden durch ein neues Plugin-System (Indicators) ersetzt.
Hier gibt es eine (unvollständige) Liste verfügbarer Unity-Indicators: http://askubuntu.com/questions/30334/what-application-indicators-are-available
Was uns leider dringend fehlt, ist ein Indicator für CupsPykota. Dort scheint es nur die "alte" Gnome-Notofication zu geben.
Whitelisting von Gnome-Notifications
Vielleicht gibt es eine Lösung. Das Stichwort lautet "whitelisting" -- es können bestimmte Gnome-Notofications freigeschaltet werden, die dann neben den Indicators erscheinen.
Dazu muss ein dconf-Schlüssel gesetzt werden: com.canonical.Unity.Panel->systray-whitelist.
Dieser Schlüssel ist ein Array von Strings mit den Programmnamen, deren Notifikationen im Unity-Panel erscheinen dürfen. Setzt man den Schlüssel auf den Wert ['all'], so sind alle Gnome-Notifications erlaubt.
Für den aktuellen Nutzer kann der Schlüssel von der Kommandozeile aus gesetzt werden:
> gsettings set com.canonical.Unity.Panel systray-whitelist "['all']"
Alternativ geht das mit dem GUI-Tool dconf-editor, das sich im Paket dconf-tools findet.
Danach muss Unity neu gestartet werden, d.h. für Unity 3d:
> unity --replace &
bzw. Unity 2d:
> killall unity-2d-panel
Oder der Nutzer loggt sich aus und wieder ein.
Gnome
Speicherort für die Gnome-Session
Hallo Rüdiger,
ich habe endlich den Speicherort der voreingestellten Gnome-Session gefunden:
~/.dmrc
dort steht unter anderem:
[Desktop] Session=gnome-classic
Grüße
Jens
Gnome-Panel resetten
Hinweis: Mit der Unity-Oberfläche wird das Gnome-Panel nicht mehr verwendet.
Die Applets des Gnome-Panels sind leider nicht immer stabil (#28). Die einfachste Möglichkeit, Probleme damit zu beheben, ist, das Gnome-Panel komplett zu resetten. Hier ist beschrieben, wie das geht:
How to reset gnome-panel to default in Ubuntu/Gnome2
by Robert Daeley, Thu, 2006-08-31
- rm -r ~/.gconf/apps/panel or just move the folder elsewhere if you want to back it up.
- Log out of Gnome, then back in.
- There is no step 3.
Lockdown
Einige Desktop-Funktionen sollten für unsere User gesperrt werden. Früher gab es dafür Einträge in der Systemweiten GConf-Datenbank, die entweder direkt oder mithilfe des Programms "Pessulus" bearbeitet werden konnten.
GConf wird zur Zeit durch dconf ersetzt. Der Befehl gsettings ist ein einfaches Interface zur dconf-Datenbank der einzelnen Nutzer. Systemweite Werte vorzugeben ist aber etwas komplizierter. Der Prozess wird hier dokumentiert.
Dconf und seine Verwendung ist auf dieser Seite beschrieben: https://live.gnome.org/dconf/SystemAdministrators
Standardprogramme für das Öffnen von Dateien
So ändert man die systemweiten Defaultprogramme für das Öffnen bestimmter Dateityoen (z.B. Medienfiles, DVDs, etc): comment:4:ticket:282.
Display Manager
Seit einigen Versionen wurde in Ubuntu der Gnome Display Manager (gdm) durch den Light Display Manager (lightdm) ersetzt. Der Unterschied fällt nur ins Gewicht, wenn man sich direkt an einem LtspServer einloggt. An den Clients geschieht der Login über den LTSP Display Manager (ldm).
Light Display Manager (lightdm)
Die Konfiguration des lightdm (beim Einloggen direkt an den Servern) ist hier beschrieben: ubuntuwiki:LightDM#Konfiguration. Für uns interessant ist im wesentlichen die folgende Option in /etc/lightdm/lightdm.conf:
greeter-hide-users=true
Dadurch wird die Anzeiger sämtlicher Nutzer am Anmeldebildschirm unterdrückt, und die Nutzer können stattdessen ihren Loginnamen eingeben.
Weiterführende Links
Viele Informationen zu LTSP unter Ubuntu finden sich im Ubunut-Wiki: https://help.ubuntu.com/community/UbuntuLTSP.
Die Inhalte dieser Wiki-Seite erscheinen, (wo anwendbar und nicht anderweitig angegeben), unter einer Creative-Commons-Lizenz CC BY NC SA 3.0 Germany. Urheber: Dr. Rüdiger Kupper, Kepler-Gymnasium Freudenstadt.