К основному контенту

iso image and md5, sha1 and etc ...

Вот меня до сих пор удивляет такой факт : Когда делают файл для контрольных сумм iso-образов почему то не включают в этот файл размер. Почему ? Ведь каждому известно что при записи iso-файла на DVD диск, он дополняется до размера сектора ( это может быть : 8/12/16/24/32 kb ) и соотвественно когда
мы сделаем свой iso-образ уже с записаного диска то контрольная сумма не совпадет !

Выход из этой ситуации, простой - нужно узнать размер оригинального iso файла и проверить свой образ уже вот такой командой :
head -c размер_в_байтах_оригинального_iso новый_iso_файл | sha1sum

Комментарии

dik-m написал(а)…
Для DVD-дисков
Здесь всё немного сложнее: дело в том, что при записи на DVD пишется так же и служебная информация, поэтому для проверки DVD-дисков утилитой dd нужно точно указывать размер и количество блоков. Для того, чтобы узнать, сколько значимых блоков (extents) имеется в iso-образе, выполняем команду (вводите именно так, как написано, меняя тольк имя образа):

echo $(( $(ls -l my.iso | awk '{ print $5 }') / 2048 ))

Результатом будет число блоков - это число нам потребуется для команды dd:

169383

Теперь, зная, что размер блока равен 2048 байт и количество блоков на DVD-диске, даём команду:

dd if=/dev/cdrom bs=2048 count=169383 | md5sum

Результатом её выполнения будет вывод:

$ dd if=/dev/cdrom bs=2048 count=169383 | md5sum 169383+0 records in
169383+0 records out e941bb0ecac20a2043c9f8e69fbab63a -

Как видно, что записанный на DVD образ и isoшник на жёстком диске совпадают, так что запись прошла успешно.
dik-m написал(а)…
Подчёркиваю: для DVD-дисков обязательно нужно указать размер и количество считываемых блоков, иначе утилита dd может считать служебные данные, что исказит значение контрольной суммы и вы будете думать, что запороли болванку в то время как (возможно) данные записаны верно.

вот в закладки :))
http://mydebianblog.blogspot.com/2006/11/cd-dvd.html
mx написал(а)…
Ты извини, но я тебя не очень понял. Давно у меня была такая же проблема и я там не особо разбираясь таскал прям файлы iso на дисках rw чтобы были оригинальные iso !

А вот достаточно недавно я дома из под F12 скачал образы CentOS-5.5 и тут же их записал на болванки. Когда же я их принес на работу и сделал там iso командой dd то образы получились чуть длинее и соотвественно не сошлась контрольная сумма :(

Но я на этот раз не стал тащить оригинальные iso а решил разобраться. И после отсекания лишних файлов от файла образа все сошлось !

Популярные сообщения из этого блога

FF 31.x ESR and Nagios Checker

Оказывается FireFox 31.x сделали ESR. И достаточно быстро его затискали в обновление CentOS 6 . Но этот Firefox уже с новым интерфейсом и на нем отсутcтвует статус бар внизу :( В частности я использую Nagios Checker его перенести нельзя и мне это доставляет большое неудобство. К счастью прям на странице Nagios Checker рекомендуют установить дополнение status-4-evar , и все сразу становится как было :)

bootc

 С большим опозданием, хочу сообщить вам о новой крутой технологии bootc . Получается она вышла достаточно давно, и уже с весны 2025 года стала доступна в RHEL 10. Сам я с этой технологией познакомился случайно, благодаря статье про Fedora Hummingbird из журнала Fedora Magazine . Там упоминается это замечательная технология как bootc. По сути bootc - переводится как загружаемый контейнер.  Т.е. контейнер может работать как обычный OCI/Docker контейнер, но также может работать в виртуальных машинах и даже на голом железе. Причем сам контейнер по сути есть атомарный т.е. (immutable) и после создания его нельзя изменить и как следствие надежный и безопасный. При обновлении старый объект удаляется и заменяется новым. Причем все это может делать сам контейнер, следить о появлении новой версии в регистре, скачивать слой контейнера и если что не так то откатывать изменение. Причем вся сборка этого контейнера управляется через API (API-driven), т.е. полная автоматизация, модульность...

Install Redmine 2.3.1 in CentOS 6.x

Я собрал стек Ruby on Rails версии 3.2.13 под ruby 1.8.7 из дистрибутива CentOS 6.x. Теперь можно легко и просто установить на сервер с EL6 систему управления проектами Redmine версии 2.3.1 . Установить все это можно простым скриптом ( если не нравится скрипт то можно посмотреть внутрь него и выполнить все шаги руками ) Загрузка скрипта P.S. К сожалению из за невозможности удалять пакеты в системе сборки koji пришлось сделать репозитарий на google drive. P.P.S. С помощью костылей в виде указывание EPOCH в spec, удалось таки собрать пакеты в russian KOJI, так что в качестве репозитария можно указывать теперь: baseurl=http://koji.russianfedora.ru/repos/dist-el6-build/latest/$basearch/