Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Sergey Reznik                        2:5020/400     27 Dec 2001  16:44:45
 To : Sergey Reznik
 Subject : Re: *.iso.md5sums file
 -------------------------------------------------------------------------------- 
 
 Sergey Reznik <sgreznik@fort.tatarstan.ru> пишет:
 
 SR> Hi ALL!
 
 SR> Столкнулся с такой проблемой - закачал ASPLinux
 SR> 7.2, два iso-шника.
 SR> И файлик с контрольной суммой md5sum.
 SR> Образы пришли битые md5 суммы не сошлись.
 SR> Hа том же сервере лежали файлики
 SR> asplin72-d1.iso.md5sums
 SR> asplin72-d2.iso.md5sums
 SR> с подобным содержимым:
 SR> 0  102400  8385dad9c63383c7549eadb2ad35e105
 SR> 102400 102400  de380c62bd5ffa65fd91fabb54c477c6
 SR> 204800 102400  3fb4ce8e915a5f51535d7555c9f564a3
 SR> 307200 102400  4b49b19f37a7ba0faf1f363759e03244
 SR> 409600 102400  e8b38c51d5966ea443d314efb114445b
 SR> ................
 SR> ................
 SR> 679628800  102400
 SR> 9661784b571937e6730b19c4bc800328
 SR> 679731200  102400
 SR> 7f18e613ef3a9b24e1469d42be5e8395
 SR> 679833600  102400
 SR> ae303e8ef12d595d044ff1fb45a113be
 SR> 679936000  98304
 SR> dcacfdd89cb4d96f2d28437a5321f75b
 SR> Вроде как все понятно, это конрольные суммы
 SR> блоков iso-шника,
 SR> с указанием смешения и размера блока. Hо
 SR> возникают два вопроса:
 SR> 1. Как получить из скачанного файла md5 суммы в
 SR> таком формате,
 SR> чтоб найти битые блоки?
 SR> 2. Чем можна подкачать блоки по заданному
 SR> смещению.
 SR> -------------------------------------------------
 
 Может кто пдскажет все же решение пункта 2.
 Первый я решил с пощью шеловского скрипта:
 ======genmd5sums.sh==================
 #!/bin/sh
 #
 
 #Set parameters
 BLOCKSIZE=102400
 COUNT=1
 SKIP=0
 
 USAGE="Usage: $0 file"
 if [ $# -lt 1 ]; then
   echo $USAGE 
   exit
 fi
 
 if [ ! -f $1 ] ; then
   echo $USAGE 
   exit
 fi
 
 ELSIZE=0
 
 FILESIZE=`ls -l $1|gawk '{print($5)}'` 
 
 i=1
 FIRST=1
 
 while [ $(( ($FILESIZE-$SKIP*$BLOCKSIZE) >0 )) -eq 1 ]
 do
   if [ $(( ($FILESIZE-$SKIP*$BLOCKSIZE >= $BLOCKSIZE) )) -eq 1 ]; then
     ELSIZE=$BLOCKSIZE
   else
     ELSIZE=$(( ($FILESIZE-$SKIP*$BLOCKSIZE) ))
   fi
 
   MD5SUM=`dd bs=$BLOCKSIZE count=$COUNT skip=$SKIP if=$1 2>nul|md5sum|gawk
 '{print($1)}'`
   if [ $FIRST = 1 ]; then
    FIRST=0
    echo "$(($SKIP*$BLOCKSIZE)) $ELSIZE $MD5SUM" >$1.md5sums
   else
    echo "$(($SKIP*$BLOCKSIZE)) $ELSIZE $MD5SUM" >>$1.md5sums
   fi
   ((SKIP=$SKIP+1 ))
 done
 exit 0
 =====================================
 
 SR> --------------
 
 -- 
 Sergey Reznik
 Отправлено через сервер Talk.Ru - http://www.talk.ru
 --- ifmail v.2.15dev5
  * Origin: Talk.ru (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 *.iso.md5sums file   Sergey Reznik   27 Dec 2001 10:48:42 
 Re: *.iso.md5sums file   Sergey Reznik   27 Dec 2001 16:44:45 
 *.iso.md5sums file   Alexei Dmitriev   27 Dec 2001 16:03:58 
Архивное /ru.linux/64880e4ed2e8.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional