it-swarm.com.de

Symbolische Verknüpfung erstellen: Protokollfehler

Ich habe Linux (Centos) auf meiner virtuellen Box erstellt. Wenn ich darauf ssh und versuche, einen symbolischen Link zu erstellen (in meinem freigegebenen Ordner mit vollem Zugriff):

ln -s path/folder/example myFolder

Ich erhalte eine Fehlermeldung:

ln: creating symbolic link `myFolder': Protocol error

Gibt es einen Grund oder eine Lösung dafür?

29
TroodoN-Mike

Es ist ein Problem mit dem Host-Dateisystem. Überprüfen Sie, ob die Berechtigungen für den Host-Ordner ausreichend sind und das Host-Dateisystem Symlinks unterstützt.

19
Paul Dixon

Klicken Sie mit der rechten Maustaste auf die Eingabeaufforderung und wählen Sie "Als Administrator ausführen" (oder ein anderes Programm, mit dem Sie diese Symlinks erstellen, muss als Administrator ausgeführt werden).

25
Angela Zenner

Hier ist die Lösung in einem Ticket auf virtualbox.org: https://www.virtualbox.org/ticket/10085#comment:32 (Hinweis: Führen Sie "whoami/priv" in der Konsole mit Administratorrechten aus )

Ich habe einige Windows-Untersuchungen zu diesem Fehler durchgeführt.

Wenn Ihr Benutzer vom Typ Administrator ist (und kein Standardkonto), können Sie VB mit Symlinks, die ohne die UAC-Eingabeaufforderung funktionieren, nicht ausführen.

Wenn Sie ein Standardbenutzerkonto haben (oder wenn Sie bereit sind, Ihr Konto auf Standard umzustellen und ein separates Administratorkonto zu erstellen), ist die Lösung vorhanden. Sie benötigen jedoch Administratorrechte, um einige der Schritte auszuführen (nicht unbedingt für Ihr Benutzerkonto erforderlich).

  1. Führen Sie die lokale Sicherheitsrichtlinie aus (Win + R, geben Sie "secpol.msc" ein, bestätigen Sie die Benutzerkontensteuerung). Navigieren Sie dann zu "Lokale Richtlinien -> Zuweisen von Benutzerrechten".
  2. Suchen Sie die Berechtigung "Symbolische Links erstellen" und doppelklicken Sie darauf. Fügen Sie Ihren Benutzer zur Liste der Objekte mit dieser Berechtigung hinzu. Oder Sie können die Gruppe "Benutzer" hinzufügen. Abmelden und anmelden. Sie können den Erfolg überprüfen, indem Sie in der Konsole ausführen:

    whoami /priv
    

    Wenn Sie das Privileg SeCreateSymbolicLinkPrivilege aktiviert sehen, haben Sie es gut gemacht.

  3. Stellen Sie sicher, dass Ihr Benutzer über den richtigen Zugriff auf den freigegebenen Ordner auf dem Host-System verfügt.

  4. Wie bereits erwähnt, führen Sie aus

    VBoxManage setextradata VM_NAME VBoxInternal2/SharedFoldersEnableSymlinksCreate/SHARE_NAME 1
    

    in einer Konsole aus dem Ordner C:\Programme\VirtualBox. Vergessen Sie nicht, VM_NAME durch den Namen Ihres VM und SHARE_NAME durch den Namen des freigegebenen Ordners zu ersetzen (wie in den VM Einstellungen) angegeben).

  5. Sie sind fertig.

Wenn Sie zufällig eine der "kleineren" Windows-Versionen (z. B. 7 Home) besitzen, verfügen Sie nicht über das Dienstprogramm "secpol.msc". Weitere Informationen finden Sie unter Gewährung von SeCreateSymbolicLink unter Windows Vista Home Edition .

20
Hector GR

Soweit ich weiß, unterstützen Windows VirtualBox-Hosts keine Links (von https://www.virtualbox.org/manual/ch04.html#sharedfolders )

Ab Version 4.0 unterstützen freigegebene VirtualBox-Ordner unter den folgenden Bedingungen auch symbolische Links (Symlinks):

Das Host-Betriebssystem muss Symlinks unterstützen (d. H. Ein Mac-, Linux- oder Solaris-Host ist erforderlich).

Derzeit unterstützen nur Linux und Solaris Guest Additions Symlinks.

Aus Sicherheitsgründen darf das Gastbetriebssystem standardmäßig keine Symlinks erstellen. Wenn Sie dem Gastbetriebssystem vertrauen, dass es die Funktionalität nicht missbraucht, können Sie die Erstellung von Symlinks für "Freigabename" aktivieren mit:

VBoxManage setextradata "VM name" VBoxInternal2/SharedFoldersEnableSymlinksCreate/sharename 1

3
cancerbero