" title="Написать письмо">Написать письмо

Статистика

Пользователи : 1
Статьи : 1967
Просмотры материалов : 7176877
 
Расчет MD5 компакт-дисков (07.10.2023). Печать E-mail
2023 - Октябрь
07.10.2023 21:05
Save & Share
Шел 2023 год. В РФ упорно продолжают использоваться компакт-диски для передачи серьезных данных. И ладно бы DVD - подумать страшно: CD. Низкотехнологичные, малоемкие, дорогущие из расчета руб/ГБ, тормоза технологического прогресса, суть ереси на пути развития человечества.

И у высокотехнологичных надежных операционных систем, на примере Astra Linux SE v.1.7.4 (сарказм), есть необходимость считать контрольные суммы этих мерзких сущностей. Дело дошло даже до багов (см. конец статьи). Пришлось написать удобный скрипт их расчета.



Сложного ничего не было; кроме времяемкого тестирования и отторжения алогичного синтаксиса языка Bash. MD5 диска считается без необходимости его монтировать и размонтировать, привод сам задвигается, выдвигается и просит добавки. Приведен для ознакомления, сам же лежит в полезных исходниках. Применим ко всем типам компакт-дисков. Может посчитать MD5 раздела жесткого диска или его папки, если надо, - что можно считать тестом на изменение каких-либо данных, например, при их самоконтроле.

function MD5() #Для md5sum не требуется монтирование и размонтирование носителя - достаточно указать имя устройства.
{
    echo "Начало расчета контрольной суммы."
    echo "    Монтирование DVD."
    mount /dev/sr0 /media/cdrom
    echo "    Расчет контрольной суммы."
    echo " "

    #Алгоритмы на выбор, можно свои.
    #sudo md5sum /dev/sr0 #Контрольная сумма MD5 всего диска. Работает некорректно с CD-RW, записанными стандартными средствами Windows 7. Можно использовать для любых устройств и папок - например, посчитать MD5 реального раздела жесткого диска.
    #md5sum /media/cdrom/* #Расчет контрольных сумм каждого файла в корне каталога. Как в подкаталоги залезть - не анализировал: времени нет.

    echo " "
    echo "    Размонтирование DVD."
    umount /dev/sr0
    echo "Конец расчета контрольной суммы. Извлечение диска."
    eject #Почему-то привод обратно сам загружает диск при выполнении md5sum /media/cdrom/*.
}

function exit_mess()
{
    echo "(остановлено)"
    read
}

while true; do
    MD5

    read -p "        РАССЧИТАТЬ СЛЕДУЮЩИЙ ДИСК? 'Y', 'y', 'Да', 'да', 'д'    " yn #Задвигать диск не нужно: при mount сам заедет.

    if [ $yn != "Y" ] && [ $yn != "y" ] && [ $yn != "Да" ] && [ $yn != "да" ] && [ $yn != "д" ]; then exit_mess; fi

    echo " "
    echo " "
done

Обновлено ( 07.10.2023 21:24 )
 
 

Последние новости


©2008-2024. All Rights Reserved. Разработчик - " title="Сергей Белов">Сергей Белов. Материалы сайта предоставляются по принципу "как есть". Автор не несет никакой ответственности и не гарантирует отсутствие неправильных сведений и ошибок. Вся ответственность за использование материалов лежит полностью на читателях. Размещение материалов данного сайта на иных сайтах запрещено без указания активной ссылки на данный сайт-первоисточник (ГК РФ: ст.1259 п.1 + ст.1274 п.1-3).

Много статей не имеет срока устаревания. Есть смысл смотреть и 2011, и даже 2008 год. Политика сайта: написать статью, а потом обновлять ее много лет.
Открыта карта ВТБ для донатов на дорогостоящие эксперименты: 5368 2902 0040 0838.

Рекламодателям! Перестаньте спамить мне на почту с предложениями о размещении рекламы на этом сайте. Я никогда спамером/рекламщиком не был и не буду!
Top.Mail.Ru