it-swarm.com.de

Windows 7 Symbolic Link - Eine Datei kann nicht erstellt werden, wenn diese Datei bereits vorhanden ist

Ich versuche, eine symbolische Verbindung zwischen zwei Verzeichnissen herzustellen. Ich habe ein Verzeichnis namens TestDocs und TestDocs2. Ich werde meine gesamte Arbeit in TestDocs erledigen, aber ich brauche alles, um sich in TestDocs2 zu zeigen. Daher werden alle Dateien, die sich in TestDocs2 befinden, in TestDocs repliziert. Wenn Sie eine Datei hinzufügen, eine Datei ändern usw. in TestDocs, sollte dies in TestDocs2 angezeigt werden.

Also dachte ich, es wäre so einfach wie folgt:

mklink /D TestDocs TestDocs2

Aber wenn ich das tue, bekomme ich den Fehler:

Eine Datei kann nicht erstellt werden, wenn diese Datei bereits vorhanden ist

Warum bekomme ich das?

Habe ich auch die Reihenfolge meiner TestDocs und TestDocs2 falsch im Befehl?

Danke für die Hilfe, Symbolic Links haben mich immer verwirrt!

25
user1513171

Die korrekte Verwendung ist:

MKLINK [options] {link} {target}

Sie erstellen einen Link. Die link ist also der neue Link, den Sie gerade erstellen.
Und die target ist das Ziel des Links, das das vorhandene Verzeichnis ist.

39
Jay

So funktioniert das für mich. Ich wollte meinen C:\ProgramData\Package Cache in die F:-Partition verschieben.

Schritte, die ich machen musste:

  1. Verschieben Sie "C:\ProgramData\Package Cache" physisch in F:. Jetzt hatte ich "F:\ProgramData\Package Cache" und "C:\ProgramData\Package Cache" ist weg, seit ich ihn verschoben habe.

  2. Im cmd-Lauf (alle in einer Zeile, hier zur besseren Lesbarkeit aufgeteilt)

    mklink /J "C:\ProgramData\Package Cache" 
              "F:\ProgramData\Package Cache"
    
  3. Ergebnis:

    Junction created for C:\ProgramData\Package Cache <<===>> 
                         F:\ProgramData\Package Cache`
    
20
bajov

Ich habe dies für Google Picasa gemacht, um auf Fotos auf mehreren Computern zugreifen zu können. Es funktioniert sehr gut, da Picasa nicht wirklich ein netowrk-fähiges Programm ist .. Für mich habe ich Folgendes getan:

  • Installieren Sie Picasa
  • Führen Sie die Anwendung aus. Dadurch werden alle erforderlichen Datenbankdateien erstellt.
  • Schließen Sie die Anwendung.
  • Navigieren Sie zu dem Verzeichnis, in dem sich die Datenbank befindet. Unter Windows 7 wird sie in c:\users \\ AppData\Local\Google erstellt
  • Es gibt zwei Ordner Picasa2 und Picasa2Albums Kopieren Sie diese Ordner an einen Netzwerkspeicherort. In meinem Fall habe ich einen Ordner mit dem Namen o:\PicasaDatabase erstellt und diese Ordner in diesen Ordner kopiert.
  • Benennen Sie die ursprünglichen Ordner in Picasa2.old und Picasa2Albums.old um

Führen Sie die folgenden Befehle von einer Eingabeaufforderung mit erhöhten Cmd aus:

mklink/D "c:\Users \\ AppData\Local\Google\Picasa2" "o:\PicasaDatabase\Picasa2"

mklink/D "c:\Users \\ AppData\Local\Google\Picasa2Albums" "o:\PicasaDatabase\Picasa2Albums"

Am Quellspeicherort wurden zwei symbolische Links erstellt, die auf das Netzlaufwerk verweisen.

Die Verwendung symbolischer Links wie dieser ist offensichtlich eine Problemumgehung für Anwendungen, die nicht netzwerkfähig sind und nur ein Benutzer gleichzeitig auf die Datenbank zugreifen kann.

0
TerryMcK

Ich hatte das gleiche Problem. Sie müssen sicherstellen, dass der Quellordner noch nicht vorhanden ist. (Wenn dies der Fall ist, benennen Sie es in etwas anderes um)

In diesem Fall sollte der Sicherungsordner unter MobileSync nicht vorhanden sein. Da Apple iTunes nach einem Backup-Ordner mit diesem Namen sucht, benennen Sie den vorhandenen Ordner einfach in etwas wie OriginalBackup um, damit iTunes ihn nicht findet. Stattdessen wird der mklink wie folgt mit dem Ordner "Backup to D:" synchronisiert

mklink/J C:\Benutzer\Dell\Apple\MobileSync\Backup D:\Apple\Backup\iPhoneXRBackup

0
user10840272