Резервное копирование файлов с помощью rsync: ошибка 23

21

Я пытаюсь сделать резервную копию моего / дома, чтобы перенести все данные с одного компьютера на другой. Я хотел сохранить резервную копию на том же компьютере, а затем перенести ее на другой. По соображениям безопасности я пытаюсь узнать, как это работает на компьютере без большого количества данных (новых), чтобы быть уверенным, что я не буду удалять что-то вместо того, чтобы копировать это.

Я бегал в терминал:

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

и я получил в результате:

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]

Я попробовал еще раз, с тем же результатом. Я понятия не имею, какие файлы не были переданы, что делает всю резервную копию бесполезной для меня (я хотел сделать это автоматически, чтобы не забыть о чем-то и не потерять его).

На обоих компьютерах у меня одна и та же система (Ubuntu 10.04). Версия Rsync: 3.0.7-1ubuntu1.

Спасибо за любые советы

Мария
источник

Ответы:

25

Что ж, поскольку вы работаете rsyncв подробном режиме, вы должны увидеть в его выводе, в чем заключается проблема. Обычно это ошибка с отказом в разрешении .

Например, предположим, я хочу сделать резервную копию ~/.gvfsпапки:

$ 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]

Поэтому мой совет - просмотреть rsync -avрезультаты и найти похожие ошибки.

организовать
источник
Я бегал sudo rsync -avz --exclude='/*/.gvfs' /home/maria /home/guest/backupи на этот раз без ошибок. Большое спасибо.
Мария
'/*/.gvfs'не работал для меня, в конечном итоге использовать'.gvfs'
Джеймс МакМэхон
11
Если кто-либо запускает его в списке, превышающем размер буфера терминала, вы можете просто добавить его | grep failedв команду rsync, чтобы получить список только тех файлов, которые выдавали ошибки.
Деви
2
@devius +1. Просто подсказка ... Я предлагаю извлечь строку «не удалось». Столбец в конце позволит собирать только сообщения rsync, исключая файлы / каталоги с ошибкой в ​​их имени / пути.
битфокс
2

Я тоже получил эту ошибку. В моем случае rsync выдал эту ошибку, потому что я передал ей несуществующий исходный каталог.

Joel
источник
0

Если вы переносите файлы в удаленное хранилище (например, freeNAS и т. Д.) - не забудьте установить правильные правила. Не только установить владельца , но и включить этого владельца в список для чтения и записи .

пример freeNAS

Я подсел на это.

skywinder
источник