Grundlagen: Windows Distributed File System

20.01.2005 von Christoph Lange
Mit dem Distributed File System (DFS) von Windows lassen sich die Abhängigkeiten der Pfadangaben von Server-Namen und Laufwerksbuchstaben deutlich reduzieren. Wir zeigen Ihnen, wie Sie DFS einrichten und von der höheren Flexibilität profitieren.

Unternehmensnetze sind einem ständigen Wandel unterworfen. Täglich kommen neue Daten und Verzeichnisse hinzu. Von Zeit zu Zeit finden organisatorische Umstrukturierungen statt, die mit Veränderungen in der Verzeichnisstruktur einhergehen. Und schließlich muss in regelmäßigen Abständen die Server-Hardware ausgetauscht werden.

Besonders gravierend wirken sich die Änderungen von Server-Namen, Shares und Laufwerksbuchstaben aus, denn IT-Abteilung und Anwender müssen alle Verknüpfungen in Programmen, Scripts und Dokumenten anpassen, die auf diese Namen und Buchstaben verweisen. In größeren Netzwerken mit vielen Verlinkungen kann dies einen enormen Aufwand mit sich bringen, der einen nicht unerheblichen Produktivitätsverlust bedeutet.

Um dieses Problem zu adressieren, benötigt man eine virtuelle Dateisystemschicht, die den physikalischen Speicherort vom Pfadnamen trennt. Unabhängig davon, wo die Datei tatsächlich gespeichert ist, muss der Anwender über einen immer gleichen Namen darauf zugreifen können. Eine solche Lösung stellt beispielsweise das Windows Distributed File System (DFS) dar.

DFS trennt Pfadnamen und Speicherort

Das Distributed File System (DFS) von Microsoft heißt in der deutschen Windows-Version "Verteiltes Dateisystem". Es verwendet einen oder mehrere so genannte Root-Server, auf denen Sie die gewünschten virtuellen DFS-Links einrichten und festlegen, auf welche physikalischen Verzeichnis-Shares sie jeweils zeigen.

Die größten Vorteile bietet DFS, wenn es als Domänen-Root (siehe unten) eingerichtet wird. Zum einen lassen sich für ein DFS-Root mehrere Root-Server einrichten, was die Ausfallsicherheit erhöht. Zum anderen bleibt ein einmal eingerichteter DFS-Link aus der Benutzersicht und auch aus der Sicht von Programmen und Scripts unverändert, selbst dann, wenn sich die physikalische Verzeichnisstruktur oder die Server-Namen ändern.

Der Administrator muss in diesem Fall lediglich das Mapping der DFS-Links auf die Verzeichnis-Shares anpassen, der UNC-Pfad bleibt derselbe. Damit entfallen auch die bislang oft erforderlichen Änderungen an Logon-Scripts, wenn neue Laufwerksbuchstaben eingeführt werden. Mit DFS können unterschiedliche Server ihre Freigaben über dasselbe Netzlaufwerk bereitstellen. Für den Benutzer bleibt es dabei völlig transparent, auf welchem Server seine Daten letztendlich liegen.

Der DFS-Root-Server speichert den physikalischen Speicherort für alle Dateien in einem großen Katalog. Dieser wird zwischen mehreren Servern per File Replication Service (FRS) synchronisiert. Die Anwender können mit Hilfe des Katalogs über einen logischen Pfadnamen auf eine Datei zugreifen, ohne wissen zu müssen, wo im Netzwerk die Datei gespeichert ist.

Durch die virtuelle DFS-Zwischenschicht erhalten IT-Abteilungen eine wesentlich höhere Flexibilität bei der Verwaltung ihrer Verzeichnisstruktur. Veränderungen an der Server-Konfiguration ziehen bei einem Einsatz von DFS deutlich weniger Anpassungen nach sich, als es ohne DFS der Fall wäre.

DFS mit Windows NT4, 2000 und 2003

Microsoft hat das "Verteilte Dateisystem" erstmals mit Windows NT4 eingeführt. Eine größere Akzeptanz findet DFS aber erst seit Windows 2000, da die nun direkt ins Betriebssystem integrierte Version von Microsoft jetzt auch offiziell unterstützt wird. Zudem bietet sie eine deutlich größere Flexibilität und Ausfallsicherheit. So müssen DFS-Links nicht mehr auf demselben Root-Server liegen, sondern können über verschiedene Rechner im Netzwerk verteilt sein. Des Weiteren lassen sich DFS-Roots nun in das Active Directory integrieren und profitieren dabei von der automatischen Replikation via File Replication Service (FRS). Der Einsatz von FRS, das unter anderem auch für die Replikation des Sysvol-Ordners von Domänen-Controllern zuständig ist, erhöht die Verfügbarkeit im Vergleich zu den bisherigen Stand-alone-DFS-Roots deutlich.

Mit Windows 2003 integriert Microsoft zusätzliche Verbesserungen in das DFS. So ist es jetzt erlaubt, auf einem Server mehrere DFS-Roots einzurichten. Bei Windows 2000 ist für alle weiteren DFS-Roots ein zusätzlicher Server erforderlich.

