Как проверить контрольную сумму файловой системы SquashFS на жестком диске без разделов
# lsblk -f /dev/sda
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINT
sda squashfs 4.0
# mount -v /dev/sda /mnt
mount: /dev/sda mounted on /mnt.
$ df -B1
Filesystem 1B-blocks Used Available Use% Mounted on
/dev/sda 20329529344 20329529344 0 100% /mnt
# umount -v /dev/sda
umount: /mnt (/dev/sda) unmounted
, 20329 529344 байт (α).
# unsquashfs -stat /dev/sda | grep size
Filesystem size 20329464124 bytes (19852992.31 Kbytes / 19387.69 Mbytes)
Block size 131072
, 20329 464124 байт (β) (β<α).
# dd if=/dev/sda status=progress | head -c 20329464124 | md5sum | tee -a md5sum.txt
20291548160 bytes (20 GB, 19 GiB) copied, 214 s, 94.8 MB/s8a88b45cd9968045f11f0b164be62fb5 -
, другой другой размер.
# dd if=/dev/sda status=progress | head -c 20329464124 | sha1sum | tee -a sha1sum.txt
20282106880 bytes (20 GB, 19 GiB) copied, 214 s, 94.8 MB/s53de77e6f63123c0379d1e1279c14957eb4cc455 -
, еще один другой размер.
Вопрос:
Какой размер правильный? (α) или (β)?
Это сработает? (30~40МБ/с)
head /dev/sda -c xxx | pv -pr -s xxx | md5sum
- Если нет, то как выполнить контрольную сумму
- соответственно
- на приемлемой скорости
- не записывая его в файл изображения
dd if=/dev/sda bs=1 size=xxx status=progress | md5sum
может работать, но 400–600 КБ/с — это слишком медленно.