rsync „pomija nieregularny plik” podczas klonowania mojej biblioteki Aperture


38

Próbuję użyć rsync do utrzymania kopii zapasowej mojej biblioteki Aperture. Po uruchomieniu polecenia synchronizacji, aby zobaczyć, co się stanie, jest to wynik:

rsync --dry-run -r "/Volumes/Data/Aperture Library.aplibrary" "/Volumes/Backup"

skipping non-regular file "Aperture Library.aplibrary/Database/BigBlobs.apdb"
skipping non-regular file "Aperture Library.aplibrary/Database/Faces.db"
skipping non-regular file "Aperture Library.aplibrary/Database/History.apdb"
skipping non-regular file "Aperture Library.aplibrary/Database/ImageProxies.apdb"
skipping non-regular file "Aperture Library.aplibrary/Database/Library.apdb"
skipping non-regular file "Aperture Library.aplibrary/Database/Properties.apdb"

Komenda „file” mówi, że przynajmniej plik „.db” to „baza danych SQLite 3.x”. Jak mogę zsynchronizować te pliki z rsync?

Odpowiedzi:


48

Wygląda na to, że te pliki to dowiązania symboliczne.

Aby skopiować je jako dowiązania symboliczne, użyj --links.

Aby skopiować pliki, na które wskazują, użyj --copy-links.

Aby uzyskać szczegółowe informacje, zobacz SYMBOLIC LINKSsekcję w man rsync.


37

Użyj -azamiast -r. -aoznacza odtwarzanie hierarchii plików, w tym specjalnych plików i uprawnień. -roznacza tylko powtarzanie się w katalogach. Dla kopii zapasowej chcesz -a.


1
Powiedziałbym, że jest to praktyczne rozwiązanie, chociaż przydatne jest wyjaśnienie linków. Używam przez rsync -hiva --log-file=log.txt source destwiększość czasu .. lubię hiva ~ winter jako mnemonic
ptim
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.