Was fehlt mir, damit Symlinks mit CIFS funktionieren?

9

Szenario

Ich habe eine kopflose Ubuntu 10.10 RC-Box, auf der einige Dienstanwendungen in meinem Heimnetzwerk ausgeführt werden. Ich habe einen Windows 2008-Server, auf dem alle meine Netzwerkfreigaben und Festplatten gehostet werden. Ich mounte derzeit die Netzwerklaufwerke beim Booten mit FSTAB mit den folgenden Optionen:

credentails=/etc/smbcredentials, iocharset=utf8,uid=1000,gid=1000,file_mode=0777,dir_mode=0777,noserverino,sfu

Frage

Welche Option muss ich einstellen, damit sich SYMLINKS ordnungsgemäß mit CIFS registriert? Ich muss zugeben, dass die Informationen in man mount.cifsnicht klar genug zu definieren scheinen, welche Optionen ich für eine ordnungsgemäße Unterstützung verwenden sollte.

Problem

Wenn Sie RSYNC vom Ubuntu-Computer ausführen, um ausgewählte Ordner auf den Windows-Freigaben zu sichern, wird nicht versucht, die SYMLINKS neu zu erstellen. Ich befürchte, dass dies zu einem Problem führt, wenn ich später versuche, diese Dateien wiederherzustellen, falls dies jemals erforderlich sein sollte.


quelle

Antworten:

6

Ich bin mir nicht sicher, aber ich befürchte, dass eine cifs-Freigabe, die in Ihrem Fall im Wesentlichen ein Ordner auf einer über das Netzwerk verfügbaren ntfs-Partition ist, keine symbolischen Links verwalten kann.
Anders wäre es, wenn die cifs-Freigabe von einem Samba-Server auf einem Linux-Computer bereitgestellt würde.

Die Lösung, die mir in den Sinn kommt, ist:

  • Erstellen Sie eine ausreichend große Datei auf der Freigabe (z. B. mit dd).
  • Erstellen Sie ein ext4-Dateisystem für diese Datei
  • Hängen Sie die Datei als Partitionsimage mit der Schleife -o ein
  • Verwenden Sie diese ext4-Partition als Ziel für Ihre Sicherung
Enzotib
quelle
Möglicherweise eine Lösung, und ich habe nicht darüber nachgedacht. Es wäre höchstwahrscheinlich auch meine einfachste Lösung.
Es hat bei mir nicht funktioniert
PMat
0

Ich bin mir ziemlich sicher, dass "symbolische Links" in Windows (in der MS-Welt Junctions genannt) vor Vista nur ein Verzeichnis mit einem anderen Verzeichnis verknüpfen konnten. Ich bezweifle, dass CIFs Junctions auf einer Windows-Freigabe erstellen können, obwohl ich sehe, dass SMB Aufrufe im Ioctl-Stil unterstützt, sodass die Möglichkeit besteht, dass ein versierter Client einen Windows-Server zum Erstellen einer Junction zwingen kann.

Mein Problem ist, dass ich pxelinux verwenden möchte, um eine Windows-Verzeichnisfreigabe zum Booten einer Linux-Box bereitzustellen. Es wäre schön, das Dateisystem zu haben, auf das über Windows zugegriffen werden kann, da Sie dann Teile des Dateisystems auf Ihrem Boot-Server verfügbar machen können, ohne sich darauf verlassen zu müssen, dass der gebootete Computer ausgeführt wird.

Die Lösung, die ich mir ausgedacht habe, ist die Verwendung von NFS auf Cygwin. Auf diese Weise können Sie den NFS-Mount weiterhin für Ihr Linux-Netzwerk verfügbar machen. Sie können dann reguläre Windows-Freigaben verwenden, um dieselben Verzeichnisse für Ihr Windows-Netzwerk verfügbar zu machen, wenn Sie möchten.

Bisher hat sich das Experimentieren in einer virtuellen Maschine als sehr hilfreich erwiesen.

-Waldemar


quelle