Копирование на USB-накопитель не работает без указания ошибки.

Вопрос или проблема

При проверке резервных копий файловой системы я обнаружил, что содержимое двух из них не совпадает с данными, которые были сохранены. Ошибок не было зафиксировано. У некоторых файлов были различия по сравнению с оригиналами.

Для выявления этого я использовал sha1sum для создания контрольных сумм для оригиналов и копий. Когда случайно выбранные файлы показали различия, я использовал diff, чтобы подтвердить, что они не одинаковы. Затем я использовал cmp, который также подтвердил, что они не одинаковы, и cmp предоставил смещение для первого различия. Используя hexedit, я визуально подтвердил, что они не одинаковы. Иногда различие составляло всего один или два байта, в то время как у других были большие различия. Один из несовпадающих файлов был zip-файлом, который я выбрал для дальнейшего тестирования. Этот zip-файл сообщил о повреждении, когда я попытался открыть его, тем самым подтвердив, что он неправильный.

Эти файлы копируются на флеш-накопители USB с помощью

cp -r xxx .

внутри сценария оболочки, выполняемого из командной строки. Текущая директория является корнем флеш-накопителя. Ошибок в терминальной сессии, выполняющей команду, не зафиксировано.

Какая техника может быть использована для улучшения целостности этих резервных копий сценариев оболочки?

Это происходит как на версии 22.04, так и на 24.04. Флеш-накопители на 32 ГБ отформатированы в NTFS.

Ответ или решение

Проблема с копированием данных на USB-накопитель без индикации ошибки: решение и рекомендации

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

1. Причины проблемы

Незначительные различия в файлах, которые вы обнаружили с помощью утилит sha1sum, diff, и cmp, могут быть вызваны несколькими факторами:

  • Ошибки записи: USB-накопители, особенно формата NTFS, могут испытывать проблемы с чтением и записью данных. Это может привести к повреждению файлов без очевидных логов ошибок.
  • Ошибки файловой системы: Если файловая система на вашем USB-накопителе повреждена или неправильно размечена, это может оказать влияние на процесс копирования.
  • Ограничения системы: Некоторые операции на уровне ОС могут блокировать корректное копирование файлов с различными атрибутами и метаданными.

2. Рекомендации по повышению целостности данных

Для повышения целостности ваших резервных копий, обратите внимание на следующие практики:

2.1. Использование проверки целостности

Добавьте в свой скрипт пост-операционные проверки. Например, после выполнения операции копирования, вычисляйте контрольные суммы для файлов на USB и сравнивайте их с оригиналами:

# Копируем файлы
cp -r xxx .

# Проверяем контрольные суммы
find . -type f | while read file; do
  if ! sha1sum -c <(echo "$(sha1sum "$file") $file"); then
    echo "Error: $file differs!"
  fi
done
2.2. Использование rsync

Рассмотрите возможность использования rsync вместо cp. Эта утилита не только копирует файлы, но и выполняет проверку их целостности и может восстановить поврежденные файлы:

rsync -av --progress --checksum ./source/ ./destination/
2.3. Форматирование и проверка файловой системы

Откатывайте и форматируйте ваш USB-накопитель, если это возможно, и проверьте его целостность:

sudo ntfsfix /dev/sdX

Где sdX — это идентификатор вашего устройства.

2.4. Обновление драйверов и системы

Убедитесь, что ваша система обновлена, и используемые вами драйверы для USB-устройств актуальны.

2.5. Использование альтернативных файловых систем

Если допустимо, рассмотрите возможность использования других файловых систем для резервного копирования, таких как ext4, которые могут быть более надежными в работе с Linux.

Заключение

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

Оцените материал
Добавить комментарий

Капча загружается...