DFS-Service automatisch aktiviert

Ansonsten sind die Unterschiede bei den DFS-Funktionen von Windows 2000 und Windows 2003 relativ gering. Beide Betriebssystemversionen installieren den DFS-Service standardmäßig und aktivieren ihn auch gleich. Der zugehörige Prozess heißt Dfssvc.exe. Den Service "Verteiltes Dateisystem (DFS)" finden Sie in der Computerverwaltung unter Dienste.

Auch die Konfiguration und Verwaltung der DFS-Funktionen ist mit Windows 2000 und Windows 2003 weit gehend identisch. Unter Start/Programme/Verwaltung finden Sie bei den Administrationswerkzeugen ein grafisches Tool für die DFS-Verwaltung. Damit richten Sie sowohl das DFS-Root als auch die DFS-Links ein und legen fest, auf welche physikalischen Verzeichnis-Shares sie gemappt werden.

Alternativ können Sie das "Verteilte Dateisystem" mit Hilfe von Dfscmd.exe auch per Kommandozeile verwalten. Dieses Tool ermöglicht es Ihnen, DFS-Links anzulegen, zu ändern und zu löschen.

Der große Vorteil des CLI-Tools: Sie können die DFS-Befehle über Batch-Dateien, Scripts oder aus Anwendungen heraus aufrufen und Aufgaben automatisieren. Zum Beispiel wäre es möglich, ein Script für das Anlegen von neuen Verzeichnis-Shares zu schreiben, das den DFS-Link gleich mit einrichtet. Dfscmd bietet unter Windows 2000 dieselben Befehlsoptionen wie mit 2003. Beachten Sie, dass Pfadnamen mit Leerzeichen in Anführungszeichen gesetzt werden müssen.

Domänen-Stamm oder eigenständiges DFS

Bei der Einrichtung eines DFS-Root, des so genannten Stamms, haben Sie zwei Möglichkeiten: Sie können entweder einen Domänen-DFS-Stamm oder einen eigenständigen Stamm erstellen. Die Domänen-Variante verwendet das Active Directory (AD) zum Speichern der DFS-Konfiguration und unterstützt auch die automatische Dateireplikation mit Hilfe des File Replication Service (FRS). Das eigenständige DFS dagegen nutzt weder das AD noch das FRS.

Als Freigabeverzeichnis für den DFS-Stammdatenträger können Sie entweder ein vorhandenes Share wählen oder eine neue Freigabe mit dem gewünschten Pfad angeben. In unserem Beispiel für einen Domänen-DFS-Stamm haben wir in der Windows-2000-Domäne "testnetz.test.de" den Pfad C:\\dfstest1 und den Freigabenamen testdfs1$ gewählt. Der UNC-Pfadname für das DFS-Root lautet also \\\\testnetz.test.de\\testdfs1$.

Die Einrichtung eines eigenständigen DFS-Stamms erfolgt bei Windows 2000 mit denselben Schritten. Der DFS-Wizard von Windows 2003 erreicht das gleiche Ziel über leicht geänderte Dialogfelder, wobei auch der Server-Name angegeben wird. Der UNC-Pfad zum DFS-Root lautet bei einem eigenständigen DFS-Root-Server zum Beispiel \\\\600SC71\\testdfs2$.

Einrichten von DFS-Links

Ein DFS-Root können Sie, wie gerade geschildert, bequem über die grafische DFS-Administrationskonsole einrichten. Auf die gleiche Weise lassen sich auch die einzelnen DFS-Links anlegen. Markieren Sie das DFS-Root mit der rechten Maustaste und klicken Sie auf "Neue Verknüpfung". Dadurch öffnet sich ein Dialogfenster, in dem Sie unter anderem den Verknüpfungsnamen und den Zielpfad zu dem per DFS freigegebenen Ordner eingeben.

Über das Kontextmenü der rechten Maustaste können Sie auch gleich den Status des neu angelegten Links prüfen und das Zielverzeichnis öffnen. Führen Sie einfach in der rechten Fensterhälfte einen Doppelklick auf die UNC-Pfadangabe aus oder wählen Sie per rechter Maustaste den Befehl "Öffnen".

Hilfreich ist auch das Eigenschaftenmenü von Verzeichnissen, die per DFS gemappt werden. Es lässt sich mit einem rechten Mausklick öffnen und zeigt im Reiter "Verteiltes Dateisystem" an, welches physikalische Verzeichnis-Share hinter einem DFS-Link liegt.

Das DFS-Root-Verzeichnis lässt sich als Netzlaufwerk mappen. Dadurch bekommen die Anwender alle Verzeichnisse zu sehen, die als DFS-Links angelegt sind. Um die Zugriffsrechte zu steuern, bietet sich für DFS-Umgebungen eine Berechtigungsvergabe auf Basis der NTFS-Berechtigungen an. Die Zugriffsrechte werden dabei über Domain Local Groups in Kombination mit Global Groups vergeben.

