Ich möchte denselben Ordner an zwei verschiedenen Orten in meinem Ubuntu haben. Wenn ich etwas in einem aktualisiere, sollte es auch am anderen Speicherort aktualisiert werden.
Wie kann ich das erreichen?
directory
shared-folders
Aman Pandey
quelle
quelle
symbolic link
ist die einfachste Lösung für Ihre Anforderung und hängt nicht von Superuser-Berechtigungen ab.man ln
für mehr Informationen.Antworten:
Verwenden Sie Bindungshalterungen .
Angenommen, Sie haben ein vorhandenes Verzeichnis
/home/pandey/original
und möchten es spiegeln ,/home/pandey/mirror
sodass alles, was Sie in einem der beiden Verzeichnisse tun, automatisch auch im anderen Verzeichnis ausgeführt wird .Dies erfordert kein Synchronisieren oder Kopieren zwischen den beiden Verzeichnissen. Ein Bind-Mount ist nur eine weitere Ansicht des ursprünglichen Verzeichnisses, und was in einem passiert, passiert auch im anderen.
Erstellen Sie (als Ihr Benutzer) das neue Verzeichnis
/home/pandey/mirror
:Binden Sie das ursprüngliche Verzeichnis an den neu erstellten Pfad. Dies erfordert Root-Zugriff:
Genießen.
Um dies einfach rückgängig zu machen
Siehe auch diese Frage und ihre hervorragende Selbstantwort beim Stapelaustausch über Bind-Mounts .
quelle
cd /home/pandey; ln -s original mirror
den gleichen Effekt und würde keine Sudo-Rechte erfordern?Wie in den Kommentaren ausgeführt, aber nicht als richtige Antwort:
In vielen Fällen ist eine symbolische Verknüpfung die einfachste Lösung.
Sie können sie einfach in der Befehlszeile erstellen (mit dem
ln
Befehl mit-s
Parameter). Sie können sie auch einfach über eine GUI erstellen: In den meisten Dateibrowsern (nautilus, ...) können Sie einen symbolischen Link per Drag & Drop (wie beim Verschieben einer Datei) erstellen, während Sie eine Modifizierertaste (STRG + UMSCHALTTASTE) gedrückt halten.Beispiel für die Verwendung der Befehlszeile:
quelle
Sie können dies tun, indem Sie einen Crontab-Job festlegen:
crontab -e
i
, um den Einfügemodus Ihres VIM-Editors zu aktivieren.Sie können dort den Befehl eingeben, den Sie ausführen möchten, um alle Dateien des Ordners in einen anderen Ordner zu kopieren. Zum Beispiel, wenn Sie alle Dateien kopieren in
/home/user/folder_name
zu/home/user/public
diesem Befehl in Ihrer einfügen sollstcrontab
Datei:Dadurch werden alle Dateien im gewünschten Intervall kopiert. Wenn Sie jeden Tag um 21:30 Uhr alle Dateien kopieren möchten, sollten Sie Folgendes bearbeiten:
Weitere Informationen über die crontab Blick hier oder Verwendung
man crontab
.quelle