Наши партнёры


Подсчитываем md5 (хеш-сумму) в Linux

Проверить MD5 (хеш-сумму) в Linux проще всего именно в терминале. Через какой-либо графический интерфейс необходимо будет сделать больше манипуляций, чем просто скомандовать в терминале Linux следующее:

md5sum /home/pavel/Дистрибутивы/lubuntu-12.04-desktop-i386.iso

Само собой разумеющееся путь до необходимого вам файла, (/home/pavel/Дистрибутивы/lubuntu-12.04-desktop-i386.iso) необходимо прописывать свой, тот который соответствует нужному объекту для подсчета MD5 суммы в Linux.

Чтобы не вводить путь к файлу вручную, его можно скопировать следующим образом. Через файловый менеджер заходим в каталог, где собственно находится тот нужный нам файл. Адресную строку в файловом менеджере необходимо перевести из вида «иконок» в текстовый вид, клавишами <Ctrl+L>, дальше можно скопировать путь либо с помощью мышки через правый клик, либо клавишами <CTRL+C>. Переходим в терминал и к написанной команде «md5sum» через пробел добавляем наш путь с полным названием файла.

$ md5sum /home/pavel/Дистрибутивы/lubuntu-12.04-desktop-i386.iso
0fc9564b8fde8ff56100c3d7814fa884
/home/pavel/Дистрибутивы/lubuntu-12.04-desktop-i386.iso

Команды в Linux являются стандартном для всех и значит, что команда md5sum подойдет для любого дистрибутива Linux, в котором бы вы не находились. Это и есть одно из достоинств командной строки!!!

Проверка MD5 (хеш-сумм) требуется после загрузки больших файлов, которые не смогут нормально работать, если какие-либо файлы повредились или каким-то образом изменились. Проверка MD5 сумм в основном применятся к .iso файлам, чаще всего к дистрибутивам. Если .ISO файл поврежден, то его не стоит записывать на USB брелок (флешку), а тем более на оптический диск, дистрибутив Linux при установке будет сообщать об ошибке каких-либо файлов.

После записи дистрибутива Linux на оптический диск нужно проверить целостность, узнать его MD5 сумму

[ads]

В этой статье мы продолжим углубляться в мир командной строки и сверим MD5 записанного оптического с MD5 суммой исходного файла .ISO с помощью консольной утилиты isoinfo. Для начала мы выудим немного первичной информации о записанном диске командой:

isoinfo -d -i /dev/sr0

Где /dev/sr0 это DVD-ROM, для уточнения имени вашего примонтированного оптического диска, в том случае если он у вас не один, можно найти по выводу этой команды:

mount

Из имеющейся информации после ввода:

$ isoinfo -d -i /dev/sr0

Будет иметься примерно следующее:

CD-ROM is in ISO 9660 format
System id:
Volume id: Lubuntu 12.04 i386
Volume set id:
Publisher id:
Data preparer id: XORRISO-1.0.8 2011.04.14.073001, LIBISOBURN-1.0.8, LIBISOFS-1.0.8, LIBBURN-1.0.6
Application id:
Copyright File id:
Abstract File id:
Bibliographic File id:
Volume set size is: 1
Volume set sequence number is: 1
Logical block size is: 2048
Volume size is: 352406
El Torito VD version 1 found, boot catalog is in sector 320
Joliet with UCS level 3 found
Rock Ridge signatures version 1 found
Eltorito validation header:
Hid 1
Arch 0 (x86)
ID ''
Key 55 AA
Eltorito defaultboot header:
Bootid 88 (bootable)
Boot media 0 (No Emulation Boot)
Load segment 0
Sys type 0
Nsect 4
Bootoff 52A18 338456

Для нас важны эти строчки:

Logical block size is: 2048

Volume size is: 352406

Далее будем подставлять эти строки в следующую команду, которая нам сообщит MD5 сумму

dd if=/dev/sr0 bs=2048 count=352406 conv=notrunc,noerror | md5sum -b

Обратите внимание на три пункта, которые вы должны подставить свои:

  • /dev/sr0 — путь до оптического диска (если он у вас один, значит этот пункт без изменений)
  • bs= 2048 — у вас своё значение «Logical block size is:»
  • count=352406 — из значения «Volume size is:».

После подсчета вы получите примерно следующее:

352406+0 записей считано
352406+0 записей написано
скопировано 721727488 байт (722 MB) 322e76e15cbe9ae4b964f3e6cbe49e37 *-
, 55,3223 c, 13,0 MB/c

322e76e15cbe9ae4b964f3e6cbe49e37 — это и есть MD5 сумма диска. Если, она совпадает со значение указанном на сайте, где вы скачивали файл или с исходным файлом на компьютере, то значит, диск записался без ошибок. На практике бывает, что сумма MD5 часто не совпадает с суммой MD5 указанной на сайте из-за ошибок при чтении диска.

Комментарии:

5 комментариевПодсчитываем md5 (хеш-сумму) в Linux

  • GBalakhchi

    Для проверки записи диска нужно всего лишь дать команду:
    $ md5sum /dev/hda
    (если оптический диск определяется у вас hda, может определяться и по другому — узнайте с помощью mount).
    Включится дисковод и через непродолжительное время получите ответ:
    d790058a688150748e7a3b62477a3458 /dev/hda
    И всё!

    • treshrmrf

      нет не усё!
      если просто (md5sum /dev/hda или /dev/dvd) то hash посчитается вместе с служебной
      информацией записаной на диск и вывод md5 hash будет не верным
      правильно как написано в статье.

  • pheophano

    Большое спасибо. Замечательно доходчиво написано, даже для новичков, каковым я и являюсь.

  • Евгений

    а у меня на зпгрузочной флешке нет файла iso во всяком случае найти я егопока не смог. А вот на главном сайте Ubuntu предлагается «скачать файлы» SHA and SHA.pgp в какую-то «одну» директорию. Наверное им это ясно. Я рад за них. НО не за себя.

  • Приветствую! Спасибо за статью.
    Попробовал два способа — самый первый в статье — md5sum /path/*.iso
    Показывает одну сумму.

    Второй — с директорией с 3-мя файлами — *.iso + sha256sum.txt + sha256sum.txt.gpg
    с командой в терминале из папки — sha256sum -b *.iso
    Показывает другую сумму.

    Всем Linux-пользователям — Физкульт-привет!
    Проекту linux-user.ru всех благ!

Оставить комментарий

Вы можете использовать эти HTML тэги

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>