mklink.exe – Lokales Verzeichnis als Netzwerkfreigabe unter Servern sharen

Der IST-Zustand:
Ein Programm Installiert sich in C:\Program Files\Hersteller\Programmname.
Im Unterverzeichnis „LOKAL“ liegen Benutzerspezifische Daten, Z.B. Themes.

Der Soll-Zustand:
Das Programm soll auf 5 Terminalservern Installiert werden und von 100 Usern benutzt werden.
Jeder Benutzer wird dabei über Lastverteilung bei der Anmeldung auf einer der 5 Terminalserver geleitet.

Das Problem:
Jeder User müsste seine Benutzerspezifischen Daten 5 mal neu anlegen, da jeder Terminalserver sein eigenes Benutzerspezifisches Verzeichnis verwaltet.

Die Aufgabenstellung (vom Kunden):
Machen!

Die Aufgabenstellung (die eigentliche):
Die 5 Benutzerspezifischen Verzeichnisse auf den 5 Terminalservern müssen irgendwie Synchron gehalten werden.
Man könnte die Verzeichnisse z.B. Kopieren, über DFS Synchron halten oder andere Perverse dinge tun, die man so machen kann 😀

Die Lösung:
Mklink.exe

Mit mklink.exe ist es möglich ein Netwzerkshare als Lokalen Order zu Verknüpfen.
Dies bedeutet im Klartext:

  • Es gibt nur noch EIN Benutzerspezifisches Verzeichnis
  • Dieses Verzeichnis liegt NICHT auf den Terminalservern
  • Ein Verzichnis auf einem File-Server: „\\Srv-FS01\LOKAL_SHARED“
  • Auf den Terminalservern als „c:\Program Files\Hersteller\Programmname\LOKAL“ zur verfügung gestellt
  • Also: „c:\Program Files\Hersteller\Programmname\LOKAL“ => „\\Srv-FS01\LOKAL_SHARED“
  • Das verknüpfte Verzeichnis „fühlt“ sich genauso an wie das ECHTE Verzeichnis
  • Für das Programm sieht das Verzeichnis wie ein Lokales Verzeichnis aus
  • Alle Lese/Schreibzugriffe in dem Verzeichnis werden auf das Shared Verzeichis auf dem File-Server umgeleitet

Um dies letztendlich zu erreichen braucht es nur din CMD Befehl:

mklink.exe /D "C:\Program Files\Hersteller\Programmname\LOKAL" \\Srv-FS01\LOKAL_SHARED

Und als Ausgabe bekommen wir dann:

symbolische Verknüpfung erstellt für
C:\Program Files\Hersteller\Programmname\LOKAL <<===>> \\Srv-FS01\LOKAL_SHARED

Nun ist alles schön 🙂

Weiterführende Informationen findet man auch unter:

Und die Hilfe zu mklink:

C:\Program Files>mklink /?
Erstellt eine symbolische Verknüpfung.

MKLINK [[/D] | [/H] | [/J]] Verknüpfung Ziel

/D Erstellt eine symbolische Verknüpfung für ein Verzeichis.
Standardmäßig wird eine symbolische Verknüpfung für
eine Datei erstellt.
/H Erstellt eine feste Verknüpfung anstelle einer
symbolischen Verknüpfung.
/J Erstellt eine Verzeichnisverbindung.
Verknüpfung Gibt den Namen für die symbolischen Verknüpfung an.
Ziel Gibt den Pfad (relativ oder absolut) an, auf den die
neue Verknüpfung verweist.

One Response to mklink.exe – Lokales Verzeichnis als Netzwerkfreigabe unter Servern sharen

  1.  

    Hallo,
    beschäftige mich gerade mit dem Thema… leider finde ich nirgends im Netz eine brauchbare Information dazu was unter „Verzeichnisanbindung“ zu verstehen ist (Parameter J)…

    „D“ und „H“ sind ja verständlich.
    Können Sie hierzu etwas sagen/schreiben?

leave your comment


*

Unterstütze den Frickelblog!