TGViewer
BashTex | Linux BashTex | Linux @bash_tex · 2.51K subscribers
Post #162 1.04K
Проверка архивов на целостность: избегаем битых бэкапов

Создавать бэкапы - хорошая практика. Но что, если архив оказался битым в самый нужный момент? 😱 Разберемся, как проверять целостность архивов, чтобы не потерять важные данные.

1️⃣ Проверка tar-архива. Если архив создавался с помощью tar, его можно проверить без распаковки:


tar -tvf backup.tar.gz


Если файл поврежден, команда выдаст ошибку:


gzip: stdin: unexpected end of file
tar: Child returned status 1
tar: Error is not recoverable: exiting now


🧑‍💻 Автоматическая проверка в скрипте:


if tar -tzf backup.tar.gz &>/dev/null; then
echo "Архив исправен"
else
echo "Архив поврежден!"
fi


2️⃣ Проверка архивов .zip. Для .zip можно использовать встроенную проверку:


unzip -t backup.zip


Если файл битый, команда выдаст ошибки.

🧑‍💻 Автоматическая проверка в скрипте:


if unzip -t backup.zip | grep -q "No errors detected"; then
echo "Архив исправен"
else
echo "Архив поврежден!"
fi


3️⃣ Проверка и автоматическое исправление rar. Если архив в формате .rar, его можно проверить так:


rar t backup.rar


Если архив поврежден, rar может попытаться его восстановить:


rar r backup.rar


4️⃣ Защита от битых архивов при создании

📁 Контрольные суммы. Считаем SHA256-хеш перед передачей или копированием:


sha256sum backup.tar.gz > backup.sha256


А потом проверяем:


sha256sum -c backup.sha256


📦 Двойная упаковка с тестированием


tar -cvf - logs/ | gzip | tee backup.tar.gz | gzip -t


📌 Здесь tee дублирует поток, а gzip -t сразу проверяет целостность.

BashTex 📱 #linux #utils
  • 👍 10
More from @bash_tex
  1. Oct 13, 2026openat2(): как Linux защищает от выхода за пределы каталога Допустим, приложение должно чи…
  2. Oct 12, 2026xargs против while read: где быстрее и безопаснее Обе конструкции позволяют обработать спи…
  3. Oct 9, 2026BashTex 📱 #мем
  4. Oct 8, 2026Bridge FDB - как Linux bridge узнаёт, где находится MAC Linux bridge не знает заранее, за…
  5. Oct 7, 2026/dev/tcp - сетевое соединение средствами Bash В Bash есть малоизвестная возможность работа…
  6. Oct 6, 2026Ephemeral ports - почему заканчиваются исходящие TCP-порты Когда приложение устанавливает…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →