1

У меня есть Ubuntu Live USB. Я хочу проверить целостность живого USB. Это можно сделать, сравнив контрольную сумму созданного мной iso-файла с упомянутой в этом URL. Итак, я создал ISO-образ USB с помощью sudo cat /dev/sdb > /home/user/test.iso . Образ ISO, который я получаю, имеет размер 4 ГБ, поскольку usb имеет размер 4 ГБ, тогда как исходный ISO составляет менее 1 ГБ. Как я могу восстановить оригинальный ISO из живого USB?

1 ответ1

0

Вы можете "посчитать", сколько байтов вы хотите (используя df), и использовать dd только для копирования этого количества блоков:

Например: я записываю ISO 1,8 МБ на USB-ключ 1 ГБ:

# dd if=/usr/lib/memtest86+/memtest86+.iso of=/dev/sdb

Если я сделаю нормальный DD, он скопирует всю ГБ

# dd if=/dev/sdb of=/tmp/full_disk.iso
 1957888+0 records in
 1957888+0 records out
 1002438656 bytes (1.0 GB) copied, 2.56494 s, 391 MB/s

Используя df, я могу выяснить, сколько k-блоков (или 1024)

# df -P /dev/sdb
 Filesystem     1024-blocks  Used Available Capacity Mounted on
 /dev/sdb              1796  1796         0     100% /mnt

При этом можно скопировать только количество блоков, 1796 в моем случае:

# dd count=1796 bs=1024 if=/dev/sdb of=/tmp/usb.iso
 1796+0 records in
 1796+0 records out
 1839104 bytes (1.8 MB) copied, 0.00999846 s, 184 MB/s

Используя md5sum, мы видим, что файл usb.iso совпадает с исходным ISO:

# md5sum /usr/lib/memtest86+/memtest86+.iso /tmp/full_disk.iso /tmp/usb.iso 
 bbd27e6fb8747109cde9bb1e3e7117ab  /usr/lib/memtest86+/memtest86+.iso
 a42d80c87c091d04ae9d6426d70c4e82  /tmp/full_disk.iso
 bbd27e6fb8747109cde9bb1e3e7117ab  /tmp/usb.iso

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