16

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

rsync: read errors mapping "/home/folder/file.ext": Input/output error (5)
WARNING: /home/folder/file.ext failed verification -- update discarded (will try again).

Какой лучший курс действий? Это просто битый файл? Или что-то не так с жестким диском в расположении файла? Должен ли я просто удалить его и скопировать одну из резервных копий в папку файла? Или есть что-то еще / больше, что я должен сделать?

3 ответа3

14

Ошибка rsync

 read errors mapping ....: Input/output error (5)

указывает на невозможность rsync для чтения или записи файла. Наиболее вероятные причины этой ошибки - дефекты диска, либо в SRC, либо в каталоге TGT. Другие возможности, однако, включают недостаточные разрешения, блокировку файлов антивирусными программами и, maybe другие причины.

Первый шаг к диагностике - попытаться скопировать файлы вручную. Это может сработать, если, например, источником ошибки был дефект диска в каталоге TGT; повторив операцию позднее, вы запишете в другой раздел диска, и проблема может испариться.

Кроме того, вы можете обнаружить, что не можете получить доступ к файлу в каталоге SRC. В этом случае я предлагаю вам использовать любую из утилит проверки диска, доступных вашему дистрибутиву.

Недостаточные привилегии, антивирус, легче диагностировать.

Наконец, если у вас в каталоге SRC поврежденный сектор, вы можете исключить его из будущих запусков rsync с помощью

rsync -av --exclude='/home/my_name/directory_with_corrupt_files/*'
3

У меня была похожая проблема, у меня было устройство с предохранителем через USB, которое часто отключалось, вызывая ошибки ввода-вывода. Моя резервная копия не может быть завершена, потому что ошибки ввода-вывода начнутся на полпути в rsync, и, несмотря на многократное выполнение rsync, в какой-то момент синхронизация не продвинется дальше обновления существующих файлов.

Мое решение было использовать

--ignore-existing 

вариант. Таким образом, я мог запустить синхронизацию в цикле, пока не увидел состояние выхода 0.

Конечно, в этом случае я не заботился об обновлениях существующих файлов.

0

У меня есть 2 внешних диска, которые я синхронизирую, используя rsync . Я регулярно выполняю эту задачу на одной из двух машин и часто для удобства переключаюсь с одной на другую. У меня есть 4 машины с Debian 9, и я использую эти диски на каждой из них.

Этим утром я использовал следующее:

rsync -ahv --delete drive-x drive-y 

и был удивлен, получив несколько сотен сообщений об ошибках.

в основном: rsync: readlink_stat... failed: Input/output error (5)
также: rsync: rsync: recv_generator: mkdir ... failed: Read-only file system (30)

В процессе выяснения того, что произошло, я дважды перемонтировал диски, перезагрузил их, запустил rsync без --delete и в основном мои обычные попытки исправить то, что надежно работало в течение длительного времени. Даже думал об установке rsync снова. Прежде чем я это сделал, я решил rsync 2 дисков на другой машине, которую я запускаю в автономном режиме. rsync работал так, как должен.

Прочитав материал, размещенный здесь, я установил clamav , обновил подписи и отсканировал мой домашний каталог. Я регулярно использую это на другой машине. Я нашел 1 и только 1 PUA и удалил его. Я всегда удаляю PUA. Затем я перемонтировал два диска на этом компьютере и добавил разные тестовые файлы и папки на каждый диск.

Я запустил rsync -ahv --delete drive_x drive_y и все работало нормально.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .