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