Twórz kopie zapasowe za pomocą rsync: błąd 23

21

Próbuję wykonać kopię zapasową mojego / home, aby przenieść wszystkie dane z jednego komputera na inny. Chciałem zapisać kopię zapasową na tym samym komputerze i przenieść ją na inny. Ze względów bezpieczeństwa próbuję dowiedzieć się, jak to działa na komputerze bez dużej ilości danych (nowej), aby mieć pewność, że nie usunę czegoś zamiast go skopiować.

Uruchomiłem w terminalu:

sudo rsync -avz /home/maria /home/guest/backup

i miałem w rezultacie:

sent 58797801 bytes  received 23050 bytes  4705668.08 bytes/sec
total size is 100202958  speedup is 1.70
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1060) [sender=3.0.7]

Próbowałem jeszcze raz, z tym samym rezultatem. Nie mam pojęcia, które pliki nie zostały przesłane, co sprawia, że ​​cała kopia zapasowa jest dla mnie bezużyteczna (chciałem to zrobić automatycznie, aby o czymś nie zapomnieć i stracić).

Na obu komputerach mam ten sam system (Ubuntu 10.04). Wersja Rsync: 3.0.7-1ubuntu1.

Dziękuję za wszelkie wskazówki

Maria
źródło

Odpowiedzi:

25

Ponieważ pracujesz rsyncw trybie pełnym, powinieneś być w stanie zobaczyć, na czym polega problem. Zwykle jest to błąd odmowy uprawnień .

Załóżmy na przykład, że chcę wykonać kopię zapasową ~/.gvfsfolderu:

$ sudo rsync -av /home/arrange/.gvfs /tmp
[sudo] password for arrange: 
sending incremental file list
rsync: link_stat "/home/arrange/.gvfs" failed: Permission denied (13)

sent 12 bytes  received 12 bytes  48.00 bytes/sec
total size is 0  speedup is 0.00
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1060) [sender=3.0.7]

Dlatego radzę wyliczyć dane rsync -avwyjściowe i poszukać podobnych błędów.

zorganizować
źródło
Uruchomiłem sudo rsync -avz --exclude='/*/.gvfs' /home/maria /home/guest/backupi tym razem nie ma błędów. Wielkie dzięki.
Maria
'/*/.gvfs'nie działało dla mnie, skończyło się na tym'.gvfs'
James McMahon
11
Jeśli ktoś uruchomi to listę większą niż bufor terminala, możesz po prostu dodać | grep faileddo komendy rsync, aby wyświetlić tylko pliki, które spowodowały błędy.
devius
2
@devius +1. Tylko wskazówka ... Proponuję pobrać ciąg „nie powiodło się:”. Kolumna na końcu pozwoli na zebranie tylko wiadomości rsync, z wyłączeniem plików / katalogów z „porażką” w nazwie / ścieżce.
bitfox
2

Mam również ten błąd. W moim przypadku rsync zgłosił ten błąd, ponieważ przekazałem mu nieistniejący katalog źródłowy.

Joel
źródło
0

Jeśli przesyłasz pliki do zdalnego magazynu (np. FreeNAS itp.) - nie zapomnij ustawić prawidłowych reguł. Nie tylko ustaw właściciela , ale także dołącz tę listę do odczytu i zapisu .

przykład freeNAS

Jestem uzależniony od tego.

skywinder
źródło