Inhaltsverzeichnis
So genannte „Roaming Profiles“ (zu Deutsch etwa „servergespeicherte Benutzerprofile“) werden von manchen gefürchtet, von einigen gehasst, von vielen geliebt und sind ein Geschenk des Himmels für so manchen Administrator.
Roaming Profiles erlauben es einem Administrator, dem Benutzer einen konsistenten Desktop zur Verfügung stellen, wenn er sich von einer Maschine zu einer anderen bewegt. Dieses Kapitel stellt Informationen darüber zur Verfügung, wie man Roaming Profiles konfiguriert und verwaltet.
Während Roaming Profiles für manche wie das Nirvana klingen mögen, sind sie für andere ein reales und konkretes Problem. Im Speziellen die Nutzer mobiler Computer, die oft keine dauerhafte Netzwerk-Verbindung haben, sind oft besser mit rein lokalen Profilen beraten. Dieses Kapitel bietet Informationen, um dem Samba-Administrator zu helfen, mit diesen Situationen umzugehen.
Die Unterstützung für Roaming Profiles ist für Windows 9x/Me und Windows NT4/200x unterschiedlich.
Bevor wir die Konfiguration von Roaming Profiles beschreiben, ist es sinnvoll zu sehen, wie Windows 9x/Me- und Windows NT4/200x-Clients diese Eigenschaften implementieren.
Windows 9x/Me-Clients senden einen „NetUserGetInfo“-Request an den Server, um den Pfad zu den Profilen des Benutzers zu erhalten. Die Antwort hat jedoch nicht genug Platz für ein separates Feld für den Pfad der Profile, nur für die home-Freigabe des Benutzers. Das bedeutet, dass Windows 9x/Me-Profile darauf beschränkt sind, im Home-Verzeichnis des Benutzers gespeichert zu werden.
Windows NT4/200x-Clients senden einen NetSAMLogon-RPC-Request, der viele Felder enthält, inklusive eines Feldes für den Pfad der Profile des Benutzers.
Dieser Abschnitt dokumentiert, wie man Samba konfiguriert, um MS Windows-Client-Profile zu unterstützen.
Um zum Beispiel Windows NT4/200x-Clients zu unterstützen, setzen Sie Folgendes im Abschnitt [global] der Datei smb.conf:
| logon path = \\profileserver\profileshare\profilepath\%U\moreprofilepath |
Dies wird typischerweise so implementiert:
| logon path = \\%L\Profiles\%u |
wobei „%L“ in den Namen des Samba-Servers aufgelöst wird und „%u“ in den Benutzernamen.
Die Voreinstellung für diese Option ist \\%N\%U\profile, also \\sambaserver\username\profile. Der Dienst \\%N\%U wird automatisch vom [homes]-Dienst angelegt. Wenn Sie einen Samba-Server für die Profile verwenden, müssen Sie die in „logon path“ angegebene Freigabe durchsuchbar () machen. Bitte lesen Sie die Manpage für smb.conf, um mehr über die unterschiedliche Semantik von „%L“, „%N“, „%U“ und „%u“ zu erfahren.
MS Windows NT/200x-Clients trennen manchmal zwischen einzelnen Logons eine Verbindung zu einem Server nicht. Es wird empfohlen, den Meta-Dienst homes nicht als Teil des Profil-Pfads zu verwenden.
Um Windows 9x/Me-Clients zu unterstützen, müssen Sie den Parameter logon home verwenden. Samba wurde repariert, so dass net use /home nun auch funktioniert und auch auf dem Parameter logon home beruht.
Durch die Verwendung des Parameters logon home sind Sie darauf beschränkt, Windows 9x/Me-Benutzer-Profile im home-Verzeichnis des Benutzers abzulegen. Aber warten Sie! Es gibt einen Trick, den Sie benutzen können. Wenn Sie im Abschnitt [global] Ihrer smb.conf-Datei
| logon home = \\%L\%U\.profiles |
setzen, werden Ihre Windows 9x/Me-Clients pflichtbewusst ihre Profile in ein Unterverzeichnis Ihres home-Verzeichnisses namens .profiles ablegen (und sie damit verstecken).
Nicht nur das, net use /home wird aufgrund eines Features in Windows 9x/Me genauso funktionieren. Es entfernt jegliche Verzeichnis-Angaben am Ende der Angabe des home-Verzeichnisses und benutzt nur die Teile, die den Server und die Freigabe angeben. Daher sieht es für den Client so aus, als ob Sie \\%L\%U für logon home spezifiziert hätten.
Sie können Profile für Windows 9x/Me- und Windows NT4/200x-Clients unterstützen, indem Sie beide Parameter, logon home und logon path, angeben. Zum Beispiel:
| logon home = \\%L\%u\.profiles |
| logon path = \\%L\profiles\%u |
Oft wird gefragt: „Wie kann ich die Verwendung lokaler Profile erzwingen?“ oder: „Wie kann ich Roaming Profiles deaktivieren?“
Es gibt drei Arten, dies zu tun:
Ändern Sie die folgenden Settings, und ALLE Clients werden dazu gezwungen, ein lokales Profil zu verwenden: logon home und logon path.
Verwenden Sie die Microsoft Management Console gpedit.msc, um Ihre MS Windows XP- Maschine zu zwingen, nur ein lokales Profil zu verwenden. Dies verändert natürlich Registry-Settings. Der volle Pfad zu der Option ist:
Local Computer Policy\ Computer Configuration\ Administrative Templates\ System\ User Profiles\ Disable: Nur lokale Benutzer-Profile erlauben Disable: Verhindern, dass Änderungen des Roaming Profile an den Server weitergegeben werden
Klicken Sie im Start-Menü mit der rechten Maustaste auf Arbeitsplatz, wählen Sie , klicken Sie auf das Tab Benutzerprofile, wählen Sie das Profil, das Sie vom Typ auf ändern wollen, und klicken Sie auf .
Konsultieren Sie die Anleitung zur MS Windows Registry für Ihre spezifische Version von MS Windows, um mehr Informationen dazu zu erhalten, welche Registrierungsschlüssel zu ändern sind, um die Verwendung lokaler Benutzer-Profile zu erzwingen.
Die Besonderheiten, wie man ein lokales Profil in ein Roaming Profil umwandelt oder umgekehrt, variieren je nach der Version von MS Windows, die Sie einsetzen. Konsultieren Sie auch das Microsoft MS Windows Resource Kit für besondere Informationen.
Wenn sich ein Benutzer zum ersten Mal in Windows 9x anmeldet, werden die Datei user.DAT erstellt sowie die Verzeicnisse Startmenü, Desktop, Programme und Netzwerkumgebung. Diese Verzeichnisse und ihre Inhalte werden bei jedem folgenden Login mit den lokalen Versionen in c:\windows\profiles\username vereint, wobei immer die jeweils neuesten Versionen verwendet werden. Sie werden folgende [global]-Optionen verwenden müssen: preserve case = yes, short preserve case = yes und case sensitive = no, um Großbuchstaben in Shortcuts in einem der Profil-Verzeichnisse zu erhalten.
Die Datei user.DAT enthält alle Benutzereinstellungen. Wenn Sie einen Satz von Einstellungen erzwingen wollen, benennen Sie die Datei user.DAT in user.MAN um und verweigern den Schreibzugriff auf diese Datei.
Gehen Sie auf der Windows 9x/Me-Maschine auf -> , und wählen Sie den Tab Benutzer-Profile. Wählen Sie das erforderliche Level von Roaming-Einstellungen. Drücken Sie , aber erlauben Sie keinen Reboot.
Dann gehen Sie auf ->, -> Einstellungen. Wählen Sie An NT Domäne anmelden. Dann stellen Sie sicher, dass das Primary Logon Client for Microsoft Networks ist. Drücken Sie , und erlauben Sie diesmal den Reboot.
In Windows 9x/Me werden die Profile vom Primary Logon geladen. Wenn Sie das Primary Logon auf „Client for Novell Networks“ gesetzt haben, werden die Profile und Logon-Skripten vom Novell-Server geladen. Wenn Sie das Primary Logon auf „Windows Logon“ gesetzt haben, werden die Profile von der lokalen Maschine geladen, was ein wenig dem Prinzip der Roaming Profiles widerspricht, wie es scheint!
Sie werden nun sehen, dass der MS-Netzwerk-Login-Dialog [Benutzer, Passwort, Domäne] statt nur [Benutzer, Passwort] enthält. Geben Sie den Domänen-Namen des Samba-Servers (oder den einer anderen existierenden Domäne, aber denken Sie daran, dass der Benutzer an dieser Domäne angemeldet wird und die Profile aus dieser Domäne geladen werden, wenn dieser Domänen-Anmelde-Server es unterstützt), den Benutzernamen und das Passwort des Benutzers ein.
Sobald der Benutzer erfolgreich überprüft wurde, wird die Windows 9x/Me-Maschine Ihnen Folgendes anzeigen: The user has not logged on before und Sie Folgendes fragen: Do you wish to save the user's preferences? Wählen Sie .
Sobald der Windows 9x/Me-Client den Desktop hergestellt hat, sollte es Ihnen möglich sein, den Inhalt des im Parameter logon path angegebenen Verzeichnisses auf dem Samba-Server zu prüfen und festzustellen, dass die Ordner Desktop, Startmenü, Programme und Netzwerkumgebung angelegt worden sind.
Diese Ordner werden lokal auf dem Client gepuffert (Cache) und erfahren ein Update, wenn sich der Benutzer abmeldet (wenn Sie sie dann nicht schon auf read-only gesetzt haben). Sie werden sehen, dass der Client, wenn der Benutzer weitere Ordner oder Verknüpfungen anlegt, die heruntergeladenen Profil-Inhalte mit dem Inhalt des lokalen Profil-Ordners zusammenfügt, wozu er die neuesten Ordner und Verknüpfungen jeden Profil-Bestands verwendet.
Wenn Sie die Ordner/Dateien auf dem Samba-Server auf read-only gesetzt haben, werden Sie Fehler von der Windows 9x/Me-Maschine bei der An- und Abmeldung erhalten, wenn sie versucht, lokale und entfernte Profile zu vereinigen. Grundsätzlich sollten Sie die UNIX-Dateirechte und Eigentumsverhältnisse auf dem Samba-Server prüfen, wenn Sie irgendwelche Fehler von der Windows 9x/Me-Maschine erhalten.
Wenn Sie Probleme beim Anlegen von Benutzerprofilen haben, können Sie den lokalen Desktop-Cache des Benutzers zurücksetzen, wie unten gezeigt. Wenn sich dieser Benutzer das nächste Mal anmeldet, wird ihm gesagt werden, dass er/sie sich „zum ersten Mal“ anmeldet.
Anstatt sich im Dialog [Benutzer, Passwort, Domäne] anzumelden, drücken Sie .
Führen Sie regedit.exe aus, und suchen Sie nach:
HKEY_LOCAL_MACHINE\Windows\CurrentVersion\ProfileList
Sie werden einen ProfilePath-Eintrag für jeden Benutzer finden. Notieren Sie sich die Inhalte dieses Schlüssels (wahrscheinlich c:\windows\profiles\username), dann löschen Sie den Schlüssel ProfilePath für den erforderlichen Benutzer.
Verlassen Sie den Registry-Editor.
Suchen Sie nach der .PWL-password-caching-Datei des Benutzers im Verzeichnis c:\windows, und löschen Sie diese Datei.
Melden Sie sich vom Windows 9x/Me-Client ab.
Prüfen Sie die Inhalte des Profil-Pfads (siehe logon path, wie oben beschrieben), und löschen Sie die Datei user.DAT oder user.MAN des Benutzers, nachdem Sie, falls erforderlich, eine Sicherung angelegt haben.
Bevor Sie die Inhalte des in ProfilePath angegebenen Verzeichnisses (wahrscheinlich c:\windows\profiles\username) löschen, fragen Sie den Benutzer, ob er irgendwelche wichtigen Dateien auf seinem Desktop oder im Startmenü gespeichert hat. Löschen Sie die Inhalte des Verzeichnisses ProfilePath (nach einem Backup, falls Dateien benötigt werden).
Dies wird den Effekt haben, dass die lokale (read-only, versteckte) Datei user.DAT genauso wie die lokalen Ordner „Desktop“, „Startmenü“, „Programme“ und „Netzwerkumgebung“ aus dem Profil-Verzeichnis entfernt wird.
Wenn alles scheitert, erhöhen Sie Sambas Log-Level auf einen Wert zwischen 3 und 10 und/oder verwenden einen Packet-Sniffer wie ethereal oder netmon.exe und suchen nach Fehlermeldungen.
Wenn Sie Zugriff auf einen Windows NT4/200x-Server haben, installieren Sie zuerst Roaming Profiles und/oder Netzwerk-Anmeldungen auf dem Windows NT4/200x-Server. Führen Sie eine Paketverfolgung (Trace) aus, oder prüfen Sie die Beispiel-Traces, die dem Windows NT4/200x-Server beiliegen, und stellen Sie die Unterschiede zum Samba-Trace fest.
Wenn sich ein Benutzer zum ersten Mal an einer Windows NT4 Workstation anmeldet, wird das Profil NTuser.DAT angelegt. Der Ort, an dem das Profil abgelegt wird, kann durch den Parameter logon path angegeben werden.
Es gibt einen Parameter, der nun für die Verwendung mit NT-Profilen verfügbar ist: logon drive. Dieser sollte auf H: oder ein anderes Laufwerk gesetzt werden und in Verbindung mit dem neuen Parameter logon home verwendet werden.
Der Eintrag für das NT4-Profil ist ein Verzeichnis, keine Datei. Die NT-Hilfe bezüglich Profilen erwähnt, dass ein Verzeichnis auch mit der Endung .PDS angelegt wird. Der Benutzer muss beim Anmelden Schreibrechte haben, um den vollen Profil-Pfad anzulegen (und den Ordner mit der Endung .PDS, in den Fällen, in denen er angelegt wird).
Windows NT4 legt mehr Ordner im Profil-Verzeichnis an als Windows 9x/Me. So legt es den Ordner Anwendungsdaten und andere an, sowie Desktop, Startmenü, Programme und Netzwerkumgebung. Das Profil selbst wird in einer Datei namens NTuser.DAT gespeichert. Scheinbar wird nichts in dem Verzeichnis .PDS gespeichert, und sein Zweck ist uns momentan unbekannt.
Sie können die Systemsteuerung dazu verwenden, um ein lokales Profil auf einen Samba-Server zu kopieren (sehen Sie sich dazu die NT-Hilfe zu Profilen an; diese ist sogar dazu imstande, Sie zum richtigen Platz in der Systemsteuerung zu bringen). Die NT-Hilfe-Datei erwähnt auch, dass das Umbenennen der Datei NTuser.DAT in NTuser.MAN ein Profil in ein zwingendes Profil verwandelt.
Die Groß-/Kleinschreibung des Profils ist wichtig. Die Datei muss NTuser.DAT heißen oder, für ein zwingendes Profil, NTuser.MAN.
Sie müssen zuerst auf der MS Windows Workstation das Profil von einem lokalen Profil in ein Domänen-Profil umwandeln, und zwar wie folgt:
Melden Sie sich als der lokale Workstation-Administrator an.
Klicken Sie mit der rechten Maustaste auf das Icon Arbeitsplatz, und wählen Sie .
Klicken Sie auf den Tab Erweitert.
Klicken Sie im Abschnitt Benutzerprofile auf den Eintrag Einstellungen.
Wählen Sie das Profil, das Sie umwandeln wollen (einmal darauf klicken).
Klicken Sie auf den Button .
In der Box Benutzer klicken Sie auf .
Klicken Sie auf den Bereich Pfade, der den Maschinen-Namen listet; es wird sich eine Auswahl-Box öffnen. Klicken Sie auf die Domäne, für die das Profil zugänglich sein muss.
Sie werden sich anmelden müssen, wenn sich ein Anmelde-Dialog öffnet. Zum Beispiel melden Sie sich an als DOMÄNE\root,passwort: meinpasswort.
Um einem Profil zu gestatten, von jedem verwendet zu werden, wählen Sie „Jeder“.
Klicken Sie auf ; die Auswahl-Box schließt sich.
Nun klicken Sie auf , um das Profil im angegebenen Pfad anzulegen.
Erledigt. Sie haben nun ein Profil, das mit dem Samba-Tool profiles edititiert werden kann.
Unter Windows NT/200x erzwingt die Verwendung von zwingenden Profilen die Verwendung von MS-Exchange für die Speicherung von Mail-Daten und hält diese außerhalb des Desktop-Profils. Dies verhindert, dass die Desktop-Profile unbenutzbar werden.
Es gibt einen Sicherheits-Check, der neu für Windows XP ist (oder vielleicht nur für Windows XP Service Pack 1). Er kann über eine Gruppen-Richtlinie im Active Directory deaktiviert werden. Die Richtlinie heißt:
Computer Configuration\Administrative Templates\System\User Profiles\Do not check for user ownership of Roaming Profile Folders
Dies sollte auf Aktiviert gesetzt werden.
Hat die neue Version von Samba ein Analogon zum Active Directory? Wenn ja, können Sie die Richtlinie eventuell durch dieses setzen.
Wenn Sie keine Gruppen-Richtlinien in Samba setzen können, dann können Sie sie vielleicht lokal auf jeder Maschine setzen. Wenn Sie dies versuchen wollen, machen Sie folgendes:
Melden Sie sich auf der XP-Workstation mit einem Administrator-Konto an.
Klicken Sie auf -> .
Geben Sie mmc ein.
Klicken Sie auf .
Eine Microsoft Management Console sollte erscheinen.
Klicken Sie auf -> -> .
Einen Doppelklick auf Gruppenrichtlinie.
Klicken Sie auf -> .
Klicken Sie auf .
In dem Fenster „Konsolenstamm“ klappen Sie Richtlinien für Lokaler Computer auf -> Computerkonfiguration -> Administrative Vorlagen -> System -> Benutzerprofile.
Einen Doppelklick auf Eigentümer von servergespeicherten Profilen nicht prüfen.
Wählen Sie Aktiviert.
Klicken Sie auf .
Schliessen Sie die gesamte Konsole. Sie müssen die Einstellungen nicht speichern (dies bezieht sich mehr auf die Konsolen-Einstellungen als auf die Richtlinien, die Sie geändert haben).
Rebooten Sie den Rechner.
Das gemeinsame Nutzen von Desktop-Profilen mit verschiedenen Windows-Versionen ist nicht zu empfehlen. Desktop-Profile sind ein Phänomen, das sich ständig weiterentwickelt, und Profile für spätere MS Windows-Versionen fügen Eigenschaften hinzu, die mit früheren MS Windows-Clients zu Problemen führen können. Der herausragendste Grund dafür, Profile nicht zu mischen, ist vermutlich folgender: Wenn man sich von einer älteren MS Windows-Version abmeldet, könnte das alte Format der Profil-Inhalte Informationen überschreiben, die zur neueren Version gehören, was zum Verlust von Profil-Informationsgehalt führt, wenn sich dieser Benutzer wieder an der neueren Version von MS Windows anmeldet.
Wenn Sie dasselbe Startmenü bzw. denselben Desktop mit W9x/Me teilen wollen, müssen Sie einen gemeinsamen Ort für die Profile angeben. Die Parameter in smb.conf, die gleich sein müssen, sind logon path und logon home.
Wenn Sie dies korrekt eingerichtet haben, werden Sie separate user.DAT- und NTuser.DAT-Dateien im selben Profil-Verzeichnis vorfinden.
Es gibt nichts, was Sie davon abhält, jeglichen beliebigen Pfad für die Benutzer-Profile anzugeben. Daher könnten Sie bestimmen, dass das Profil auf einem Samba-Server oder auf irgendeinem anderen SMB-Server gespeichert werden soll, solange dieser Server verschlüsselte Passwörter unterstützt.
Leider sind die Informationen zum Resource Kit für die Version von MS Windows NT4/200x spezifisch. Das passende Resource Kit ist für jede Plattform erforderlich.
Hier eine Kurz-Anleitung:
Klicken Sie auf Ihrem NT4-Domänencontroller mit der rechten Maustaste auf Arbeitsplatz, dann wählen Sie den Tab namens Benutzerprofile.
Wählen Sie das Benutzerprofil, das Sie migrieren wollen, und klicken Sie darauf.
Ich verwende den Begriff „migrieren“ nicht sehr streng. Sie können ein Profil kopieren, um ein Gruppen-Profil anzulegen. Sie können dem Benutzer Jeder Rechte an dem Profil geben, auf das Sie kopieren. Dies müssen Sie tun, da Ihre Samba-Domäne kein Mitglied einer Vertrauensstellung mit Ihrem PDC ist.
Klicken Sie auf .
In dem Feld namens Kopieren nach geben Sie den neuen Pfad an, z.B., c:\temp\foobar
Klicken Sie auf im Feld Benutzer.
Klicken Sie auf die Gruppe „Jeder“, dann auf . Dies schliesst die Box „Benutzer oder Gruppe wählen“.
Jetzt klicken Sie auf .
Befolgen Sie obige Anleitung für jedes Profil, das Sie migrieren müssen.
Sie sollten sich die SID Ihrer NT4-Domäne besorgen, dazu können Sie smbpasswd verwenden. Lesen Sie dazu die Manpage.
Das Windows 200x Professional Resource Kit enthält moveuser.exe. moveuser.exe verschiebt die Sicherheitseinstellungen eines Profils von einem Benutzer auf einen anderen. Dies erlaubt es, die Domäne des Kontos und/oder den Benutzernamen zu ändern.
Dieser Befehl ist dem Samba-Befehl profiles ähnlich.
Sie können die SID bestimmen, indem Sie das Programm GetSID.exe aus dem Windows NT Server 4.0 Resource Kit verwenden.
Windows NT 4.0 speichert die lokalen Profil-Informationen an folgender Stelle in der Registry: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
Im Schlüssel „ProfileList“ gibt es Sub-Schlüssel, die nach den SIDs der Benutzer benannt sind, die sich an diesem Computer angemeldet haben. (Um die Informationen zu dem Benutzer zu finden, dessen lokal zwischengespeichertes Profil Sie verschieben wollen, bestimmen Sie dessen SID mit dem Werkzeug GetSID.exe.) Innerhalb des entsprechenden Sub-Schlüssel des Benutzers werden Sie einen String-Wert namens ProfileImagePath finden.
Ein zwingendes Profil („Mandatory Profile“) ist ein Profil, das der Benutzer nicht überschreiben kann. Während der einzelnen Sitzung des Benutzers sind Änderungen an der Desktop-Umgebung möglich, jedoch sind alle diese Änderungen beim Abmelden des Benutzers verloren. Wenn es erwünscht ist, dem Benutzer keinerlei Möglichkeit zur Veränderung der Desktop-Umgebung zu erlauben, muß dies durch Setzen von Richtlinien erfolgen. Lesen Sie dazu das vorhergehende Kapitel.
Das Profil-Verzeichnis (oder dessen Inhalte) sollten unter KEINEN Umständen read-only gesetzt werden, da dies das Profil unbenutzbar machen kann. Wo es essenziell wichtig ist, ein Profil innerhalb des UNIX-Dateisystems read-only zu setzen, kann dies gemacht werden. In diesem Fall müssen Sie jedoch UNBEDINGT das VFS-Modul fake-permissions benutzen, um die MS Windows NT/200x/XP-Clients anzuweisen, dass der Benutzer Schreibberechtigung hat (siehe ???).
Für MS Windows NT4/200x/XP kann die obige Methode auch zum Anlegen zwingender Profile verwendet werden. Um ein Gruppen-Profil in ein zwingendes Profil umzuwandeln, suchen Sie einfach nach der Datei NTUser.DAT im kopierten Profil und benennen sie in NTUser.MAN um.
Für MS Windows 9x/ME ist es die Datei User.DAT, die in User.MAN umbenannt werden muss, um ein zwingendes Profil zu erhalten.
Die meisten Organisationen sind in Abteilungen gegliedert. Ein angenehmer Nebeneffekt dieser Tatsache ist, dass üblicherweise die meisten Benutzer innerhalb einer Abteilung dieselben Desktop-Anwendungen und dasselbe Desktop-Layout benötigen. MS Windows NT4/200x/XP erlaubt die Verwendung von Gruppen-Profilen. Ein Gruppen-Profil ist ein Profil, das ursprünglich unter Verwendung eines Beispiel-Anwenders angelegt wird. Danach werden unter Verwendung des Profil-Migrations-Tools (siehe oben) dem Profil Rechte für diejenige Benutzergruppe zugewiesen, die Zugriff auf das Gruppen-Profil benötigt.
Der nächste Schritt ist wichtig: Anstatt das Gruppen-Profil Benutzern auf einer „per user“-Basis zuzuweisen (mittels User Manager), wird die Gruppe selbst dem nunmehr modifizierten Profil zugewiesen.
Seien Sie vorsichtig mit Gruppen-Profilen. Wenn der Benutzer, der Mitglied der Gruppe ist, auch ein persönliches Profil hat, wird das Ergebnis eine Vereinigung (Merge) dieser beiden Profile sein.
MS Windows 9x/Me und NT4/200x/XP benutzen ein Standard-Profil für jeden Benutzer, für den noch kein Profil existiert. Wenn man weiß, wo das Standard-Profil auf einer Windows-Workstation zu finden ist und welche Registrierungs-Schlüssel den Pfad beeinflussen, aus dem heraus das Standard-Profil angelegt wird, ist es möglich, das Standard-Profil für die jeweilige Installation zu optimieren. Dies hat signifikante administrative Vorteile.
Um Standard-Benutzer-Profile in Windows 9x/ME zu aktivieren, können Sie entweder den Windows 98 System Policy Editor verwenden oder die Registry direkt ändern.
Um Standard-Benutzer-Profile in Windows 9x/ME zu aktivieren, öffnen Sie den System Policy Editor, dann wählen Sie -> . Als Nächstes klicken Sie auf das Icon Lokaler Computer, klicken auf Windows 98 System, wählen Benutzer-Profile und klicken auf die Aktivieren-Box. Vergessen Sie nicht, die Registry-Änderungen zu speichern.
Zum direkten Modifizieren der Registry öffnen Sie den Registrierungs-Editor (regedit.exe) und wählen den Abschnitt HKEY_LOCAL_MACHINE\Network\Logon. Nun fügen Sie einen Wert vom Typ DWORD mit dem Namen „User Profiles“ hinzu. Um Benutzerprofile zu aktivieren, setzen Sie ihn auf 1; um diese zu deaktivieren, setzen Sie ihn auf den Wert 0.
Wenn sich ein Benutzer an einer Windows 9x/Me-Maschine anmeldet, wird der lokale Profilpfad HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\ProfileList daraufhin überprüft, ob ein Eintrag für diesen Benutzer existiert.
Wenn der Benutzer einen Eintrag in diesem Registrierungsabschnitt hat, prüft Windows 9x/Me, ob eine lokal gepufferte Version des Benutzerprofils vorhanden ist. Windows 9x/Me prüft auch das Home-Verzeichnis des Benutzers (oder ein anderes angegebenes Verzeichnis, wenn diese Angabe verändert wurde) auf dem Server auf Vorhandensein des Profils. Wenn ein Profil an beiden Orten existiert, wird die neuere Version verwendet. Wenn das Benutzerprofil auf dem Server existiert, aber nicht auf der lokalen Maschine, wird das Profil vom Server geladen und verwendet. Wenn es nur auf der lokalen Maschine existiert, wird diese Kopie verwendet.
Wenn an keinem der beiden Orte ein Benutzerprofil gefunden wird, wird das Standard-Benutzer-Profil der Windows 9x/Me-Maschine verwendet und in einen neu angelegten Ordner für den angemeldeten Benutzer kopiert. Beim Abmelden werden alle vorgenommenen Änderungen des Benutzers in sein lokales Profil geschrieben. Wenn der Benutzer ein „Roaming Profile“ hat, werden die Änderungen in sein Profil auf dem Server geschrieben.
Unter MS Windows NT4 wird das Standard-Benutzer-Profil aus %SystemRoot%\Profiles bezogen, das in einer Standard-Installation C:\Windows NT\Profiles entspricht. Unter diesem Verzeichnis gibt es in einer herkömmlichen sauberen Installation drei Verzeichnisse: Administrator, All Users und Default User.
Das Verzeichnis All Users enthält Menü-Einstellungen, die für alle System-Benutzer gleich sind. Das Verzeichnis Default User enthält Menü-Einträge, die - abhängig von den gewählten oder angelegten Profil-Einstellungen - an den jeweiligen Benutzer angepasst werden können.
Wenn sich ein neuer Benutzer zum ersten Mal an einer MS Windows NT4-Maschine anmeldet, wird ein neues Profil angelegt, das sich wie folgt zusammensetzt:
All Users-Einstellungen
Default User-Einstellungen (sie enthalten die Standard-Datei NTUser.DAT)
Wenn sich ein Benutzer an einer MS Windows NT4-Maschine anmeldet, die Mitglied einer MS-Domäne ist, werden die folgenden Schritte in Bezug auf Profile durchlaufen:
Die Information bezüglich des Benutzerkontos, die während dem Anmelde-Vorgang erhalten wird, enthält den Ort, an dem das Desktop-Profil des Benutzers aufbewahrt wird. Der Profil-Pfad kann lokal auf der Maschine liegen oder auf einer Netzwerk-Freigabe. Wenn ein Profil in dem vom Benutzer-Konto angegebenen Pfad existiert, wird es auf %SystemRoot%\Profiles\%USERNAME% kopiert. Dieses Profil erbt dann die Einstellungen im All Users-Profil in %SystemRoot%\Profiles.
Wenn das Benutzerkonto einen Profil-Pfad hat, aber dort kein Profil existiert, wird ein neues Profil in %SystemRoot%\Profiles\%USERNAME% angelegt. Dazu wird das Profil Default User verwendet.
Wenn die Freigabe NETLOGON auf dem authentifizierenden Server (Logon-Server) eine Richtlinien-Datei (NTConfig.POL) enthält, werden dessen Inhalte auf die Datei NTUser.DAT angewandt, die wiederum auf den Abschnitt HKEY_CURRENT_USER der Registrierung angewandt wird.
Beim Abmelden des Benutzers wird, wenn das Profil ein „Roaming Profile“ ist, das Profil in den Profil-Pfad geschrieben. Die Datei NTuser.DAT wird dann neu aus den Inhalten von HKEY_CURRENT_USER angelegt. Daher wird, falls beim nächsten Anmelden in der NETLOGON-Freigabe keine Datei NTConfig.POL existiert, die Auswirkung der vorigen Datei NTConfig.POL nach wie vor im Profil behalten. Diesen Effekt bezeichnet man als „Tattooing“.
MS Windows NT4-Profile können lokal oder roaming sein. Ein lokales Profil wird in %SystemRoot%\Profiles\%USERNAME% gespeichert. Ein „Roaming Profile“ wird auch in derselben Art gespeichert, es sei denn, der folgende Registrierungsschlüssel wird wie folgt angelegt:
HKEY_LOCAL_MACHINE\SYSTEM\Software\Microsoft\Windows NT\CurrentVersion\winlogon\"DeleteRoamingCache"=dword:0000000
In diesem Fall wird die lokale Kopie (in %SystemRoot%\Profiles\%USERNAME%) beim Abmelden gelöscht.
Unter MS Windows NT4 können Standard-Pfade für allgemeine Ressourcen wie Eigene Dokumente auf eine Netzwerk-Freigabe umgeleitet werden, indem man die folgenden Registrierungs-Schlüssel ändert. Diese Änderungen können durch Verwendung des System Policy Editor vorgenommen werden. Dazu müssen Sie Ihre eigene Vorlage für den Policy Editor anlegen, um diese Änderungen per GUI zu erlauben. Eine andere Möglichkeit, dies zu tun, besteht darin, zuerst ein Standard-Benutzer-Profil anzulegen und dann, während man als anderer Benutzer angemeldet ist, regedt32 auszuführen, um die Schlüssel zu editieren.
Der Registrierungsschlüssel, der das Verhalten der Ordner beeinflusst, die Teil des Standard-Benutzer- Profils sind, lautet unter Windows NT4:
HKEY_CURRENT_USER \Software \Microsoft \Windows \CurrentVersion \Explorer \User Shell Folders
Der obige Schlüssel enthält eine Liste von automatisch verwalteten Ordnern. Die Standard-Einträge werde in ??? gezeigt.
Tabelle 24.1. Standard-Werte der Registrierungsschlüssel für Benutzer-Ordner
| Name | Standard-Wert |
|---|---|
| AppData | %USERPROFILE%\Anwendungsdaten |
| Desktop | %USERPROFILE%\Desktop |
| Favorites | %USERPROFILE%\Favoriten |
| NetHood | %USERPROFILE%\Netzwerkumgebung |
| PrintHood | %USERPROFILE%\Druckumgebung |
| Programs | %USERPROFILE%\Startmenü\Programme |
| Recent | %USERPROFILE%\Zuletzt verwendete Dokumente |
| SendTo | %USERPROFILE%\SendTo |
| Start Menu | %USERPROFILE%\Startmenü |
| Startup | %USERPROFILE%\Startmenü\Programme\Autostart |
Der Registrierungsschlüssel, der den Ort der Standard-Profil-Einstellungen enthält, ist:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ User Shell Folders
Die Standard-Einträge werden in ??? gezeigt.
Tabelle 24.2. Standardwerte der Registrierungsschlüssel für Profil-Einstellungen
| Gemeinsamer Desktop | %SystemRoot%\Profiles\All Users\Desktop |
| Gemeinsame Programme | %SystemRoot%\Profiles\All Users\Programme |
| Gemeinsames Startmenü | %SystemRoot%\Profiles\All Users\Startmenü |
| Gemeinsames Autostart | %SystemRoot%\Profiles\All Users\Startmenü\Programme\Startup |
MS Windows XP Home Edition verwendet standardmäßig Per-Benutzer-Profile, aber kann nicht an Domänen teilnehmen, sich nicht an NT/ADS-Domänen anmelden und kann daher das Profil nur von sich selbst beziehen. Während dies Vorteile hat, erlaubt es die „Schönheit“ jener MS Windows-Clients, die an Domänen-Anmeldevorgängen teilnehmen können, dem Administrator, ein globales Standard-Profil anzulegen und dessen Verwendung mit Hilfe von Gruppenrichtlinien (GPOs) zu erzwingen.
Wenn sich ein neuer Benutzer zum ersten Mal an einer MS Windows 200x/XP-Maschine anmeldet, wird das Standard-Profil aus C:\Dokumente und Einstellungen\Default User geladen. Der Administrator kann die dortigen Inhalte modifizieren, und MS Windows 200x/XP wird diese verwenden. Dies ist nicht gerade optimal, da es bedeutet, dass man ein neues Standard-Profil auf jede MS Windows 200x/XP-Client-Workstation kopieren muss.
Wenn MS Windows 200x/XP an einem Domänen-Kontext teilnimmt und das Standard-Benutzer-Profil nicht gefunden wird, sucht der Client nach einem Standard-Profil in der NETLOGON-Freigabe des authentifizierenden Servers. In MS Windows-Begriffen handelt es sich um %LOGONSERVER%\NETLOGON\Default User, und wenn ein solches existiert, wird der Client es auf die Workstation kopieren, und zwar in das Verzeichnis C:\Dokumente und Einstellungen\ unter dem Login-Namen des Benutzers.
Dieser Pfad entspricht, in Samba-Begriffen, der Freigabe [NETLOGON] in smb.conf. Das Verzeichnis sollte im Wurzelverzeichnis dieser Freigabe angelegt werden und muss Default Profile heißen.
Wenn an diesem Ort kein Standard-Profil existiert, wird MS Windows 200x/XP das lokale Standard-Profil verwenden.
Beim Abmelden wird das Desktop-Profil des Benutzers an dem Ort abgespeichert, der in den Registrierungs-Einstellungen für diesen Benutzer gesetzt ist. Wenn keine spezifischen Richtlinien angelegt oder während der Anmeldung an den Client weitergegeben worden sind (wie es Samba automatisch tut), dann wird das Benutzerprofil nur auf der lokalen Maschine unter C:\Dokumente und Einstellungen\%USERNAME% abgelegt.
Jene, die dieses Standard-Verhalten verändern wollen, können dies auf drei Arten tun:
Manuelles Ändern der Registrierungsschlüssel auf der lokalen Maschine und das Platzieren des Standard-Profils im Wurzelverzeichnis der NETLOGON-Freigabe. Dies wird nicht empfohlen, da es sehr wartungsintensiv ist.
Anlegen einer NT4-artigen Datei NTConfig.POL, die dieses Verhalten spezifiziert, und das Platzieren dieser Datei im Wurzelverzeichnis der NETLOGON-Freigabe neben dem neuen Standard-Profil.
Anlegen einer Gruppenrichtline (GPO), die das Verhalten per Active Directory erzwingt, und das Platzieren des neuen Standard-Profils in der NETLOGON-Freigabe.
Der Registrierungsschlüssel, der das Verhalten der Ordner beeinflusst, die Bestandteil des Standard-Benutzer-Profils sind, ist unter Windows 200x/XP:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\
Der obige Schlüssel enthält eine Liste von automatisch verwalteten Ordnern. Die Standard-Einträge werden in ??? gezeigt.
Tabelle 24.3. Pfade des Standard-Profils: Standard-Werte der Registrierungsschlüssel
| Name | Standard-Wert |
|---|---|
| AppData | %USERPROFILE%\Anwendungsdaten |
| Cache | %USERPROFILE%\Lokale Einstellungen\Temporary Internet Files |
| Cookies | %USERPROFILE%\Cookies |
| Desktop | %USERPROFILE%\Desktop |
| Favorites | %USERPROFILE%\Favoriten |
| History | %USERPROFILE%\Lokale Einstellungen\Verlauf |
| Local AppData | %USERPROFILE%\Lokale Einstellungen\Anwendungsdaten |
| Local Settings | %USERPROFILE%\Lokale Einstellungen |
| My Pictures | %USERPROFILE%\Eigene Dokumente\Eigene Bilder |
| NetHood | %USERPROFILE%\Netzwerkumgebung |
| Personal | %USERPROFILE%\Eigene Dokumente |
| PrintHood | %USERPROFILE%\Druckumgebung |
| Programs | %USERPROFILE%\Startmenü\Programme |
| Recent | %USERPROFILE%\Verlauf |
| SendTo | %USERPROFILE%\SendTo |
| Start Menu | %USERPROFILE%\Startmeüu |
| Startup | %USERPROFILE%\Startmenü\Programme\Autostart |
| Templates | %USERPROFILE%\Vorlagen |
Es gibt auch einen Eintrag namens „Default“, der keinen Wert gesetzt hat. Der Standard-Eintrag ist vom Typ REG_SZ, alle anderen sind vom Typ REG_EXPAND_SZ.
Es macht einen riesigen Unterschied in Bezug auf die Geschwindigkeit, mit der man „Roaming Profiles“ verwenden kann, wenn all die notwendigen Ordner an einem dafür bestimmten Ort auf einem Netzwerk-Server abgelegt werden. Das bedeutet, dass es nicht mehr notwendig ist, bei jedem An- und Abmelden die Outlook-PST-Datei über das Netzwerk zu schreiben.
Um dies auf einen Netzwerk-Pfad zu ändern, könnten Sie folgende Beispiele verwenden:
%LOGONSERVER%\%USERNAME%\Standard Ordner
Dies würde die Ordner im Home-Verzeichnis des Benutzers ablegen, und zwar in einem Ordner namens Standard Ordner. Sie könnten auch das verwenden:
\\SambaServer\OrdnerFreigabe\%USERNAME%
In diesem Fall werden die Standard-Ordner auf dem Server namens SambaServer in der Freigabe OrdnerFreigabe gespeichert, und zwar unter einem Verzeichnis, das den Namen des Windows-Benutzers hat, wie er vom Linux/UNIX-Dateisystem aus gesehen wird.
Bitte beachten Sie, dass Sie, sobald Sie eine Standard-Profil-Freigabe angelegt haben, das Benutzer-Profil darauf migrieren MÜSSEN (egal ob es ein Standard- oder angepasstes Profil ist).
MS Windows 200x/XP-Profile können Local oder Roaming sein. Ein „Roaming Profile“ wird lokal gepuffert (Cache), außer der folgende Registrierungsschlüssel wird angelegt:
HKEY_LOCAL_MACHINE\SYSTEM\Software\Microsoft\Windows NT\CurrentVersion\ winlogon\"DeleteRoamingCache"=dword:00000001
In diesem Fall wird die lokale Cache-Kopie beim Abmelden gelöscht.
Im Folgenden werden typische Fehler, Probleme und Fragen beschrieben, die in den Samba-Mailing-Listen gestellt wurden.
Mit Samba-2.2.x haben Sie die Wahl, die Unterstützung von Roaming Profiles zu aktivieren oder zu deaktivieren. Die Voreinstellung ist, Roaming Profiles zu haben, und der Standard-Pfad wird diese im Home-Verzeichnis des Benutzers suchen.
Falls diese global deaktiviert sind, hat kein Benutzer die Fähigkeit, Roaming Profiles zu verwenden. Wenn diese aktiviert sind und Sie sie nur auf bestimmte Maschinen anwenden wollen, ist es notwendig, auf jenen Maschinen, die keine Unterstützung für Roaming Profiles bieten sollen, diese Unterstützung in der Registrierung jeder einzelnen dieser Maschinen zu deaktivieren.
Mit Samba-3 können Sie eine globale Profil-Einstellung in der smb.conf haben, und Sie können diese aufheben, indem Sie Per-Benutzer-Einstellungen mit dem Domain User Manager setzen (wie bei MS Windows NT4/ Win 200xx).
In jedem Fall können Sie nur ein Profil pro Benutzer konfigurieren. Dieses Profil kann sein:
Ein Benutzer fragte Folgendes: „Ich will keine Roaming Profiles implementieren. Ich möchte den Benutzern nur ein lokales Profil geben. Bitte helfen Sie mir, ich bin verloren ... Seit zwei Tagen versuche ich alles, google herum, aber finde keine hilfreichen Anhaltspunkte. Bitte um Hilfe! “
Die Möglichkeiten sind:
Ich kenne keine Registrierungseinstellungen, die das automatische Löschen von LOKALEN Profilen beim Abmelden erlauben.
Wenn sich ein Benutzer an einem Netzwerk anmeldet, wird ein zentral gespeichertes Profil auf die Workstation kopiert, um ein lokales Profil zu bilden. Dieses lokale Profil bleibt bestehen (verbleibt auf der Platte der Workstation), es sei denn, ein Registrierungsschlüssel wird geändert, der das automatische Löschen dieses Profils beim Abmelden veranlasst.
Die Möglichkeiten mit Roaming Profiles sind:
Diese werden üblicherweise in einer Profil-Freigabe auf einem zentralen (oder einem praktisch gelegenen lokalen) Server gespeichert.
Workstations cachen (speichern) eine lokale Kopie des Profils. Diese gepufferte Kopie wird verwendet, wenn das Profil beim nächsten Anmelden nicht geladen werden kann.
Diese werden von einem zentralen Profil-Server geladen.
Zwingende Profile können genauso für einen einzelnen Benutzer angelegt werden wie auch für jede Gruppe, deren Mitglied ein Benutzer ist. Zwingende Profile können nicht von einfachen Benutzern geändert werden. Nur der Administrator kann diese ändern oder neu konfigurieren.
Ein Windows NT4/200x/XP-Profil kann in seiner Größe variieren - von 130 Kbyte bis zu einem sehr großen Umfang. Outlook-PST-Dateien sind meistens Teil des Profils und können viele Gbyte groß sein. Im Durchschnitt (in einer gut verwalteten Umgebung) ist ein Roaming Profile von 2 Mbyte ein guter Richtwert für Planungszwecke. In einem undisziplinierten Umfeld habe ich bereits Profile von bis zu 2 Gbyte gesehen. Benutzer neigen dazu, sich zu beschweren, wenn es eine Stunde dauert, sich an einer Workstation anzumelden, jedoch ernten sie nur die Früchte von Unverstand (und Ignoranz).
Das bisher Erwähnte soll vor allem zeigen, dass Roaming Profiles, sowie eine gute Kontrolle darüber, wie diese verändert werden können, neben guter Disziplin wesentlich zu einer problemfreien Installation beitragen.
Microsofts Antwort auf das PST-Problem ist, alle E-Mail-Daten in einem MS Exchange Server-Backend zu speichern. Dies macht eine PST-Datei überflüssig.
Lokale Profile bedeuten:
Wenn jede Maschine von vielen Benutzern verwendet wird, wird auch viel lokaler Speicherplatz für die Profile benötigt.
Jede Workstation, an der sich der Benutzer anmeldet, hat ein eigenes Profil für ihn; diese Profile können sehr stark voneinander abweichen.
Auf der anderen Seite bedeutet der Einsatz von Roaming Profiles:
Der Netzwerk-Administrator kann die Desktop-Umgebung aller Benutzer kontrollieren.
Die Verwendung von zwingenden Profilen reduziert drastisch etwaige Overheads im Netzwerk-Management.
Auf lange Sicht haben die Benutzer weniger Probleme damit.
„Wenn sich der Client am Domänen-Controller anmeldet, sucht er ein Profil zum Download. Wohin stelle ich dieses Standard-Profil?“
Zuerst muss der Samba-Server als ein Domänen-Controller konfiguriert werden. Dies erfolgt durch Einstellungen in der smb.conf:
| security = user |
| os level = 32 (or more) |
| domain logons = Yes |
Es muss eine Freigabe namens [netlogon] geben, die world-readable ist. Es ist generell eine gute Idee, ein Start-Skript hinzuzufügen, das Drucker- und Laufwerksverbindungen vorbereitet. Es gibt außerdem eine Einrichtung zum automatischen Synchronisieren der Workstation-Uhr mit der des Anmelde-Servers (eine weitere gute Idee, dies zu verwenden).
Um das automatische Löschen der Roaming Profiles aus dem lokalen Cache der Workstation (Festplatte) zu aktivieren, verwenden Sie den Group Policy Editor, mit dem Sie eine Datei namens NTConfig.POL mit den passenden Einträgen erstellen. Diese Datei muss im Wurzelverzeichnis der Freigabe netlogon platziert werden.
Windows-Clients müssen Domänen-Mitglieder sein. Arbeitsgruppen-Maschinen benutzen keine Netzwerk-Anmeldungen, also arbeiten sie auch nicht mit Domänen-Profilen zusammen.
Für Roaming Profiles fügen Sie Folgendes zur smb.conf hinzu:
| logon path = \\%N\profiles\%U |
| # Standard-Anmelde-Laufwerk ist Z: |
| logon drive = H: |
| # Dies erfordert eine PROFILES-Freigabe, die world-writable ist. |