Huhu,
nee, so ist’s nicht.
Standardmäßig gibt es bei Samba die Freigabe für Heimatverzeichnisse der Benutzer. Diese ist in der smd.conf
der Abschnitt [homes]
. Dies ist eine eingebaute Freigabe, die nicht in der Univention Management Console sichtbar ist. Diese Freigabe sorgt dafür, dass z.B. ich mich auf den Server auf \\fileserver\mbunkus
verbinden kann. Der dazugehörige Linux-Pfad ist ~mbunkus
, also das Linux-Heimatverzeichnis von mbunkus
, was im Regelfall /home/mbunkus
ist.
Diese eingebaute Freigabe kann man abschalten, indem man die UCR-Variable samba/share/home
auf no
setzt (Standard: yes
).
Bisher ist dies von den Windows-Einstellungen des Benutzers komplett unabhängig.
Jetzt kommen wir zu den Einstellungen in der UMC beim Benutzer im Tab Konto
, Abschnitt Windows
.
Die beiden Punkte Laufwerk für das Windows-Heimatverzeichnis
und Windows-Heimatverzeichnis
sind zusammen zu betrachten. Sie sorgen dafür, dass ein UNC-Pfad unter Windows als Laufwerksbuchstabe eingebunden wird. Beispielsweise könnte man H:
als Laufwerk nutzen und dort \\fileserver\mbunkus
als UNC-Pfad einbinden lassen. Die im UNC benannte Freigabe muss natürlich existieren; für mein Beispiel tut sie das bereits in der Standardeinstellung (siehe oben).
Das Anmeldeskript
ist ein UNC-Pfad zu einem Script, das beim Logon ausgeführt wird, z.B. \\master\sysvol\mbu-test.intranet\scripts\mylogon.bat
Die sysvol
-Share bietet sich an, da sie in einem Samba4-AD-Kontext eh immer existieren muss. Der dazugehörige Linux-Pfad ist /var/lib/samba/sysvol/<domain>/scripts
.
Nun kommen wir zum Profilverzeichnis
. Hier wird ein UNC-Pfad eingetragen, unter dem das Roaming Profile des Users gespeichert wird. Je nach Betriebssystem wird an diesen Pfad noch etwas angehängt, z.B. .V2
bei Windows 10. Beispiel: \\fileserver\mbunkus\windows-profiles\default
Auch hier muss man darauf achten, dass es die Freigabe auf dem Server (im Beispiel also mbunkus
auf fileserver
) auch wirklich gibt. Für die Heimatverzeichnisfreigabe ist das, wie oben beschrieben, standardmäßig der Fall.
Möchte man seine Windows-Profile aber Linux-seitig nicht in /home/<username>/windows-profiles
speichern, sondern z.B. in /srv/windows-profiles/<username>
, so muss man selber in der UMC erst einmal eine Windows-Dateifreigabe für /srv/windows-profiles
anlegen, z.B. mit dem Namen windows-profiles
. Anschließend schreibt man z.B. \\fileserver\windows-profiles\<username>\default
in den Windows profile path
. Natürlich muss man nun dafür sorgen, dass das Linux-Verzeichnis /srv/windows-profiles/<username>
auch wirklich angelegt wird, denn das geschieht nicht automatisch (für die Heimatverzeichnisse hingegen schon — was ein großer Vorteil ist, die Profile im Heimatverzeichnis zu speichern!).
All das hat nichts mit den Einstellungen Heimatverzeichnisfreigabe
und Pfad zum Heimatverzeichnis
im Abschnitt POSIX (Linux/Unix)
zu tun! Wirklich gar nichts!
Die Daten im Abschnitt POSIX (Linux/Unix)
sind dafür da, das Heimatverzeichnis eines Users von einem Linux-Server auf einem anderen Linux-Server via NFS einzubinden. Wenn also z.B. das Heimatverzeichnis von mbunkus
auf fileserver
in /home/mbunkus
zu finden ist, und ich möchte, dass der gleiche Inhalt auch beim SSH-Login auf databaseserver
in /home/mbunkus
vorhanden ist, so muss ich:
- in der UMC eine NFS-Freigabe für
/home
auf fileserver
anlegen,
- den Benutzer
mbunkus
so konfigurieren, dass bei der Heimatverzeichnisfreigabe
in POSIX (Linux/Unix)
die Freigabe home (/home auf fileserver)
ausgewählt ist und
- beim Benutzer
mbunkus
der Pfad zum Heimatverzeichnis
ebenfalls mbunkus
lautet (dieser Pfad ist relativ zum Pfad der in Schritt 2 ausgewählten Freigabe zu sehen, also /home
+ mbunkus
= /home/mbunkus
).
Ich interpretiere Ihre Aussagen so, dass Sie die Windows-Profile unabhängig vom Linux-Heimatverzeichnis speichern wollen. Also müssten Sie:
- Eine Samba-Freigabe für die Profile anlegen (hatte ich oben schon geschrieben); nennen wir sie
windows-profiles
, Pfad ist in der Freigabe /var/shares/users
,
- Eine NFS-Freigabe für die Linux-Heimatverzeichnisse anlegen; nennen wir diese
linux-home
mit Pfad /home
,
- Den Benutzer wie folgt konfigurieren:
-
Windows
:
-
Laufwerk für das Windows-Heimatverzeichnis
: H:
(optional, nur dann, wenn von Windows aus ebenfalls Zugriff auf das Linux-Heimatverzeichnis vorhanden sein soll, nur zusammen mit 2.)
-
Windows-Heimatverzeichnis
: \\server\<username>
(optional, nur dann, wenn von Windows aus ebenfalls Zugriff auf das Linux-Heimatverzeichnis vorhanden sein soll, nur zusammen mit 1.)
-
Profilverzeichnis
: \\server\windows-profiles\<username>\default
-
POSIX (Linux/Unix)
:
-
UNIX-Heimatverzeichnis
: weiterhin /home/<username>
-
Heimatverzeichnisfreigabe
: linux-home (/home auf server)
-
Pfad zum Heimatverzeichnis
: mbunkus
Ob das via NFS auch unter Ubuntu automatisch funktioniert, weiß ich nicht, da ich das Ubuntu-Integrationspaket von Univention bisher noch nicht ausprobiert habe.
Noch ein Hinweis zu den Windows-Profilverzeichnissen. Ich hatte oben geschrieben, dass die Heimatverzeichnisse automatisch angelegt werden (via PAM), die externen WIndows-Profilverzeichnisse aber nicht. Zum Einen wird beim Anlegen des Heimatverzeichnisses ein Basisbestand an Dateien in Verzeichnissen hinterlegt. Diese sind in /etc/univention/skel
zu finden. Dazu gehören z.B. auch windows-profiles
, auch wenn man die gar nicht im Heimatverzeichnis gespeichert haben möchte. Will man das verhindern, dann diese aus /etc/univention/skel
entfernen.
Weiterhin kann man über PAM durchaus auch dafür sorgen, dass neben /home/<username>
auch andere Verzeichnisse automatisch angelegt werden, z.B. das Profilverzeichnis in /var/shares/users/<username>
. Das geht aber echt ein Stück zu weit; Google hilft. Leider erfordert das das Ändern von PAM-Konfigurationsdateien, die aus Univention-Vorlagen erzeugt werden; das muss man bei Updates dann immer gesondert betrachten und migrieren.
Gruß
mosu