Файлын архивын арчилгааны үндсэн үйлдлүүд
Файлын архивын дискний эрүүл мэндийг шинжлэх SMART тест ба файлын гэмтлийг оношлох checksum баталгаажуулалт
SMART тест
SMART бол Self-Monitoring, Analysis and Reporting Technology гэсэн үгсийн товчлол юм. Энэ нь дискний фирмвэр дээрх програм бөгөөд дискний ажиллагааны статистик бүртгэл хөтлөх, дискний эрүүл мэндийг шинжлэх болон тайлагнах зэрэг ажил хийдэг.
SMART тест хийхийн тулд дискний фирмвэртэй харилцах програм хэрэгтэй. Үүнийг дараах тушаалаар суулгана.
sudo apt install smartmontools
Дор SMART тестийн үндсэн үйлдлүүдийг танилцуулав.
- Дискний SMART мэдээллийг унших
sudo smartctl -a /dev/sdbЭнд дискийг /dev/sdb зам дээр байна гэв. Хэрэв өөр зам дээр байвал /dev/sdc гэх мэтчилэн тохирох замыг зааж өгнө.
-
Тест эхлүүлэх
Энэ нь фирмвэрт дискний бүх гадаргууг шалгах тушаал өгч буй явдал юм. Шалгалтыг фирмвэр хийх тул компьютерийн үйлдлийн систем дээрээс диск огт ашиглагдахгүй байгаа мэт харагдана. Иймээс компьютерээ унтраах юм уу дискээ салгаж болохгүй. Шалгалт хэдэн цагаар үргэлжлэх бөгөөд хэзээ дуусахыг тушаал өгөх үед мэдээлдэг. Хэрэв хүсвэл шалгалтыг явцыг харж болно.sudo smartctl -t long /dev/sdb - Тестийн явцыг харах
sudo smartctl -l selftest /dev/sdb - Тестийн үр дүнг харах
Үүний тулд дээрх тушаалыг өгнө. Бас SMART мэдээллийг бүхлээр нь гаргаад харж болно.
Чексум
Дараах тушаал нь тухайн хавтас (дэд хавтас ч хамарна) дахь файлуудыг уншиж чексум гаргана. Гарсан чексумыг "checksums.sha256" гэсэн нэртэй ганц файлд бичиж хадгална.
find . -type f ! -name '*.sha256' -print0 | sort -z | xargs -0 sha256sum > checksums.sha256
Чексум шалгахдаа дараах тушаал өгнө.
sha256sum -c --quiet checksums.sha256
--quiet горимд зөвхөн алдаа гарсан файлуудыг л харуулдаг. Гаралт хоосон байвал бүх чексум таарч байна гэсэн үг.
Чексум файл үүсгэсний дараа шинэ файл нэмсэн, хуучин файл устгасан, файлын нэр сольсон бол баталгаажуулалт алдаа заана. Иймээс архив тогтвортой болсон үед ийм чексум файл үүсгэвэл тохиромжтой. Түүнчлэн ийм "том" чексум файлыг өөр диск юм уу үүлэнд хадгалбал илүү найдвартай болно.
Харин тогтворгүй архивын хувьд файл бүрийн чексумыг тус тусад нь хадгалбал тохиромжтой. Үүний тулд дараах тушаал өгнө. Энэ нь зөвхөн чексумгүй файлуудын чексумыг л үүсгэнэ. Мөн шинээр үүсэж буй чексумыг мэдээлнэ.
find . -type f ! -name '*.sha256' -print0 \
| sort -z \
| xargs -0 -I{} sh -c '
f="$1"
if [ ! -f "$f.sha256" ]; then
echo "Creating checksum of: $f"
sha256sum "$f" > "$f.sha256"
fi
' sh {}
Ийм олон чексумыг нэг дор шалгахдаа дараах тушаал өгнө.
find . -type f -name '*.sha256' \
-exec sha256sum -c --quiet {} \;
Энэ нь бүх *.sha256 чексум файлуудыг хайж олоод улмаар нэг бүрчлэн шалгана. --quiet горимоор ажиллах тул зөвхөн алдаа гарсан файлуудыг л харуулна.