Skip to content
This repository has been archived by the owner on Nov 19, 2023. It is now read-only.

Hintergrund::04 Profilanpassungen und Einstellungen im Serverhome

Frank Schiebel edited this page May 22, 2019 · 13 revisions

Hintergrund: Profil

Um das vom Vorlagenbenutzer kopierte Profil weiter anzupassen, werden wie in Boot und Anmeldevorgang beschrieben, die Skripte im Verzeichnis /etc/linuxmuster-client/login.d in lexikalischer Reihenfolge gesourced und abgearbeitet.

  • Alle zu berücksichtigenden Skripte müssen die Dateiendung .sh haben
  • Die Ausführung der Skripte kann in jedem Skript mit return unterbrochen werden, wenn eine Bedingung gegeben ist, unter der die folgenden Skripte nicht mehr ausgeführt werden sollen. So wird beispielsweise in 00_userinfo.sh die weitere Ausführug aller Skripte abgebrochen, wenn sich der $template_user anmeldet.

Mitgelieferte Skripte

00_userinfo.sh

Bei bestehender Verbindung zum AD wird eine Datei /tmp/$USER erzeugt, in der alle im AD vorhandenen Informationen eines Benutzers enthalten sind.

Wenn sich der Profilbenutzer anmeldet, passieren zwei Dinge: Die Proxy Variablen werden gelöscht und die Abarbeitung aller weiteren Skripte findet nicht statt.

01_environment.sh

List die in 00_userinfo.sh erzeugte Datei /tmp/$USER ein (wenn sie exisiert) und initialisiert Umgebungsvariablen, auf die die folgenden Skripte zugreifen können:

  • UNIXHOME
  • SCHOOL
  • STUDENTGROUPS
  • PROJECTGROUPS
  • SHAREFOLDER="$HOME/$share_folder"
  • PGROUP
  • SROLE
  • SCHOOLDIR="/srv/samba/schools/$SCHOOL"
  • STUDENTHOMES="$SCHOOLDIR/students"
  • SHAREDIR="$SCHOOLDIR/share"
  • CLASSSHARES="$SHAREDIR/classes"
  • TEACHERSHARE="$SHAREDIR/teachers"
  • PROJECTSHARES="$SHAREDIR/projects"
  • SCHOOLSHARE="$SHAREDIR/school"

02_sharelinks.sh

Erstellt die Links auf die Shares nach den Vorgaben in der Konfigurationsdatei /etc/linuxmuster-client-adsso.conf

03_settings_folder.sh

Erstellt den Ordner für die servergespeicherten Einstellungen auf dem Serverhome des Benutzers nach der Vorgabe in der Konfigurationsdatei /etc/linuxmuster-client-adsso.conf (Variable $server_settings) .

04_mandatory_settings.sh

Hier werden alle Einstellungen, die ein Benutzer zwingend individuell in seinem Serverhome speichern soll entprechend verschoben und/oder verkinkt. Die Konfiguration für dieses Skript wird aus der Datei /etc/linuxmuster-client/userprofile.conf gelesen.

Konfigurationsdatei userprofile.conf:

# The format is:
# local-file-oder-dir:remote-file-or-dir
# .thunderbird:thunderbird
# will link 
# Home_auf_Server/Einstellungen/thunderbird to .thunderbird
.thunderbird:thunderbird
.mozilla/firefox/f01db3m6.default:firefox

05_allowed_settings.sh

In diesem Skript werden alle Einstellungen, die ein Benutzer auf dem Server hinterlegen darf ins lokale Home verlinkt, wenn sie zuvor "von Hand" auf dem Server im Einstellungverzeichnis hinterlegt wurden. Die Konfiguration für dieses Skript wird aus der Datei /etc/linuxmuster-client/allowed_userprofile.conf gelesen.

Konfigurationsdatei allowed_userprofile.conf:

# The format is:
# local-file-oder-dir:remote-file-or-dir
#
# .config/joplin-desktop:joplin-desktop
# in this case, the user can move the settings to 
# Home_auf_Server/Einstellungen/joplin-desktop
# and this will be linked back to .config/joplin-desktop
.config/evolution:evolution

06_links.sh

Dieses Skript eröffnet die Möglichkeit, nach den Vorgaben in der Konfigurationsdatei /etc/linuxmuster-client/links.conf beliebige Links zu erstellen:

Konfigurationsdatei links.conf:

#
# "HOMEDIR" wird durch das lokale Heimatverzeichnis ersetzt
# "SERVERHOME" wird durch unixHomeDirectory aus dem AD ersetzt
# "USERNAME" wird durch $USER ersetzt
#
# Durch einen weiteren Doppelpunkt getrennt kann angegeben werden, 
# ob das Linkziel erzeugt werden soll, wenn es nicht existiert.
# Mögliche Werte sind "createdir" und "createfile"

HOMEDIR/Downloads:SERVERHOME/Downloads:createdir
HOMEDIR/tmp:/tmp
HOMEDIR/myfile:/SERVERHOME/file-USERNAME:createfile

99_cleanup.sh

Löscht die Datei /tmp/$USER mit der Userinfo wieder.

Profil-Flow