Bei komplexen Verzeichnisstrukturen mit sehr vielen Netzwerk-Shares artet die Konfiguration der DFS-Links mit Hilfe des grafischen Tools allerdings schnell in Sisyphusarbeit aus. Deshalb bietet Microsoft hierfür als Alternative die Kommandozeilen-Tools Dfscmd.exe und Dfsutil.exe an.

DFS-Verwaltung automatisieren

Mit Dfsmcd können Sie das Anlegen oder Löschen von DFS-Links automatisieren, indem Sie die jeweiligen Befehle in eine Batch-Datei oder ein Script einbinden. So lassen sich zum Beispiel mit einem geeigneten Editor die Befehlszeilen mit den jeweiligen Server- und Verzeichnisnamen schnell in einer Batch-Datei zusammenbauen und per Mausklick gesammelt ausführen.

Der Befehl, um einen neuen DFS-Link anzulegen, der auf den Server W2ks06 verweist, lautet zum Beispiel:

dfscmd /map \\\\testnetz.test.de\\dfstest1$\\Verwaltung \\\\W2ks06\\Verwaltung$

Löschen können Sie DFS-Links mit dfscmd /unmap, wobei es ausreicht, den ersten Teil mit dem DFS-Pfad anzugeben:

dfscmd /unmap \\\\testnetz.test.de\\dfstest1$\\Verwaltung

Den physikalischen Speicherort, auf den ein bereits vorhandener DFS-Link verweist, ändern Sie mit den Optionen /remove und /add.

Über /add fügen Sie einem vorhandenen DFS-Eintrag ein neues Zielverzeichnis hinzu, /remove entfernt es wieder. Ein Beispiel für diesen Befehl anhand des Servers W2kserverBE9:

dfscmd /add \\\\testnetz.test.de\\dfstest1$\\Verwaltung \\\\W2kserverBE9\\Verwaltung

Ob die Änderungen erfolgreich waren, sehen Sie am schnellsten, indem Sie im grafischen DFS-Tool in der linken Baumstruktur das DFS-Root markieren und auf den Button Aktualisieren klicken. Neue DFS-Links sollten umgehend angezeigt werden und gelöschte Links verschwinden.

Mehr Funktionen mit Dfsutil.exe

Das Tool Dfsutil.exe bietet eine ganze Reihe zusätzlicher Funktionen, die insbesondere in größeren Netzwerken Vorteile bieten. Es ist in den Support-Tools von Windows 2000 enthalten. Sie sollten aber auf keinen Fall die erste Version von Dfsutil verwenden, die Sie auf der Windows-2000-CD finden. Sie ist sehr fehlerträchtig und könnte DFS-Metadaten zerstören. Mit der Service-Pack-2-CD hat Microsoft eine gepatchte Version ausgeliefert. Für Windows 2003 gibt es eine eigene Version des Dfsutil-Tools. Mit diesem Werkzeug können Sie auch DFS-Roots per Kommandozeile einrichten und entfernen. Zudem bietet es verschiedene Diagnosemöglichkeiten und umfasst auch Funktionen für DFS-Clients, unter anderem, um den DFS-Cache zu aktualisieren.

Beim Einsatz von DFS kann es vorkommen, dass Anwender nicht mehr auf ein per DFS gemapptes Laufwerk zugreifen dürfen, nachdem sie ihr Passwort geändert haben. Dies liegt daran, dass das DSF-Laufwerk noch mit den alten Sicherheits-Credentials registriert ist, während der Anwender bereits mit den Credentials des neuen Passworts arbeitet. Das Ab- und wieder Neuanmelden an der Windows-Domäne löst in der Regel dieses Problem. Anschließend stehen die DFS-Volumes wieder wie gewohnt zur Verfügung. Sie sollten auch darauf achten, dass auf den Rechnern die aktuelle Version von Msgina.dll eingesetzt wird, damit das Logon unter DFS korrekt funktioniert.

Ältere Clients DFS-fähig machen

Auf der Client-Seite hat Microsoft die DFS-Unterstützung erst ab Windows 2000 Professional integriert. Damit auch ältere Windows-95/98- und NT4-Workstation-Clients die DFS-Funktionen in vollem Umfang nutzen können, ist von Microsoft für diese Betriebssysteme eine Active-Directory-Client-Erweiterung erhältlich. Wenn dieser Patch installiert ist, können die Rechner auch auf die von Active Directory verwalteten fehlertoleranten Fileshares und Failover-Fileshares zugreifen.

Das Update für Windows 95/98 finden Sie auf der Windows-2000-CD im Verzeichnis \\CLIENTS\\WIN9X. Den Download für NT4 Workstation finden Sie hier. Voraussetzung für diesen Patch ist NT4 mit Service Pack 6a. Zudem müssen die Client-Rechner als Computerobjekt in einer Windows-2000-Domäne eingerichtet sein. Wenn die Computer in Ihrem Netzwerk die genannten Kriterien erfüllen, steht einer Nutzung der Vorteile des Distributed File System in Ihrem Netzwerk nichts mehr im Wege. (mha)