Md5sum: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Iromanen (talk | contribs)
No edit summary
Iromanen (talk | contribs)
 
(16 intermediate revisions by the same user not shown)
Line 16: Line 16:
== Ühe ISO faili kontrollimine ==
== Ühe ISO faili kontrollimine ==


Kõigepealt ava terminal ja liigu õigesse kataloogi, et kontrollida allalaetud ISO faili:  
Kõigepealt peaks avama terminali ja liikuma õigesse kataloogi, et kontrollida allalaetud ISO faili:
  ubuntu@ubuntu-desktop:~$ cd Downloads
  cd <kataloogi_nimi>
Siis käivita see käsk:  
Siis tuleks käivitada see käsk:  
  md5sum ubuntu-11.10-dvd-i386.iso
  md5sum <faili_nimi.iso>
Md5sum peaks väljastama  taolise rea pärast räsi arvutamist:  
Md5sum peaks väljastama  taolise rea pärast räsi arvutamist:  
  8044d756b7f00b695ab8dce07dce43e5 ubuntu-11.10-dvd-i386.iso
  8044d756b7f00b695ab8dce07dce43e5 ubuntu-11.10-dvd-i386.iso
Võrdle kalkuleeritud räsi „õige“ räsiga.Kui mõlemad räsid on täpselt ühesugused, siis võib üsna kindel olla, et allalaetud fail on korras. Kui räsid ei klapi, siis on ilmselt on probleem kas allalaadimisega või serveriga. Peaks proovima faili uuesti alla laadida kasutades sama peegelsaiti või teist peegelsaiti, kui kahtlustatakse serveri viga. Kui serverist saab pidevalt vigase faili, peaks teavitama veebimeistrit, et saaks probleemi uurida.
Peaks võrdlema kalkuleeritud räsi „õige“ räsiga. Kui mõlemad räsid on täpselt ühesugused, siis võib üsna kindel olla, et allalaetud fail on korras. Kui räsid ei klapi, siis on ilmselt on probleem kas allalaadimisega või serveriga. Peaks proovima faili uuesti alla laadida kasutades sama peegelsaiti või teist peegelsaiti, kui kahtlustatakse serveri viga. Kui serverist saab pidevalt vigase faili, peaks teavitama veebimeistrit, et saaks probleemi uurida.


== Mitme faili kontrollimine ==
== Mitme faili kontrollimine ==
Line 32: Line 32:


CD terviklikkust saab kontrollida ka ilma rebuutimata.<br>
CD terviklikkust saab kontrollida ka ilma rebuutimata.<br>
Võib arvata, et piisab lihtsalt selisest käsust, et koostada CD räsi: '''md5sum /dev/cdrom'''.Paraku ei ole pea kunagi tulemuseks õige räsi, sest käsklus sisaldab ka tühja ruumi plaadi lõpuosas, mis muudab räsi. Seega tuleb kontrollida ainult seda plaadi osa, millel on ISO.  
Võib arvata, et piisab lihtsalt sellisest käsust, et koostada CD räsi: '''md5sum /dev/cdrom'''. Paraku ei ole pea kunagi tulemuseks õige räsi, sest käsklus sisaldab ka tühja ruumi plaadi lõpuosas, mis muudab räsi. Seega tuleb kontrollida ainult seda plaadi osa, millel on ISO.  


'''Manuaalne meetod'''<br>
'''Manuaalne meetod'''<br>
Kõigepealt on vaja teada saada ISO image suuruse. Mugav on seda teha näteks kasutades käsurida, sest seda on edaspidi nagunii vaja kasutada:  
Kõigepealt on vaja teada saada ISO image suuruse. Mugav on seda teha näteks kasutades käsurida, sest seda on edaspidi nagunii vaja kasutada:  
  ls -l ubuntu-8.10-desktop-i386.iso
  ls -l <faili_nimi.iso>
Vastus peaks olema midagi sellist:
  -rw-r--r-- 1 jsmith jsmith 732766208 2008-10-28 23:24 ubuntu-8.10-desktop-i386.iso
  -rw-r--r-- 1 jsmith jsmith 732766208 2008-10-28 23:24 ubuntu-8.10-desktop-i386.iso
Siit selgub, et faili suurus on 732766208 ning saab kasutada dd, et lasta räsi tegemisel läbi ainult 732766208 baiti CD-st.  Vali bloki suuruseks 1 ja määra count väärtuseks ISO image suurus.  
Siit selgub, et faili suurus on 732766208 ning saab kasutada dd käsku, et lasta räsi tegemisel läbi ainult 732766208 baiti CD-st.  Vali bloki suuruseks 1 ja määra count väärtuseks ISO image suurus.  
  dd if=/dev/cdrom bs=1 count=732766208 | md5sum
  dd if=/dev/cdrom bs=1 count=732766208 | md5sum
Vastus peaks olema midagi sellist:
  732766208+0 records in
  732766208+0 records in
  732766208+0 records out
  732766208+0 records out
  24ea1163ea6c9f5dae77de8c49ee7c03  -
  24ea1163ea6c9f5dae77de8c49ee7c03  -
  732766208 bytes (733 MB) copied, 563.666 s, 1.3 MB/s
  732766208 bytes (733 MB) copied, 563.666 s, 1.3 MB/s
Toimingut võib kiirendada, kui valida suurem bloki suurus ning jagada caount väärtus uue bloki suurusega. Olenevalt kasutatavast süsteemist on mõnikord vaja cdrom asemel kirjutada näiteks cdrom0 või isegi cdrom1, kui arvutil on mitu CD seadet.  
Toimingut võib kiirendada, kui valida suurem bloki suurus ning jagada count väärtus uue bloki suurusega. Olenevalt kasutatavast süsteemist on mõnikord vaja cdrom asemel kirjutada näiteks cdrom0 või isegi cdrom1, kui arvutil on mitu CD seadet.  


== Automatiseeritud skript ==
'''Automatiseeritud skript'''


See on shelli skript, mis kontrollib kõrvetatud CD md5 räsi ja võrdleb seda ISO image räsiga. Kopeeri ja kleebi see enda valitud tekstiredaktorisse ning salvesta nimega hashcdrom.sh.  
See on shelli skript, mis kontrollib kõrvetatud CD md5 räsi ja võrdleb seda ISO image räsiga. Kasutamiseks peaks selle kopeerima ja kleepima enda valitud tekstiredaktorisse ning salvesta nimega hashcdrom.sh.  
  #Compares the checksums of an iso9660 image and a burned disk.
  #Compares the checksums of an iso9660 image and a burned disk.
  #This script is released into the public domain by it's author.
  #This script is released into the public domain by it's author.
Line 54: Line 56:
  shopt -s expand_aliases
  shopt -s expand_aliases
  fi
  fi
  if [ -n "$CHECKSUM" ]; then
  if [ -n "$CHECKSUM" ]; then
  alias CHECKSUM="$CHECKSUM"
  alias CHECKSUM="$CHECKSUM"
Line 62: Line 63:
  alias CHECKSUM='md5sum'
  alias CHECKSUM='md5sum'
  fi
  fi
  if [ -n "$2" ]; then
  if [ -n "$2" ]; then
  DISKDEVICE="$2"
  DISKDEVICE="$2"
Line 68: Line 68:
  DISKDEVICE='/dev/cdrom'
  DISKDEVICE='/dev/cdrom'
  fi
  fi
  CSUM1=$(CHECKSUM "$1" | grep --only-matching -m 1 '^[0-9a-f]*')
  CSUM1=$(CHECKSUM "$1" | grep --only-matching -m 1 '^[0-9a-f]*')
  echo 'checksum for input image:' $CSUM1
  echo 'checksum for input image:' $CSUM1
Line 75: Line 74:
  CSUM2=$(dd if="$DISKDEVICE" bs=2048 count=$BLOCKS 2> /dev/null | CHECKSUM | grep --only-matching -m 1 '^[0-9a-f]*')
  CSUM2=$(dd if="$DISKDEVICE" bs=2048 count=$BLOCKS 2> /dev/null | CHECKSUM | grep --only-matching -m 1 '^[0-9a-f]*')
  echo 'checksum for output disk:' $CSUM2
  echo 'checksum for output disk:' $CSUM2
  if [ "$CSUM1" = "$CSUM2" ]; then
  if [ "$CSUM1" = "$CSUM2" ]; then
  echo 'verification successful!'
  echo 'verification successful!'
Line 81: Line 79:
  echo 'verification failed!'
  echo 'verification failed!'
  fi
  fi
Nüüd ava terminal ja kirjuta:  
Nüüd peaks avama terminali ja kirjutama:  
  sh /path/to/hashcdrom.sh /path/to/ubuntu-8.10-desktop-i386.iso /dev/mycdromdevice
  sh /path/to/hashcdrom.sh /path/to/ubuntu-8.10-desktop-i386.iso /dev/mycdromdevice
Pane tähele, et kui sinu CD seade on /dev/cdrom, võib jätte selle parameetri.
Kui kasutatav CD seade on /dev/cdrom, võib jätte selle parameetri.
Tulemus peaks olema midagi taolist:  
Tulemus peaks olema midagi taolist:  
  checksum for input image: 24ea1163ea6c9f5dae77de8c49ee7c03
  checksum for input image: 24ea1163ea6c9f5dae77de8c49ee7c03
Line 89: Line 87:
  verification successful!
  verification successful!
Shell skript sõltub teatud tunnustest, mis on ainult GNU grep-il, seega skript ei tööta ilmselt süsteemides, mis millel puudub GNU utiliit.
Shell skript sõltub teatud tunnustest, mis on ainult GNU grep-il, seega skript ei tööta ilmselt süsteemides, mis millel puudub GNU utiliit.
=Md5sum ja Mac OS X=
On olemas kolm meetodit md5sum kasutamiseks OS X masinal:<br>
1. Kõige lihtsam (kui MD5 on saadaval) on kasutada Disk Utility programmi (Applications > Utilities). Ava Disk Utility ja oota kuni see kogub informatsiooni ketaste kohta. Mine kataloogi, kus on alla laetud ISO fail ja tiri see Disk Utility dock ikooni juurde. Vali ISO fail. Vali „Images“ menüü ning seejärel Checksum > MD5. Valima peab kindlasti “MD5" ja mitte "MD5 image checksum" või "CRC-32 image checksum", sest tegemist on erinevate asjadega, mis annavad erinevaid tulemusi.<br>
2. Kui md5 ei ole saadaval Images > Checksum menüüs, ava terminali aken (Applications > Utilities > Terminal.app). Kirjuta "md5", seejärel tühik, tiri ISO fail terminali aknasse ja vajuta Enter. Käsurida tagastab räsinumbri.<br>
3. Võib kasutada Terminal.app ning järgida md5sum juhiseid Linuxi jaoks, ainult käsu „md5sum“ asemel peaks kasutama „openssl md5".
== MD5SUM ja Windows ==
Windowsis ei ole vaikimisi md5sum installeeritud. Peab laadima selle alla usaldusväärsest allikast. On käsure utiliite (md5sum.exe), mis töötavad sarnaselt Unix utiliidile. Lihtsalt installitav ja uuendatav versioon on leitav siin: http://cygwin.com/. Peale installeerimist toimib Cygwin-i md5sum täpselt samamoodi nagu Linuxi md5sum.<br>
On olemas ka graafilisi töötriistu, nagu näiteks winMD5Sum. Õpetus selle kasutamiseks:<br>
1. Lae alla ja installeeri winMD5Sum, tasuta vabatarkvaraline räsi kontrollimise programm: http://www.nullriver.com/products/winmd5sum<br>
2. Parem-klõps ISO failil<br>
3. Vajuta Send To ning seejärel vali winMD5Sum<br>
4. Oota kuni winMD5Sum laeb ja koostab räsi<br>
5. Kopeeri õige räsi alumisele tekstiväljale<br>
6. Vajuta "Compare"<br>
=Md5sum ja "Checksums calculator"=
"Checksums calculator” on vabatarkvaraline GUI aplikatsioon, mis sobib kasutamiseks nii Windows, MacOS X kui ka Linux operatsioonissüsteemidel (32bit ja 64bit arhitektuurid) ja on tõlgitud 19 keelde. See annab võimaluse arvutada md5, sha1, sha256, sha384 ja sha512 kontrollsummat. Seda on lihtne kasutada ning ei vaja installeerimist. Peab valima faili, millele soovitakse arvutada kontrollsummat ning valima funktsiooni ja vajutama "Calculate". Kui soovitakse tulemust millegiga võrrelda, peaks sisestama allalaetud kontrollsumma väljale "Original checksum" ja vajutama "Compare". Aplikatsiooni saab alla laadida siit: http://sinf.gr/en/hashcalc.html
=Kasutatud kirjandus=
https://help.ubuntu.com/community/HowToMD5SUM<br>
http://en.wikipedia.org/wiki/Md5sum
=Autor=
Inger Romanenko A31

Latest revision as of 15:32, 9 January 2012

Sissejuhtatus

Artikkel tutvustab programmi md5sum ning annab juhiseid selle kasutamiseks erinevate operatsioonisüsteemidega. Põhirõhk on pandud md5sum-i kasutamisele Linuxiga. Artikkel sobib lugemiseks algajatele, siiski tuleksid kasuks algteadmised Linuxi käsureaga töötamisel.

Tutvustus

Kui on alla laetud ISO fail, on soovitatav testida, kas see on ikka korrektne ning kas seda on turvaline kasutada. Kalkuleeritud md5 räsiväärtus peab olema võrdne korrektse ISO md5 väärtusega. Programm md5sum on disainitud, et kindlaks teha andmete terviklikkust kasutades md5 (Message-Digest algorithm 5) 128-bitilist krüptograafilist räsi. Kasutades md5 räsi õigesti, on võimalik kindlaks teha nii faili terviklikkust kui ka autentsust. Terviklikkuse koha pealt teeb md5 räsi võrdlus kindlaks muudatusi failis, mis põhjustaksid viga. Vigade tõenosus on proportsionaalne faili suurusega: mida suurem fail, seda suurem on vigade tõenäosus. Väga kasulik on läbi teha md5 räsi võrdluse, kui tegemist on operatsioonisüsteemi installeerimiise CD-ga, mis peab olema 100% korrektne. „Õige“ MD 5 räsi , millega kalkuleeritud räsi võrreldakse, peab pärinema turvaliselt ja usaldusväärselt organisatsiooni lehelt (HTTPS). Turvalised Ubuntu räsid on leitavad siit: https://help.ubuntu.com/community/UbuntuHashes. Räsi on tavaliselt kättesaadav samalt lehelt, kust laetakse alla ka ISO fail.

Md5sum ja Linux

Enamikul Linux distributsioonidel on md6sum vaikimisi peal, seega installeerimine pole vajalik.

Ühe ISO faili kontrollimine

Kõigepealt peaks avama terminali ja liikuma õigesse kataloogi, et kontrollida allalaetud ISO faili:

cd <kataloogi_nimi>

Siis tuleks käivitada see käsk:

md5sum <faili_nimi.iso>

Md5sum peaks väljastama taolise rea pärast räsi arvutamist:

8044d756b7f00b695ab8dce07dce43e5 ubuntu-11.10-dvd-i386.iso

Peaks võrdlema kalkuleeritud räsi „õige“ räsiga. Kui mõlemad räsid on täpselt ühesugused, siis võib üsna kindel olla, et allalaetud fail on korras. Kui räsid ei klapi, siis on ilmselt on probleem kas allalaadimisega või serveriga. Peaks proovima faili uuesti alla laadida kasutades sama peegelsaiti või teist peegelsaiti, kui kahtlustatakse serveri viga. Kui serverist saab pidevalt vigase faili, peaks teavitama veebimeistrit, et saaks probleemi uurida.

Mitme faili kontrollimine

Juhul kui laetakse alla mitu suurt faili ja soovtakse neid kõiki kontrollida, kuid ühekaupa kontrollimine on liiga vaevarikas, siis lahendus on testida kõiki faile korraga ja salvestada tulemus eraldi tekstifaili. Selle jaoks peaks salvestama kõik failid samasse kausta ning seejärel sisestama käsu:

md5sum *.iso > mymd5sum.txt 

CD kontrollimine

CD terviklikkust saab kontrollida ka ilma rebuutimata.
Võib arvata, et piisab lihtsalt sellisest käsust, et koostada CD räsi: md5sum /dev/cdrom. Paraku ei ole pea kunagi tulemuseks õige räsi, sest käsklus sisaldab ka tühja ruumi plaadi lõpuosas, mis muudab räsi. Seega tuleb kontrollida ainult seda plaadi osa, millel on ISO.

Manuaalne meetod
Kõigepealt on vaja teada saada ISO image suuruse. Mugav on seda teha näteks kasutades käsurida, sest seda on edaspidi nagunii vaja kasutada:

ls -l <faili_nimi.iso>

Vastus peaks olema midagi sellist:

-rw-r--r-- 1 jsmith jsmith 732766208 2008-10-28 23:24 ubuntu-8.10-desktop-i386.iso

Siit selgub, et faili suurus on 732766208 ning saab kasutada dd käsku, et lasta räsi tegemisel läbi ainult 732766208 baiti CD-st. Vali bloki suuruseks 1 ja määra count väärtuseks ISO image suurus.

dd if=/dev/cdrom bs=1 count=732766208 | md5sum

Vastus peaks olema midagi sellist:

732766208+0 records in
732766208+0 records out
24ea1163ea6c9f5dae77de8c49ee7c03  -
732766208 bytes (733 MB) copied, 563.666 s, 1.3 MB/s

Toimingut võib kiirendada, kui valida suurem bloki suurus ning jagada count väärtus uue bloki suurusega. Olenevalt kasutatavast süsteemist on mõnikord vaja cdrom asemel kirjutada näiteks cdrom0 või isegi cdrom1, kui arvutil on mitu CD seadet.

Automatiseeritud skript

See on shelli skript, mis kontrollib kõrvetatud CD md5 räsi ja võrdleb seda ISO image räsiga. Kasutamiseks peaks selle kopeerima ja kleepima enda valitud tekstiredaktorisse ning salvesta nimega hashcdrom.sh.

#Compares the checksums of an iso9660 image and a burned disk.
#This script is released into the public domain by it's author.
if [ -n "$BASH" ]; then
shopt -s expand_aliases
fi
if [ -n "$CHECKSUM" ]; then
alias CHECKSUM="$CHECKSUM"
elif which md5deep &> /dev/null; then
alias CHECKSUM='md5deep -e'
else
alias CHECKSUM='md5sum'
fi
if [ -n "$2" ]; then
DISKDEVICE="$2"
else
DISKDEVICE='/dev/cdrom'
fi
CSUM1=$(CHECKSUM "$1" | grep --only-matching -m 1 '^[0-9a-f]*')
echo 'checksum for input image:' $CSUM1
SIZE=$(stat -c '%s' "$1");
BLOCKS=$(expr $SIZE / 2048);
CSUM2=$(dd if="$DISKDEVICE" bs=2048 count=$BLOCKS 2> /dev/null | CHECKSUM | grep --only-matching -m 1 '^[0-9a-f]*')
echo 'checksum for output disk:' $CSUM2
if [ "$CSUM1" = "$CSUM2" ]; then
echo 'verification successful!'
else
echo 'verification failed!'
fi

Nüüd peaks avama terminali ja kirjutama:

sh /path/to/hashcdrom.sh /path/to/ubuntu-8.10-desktop-i386.iso /dev/mycdromdevice

Kui kasutatav CD seade on /dev/cdrom, võib jätte selle parameetri. Tulemus peaks olema midagi taolist:

checksum for input image: 24ea1163ea6c9f5dae77de8c49ee7c03
checksum for output disk: 24ea1163ea6c9f5dae77de8c49ee7c03
verification successful!

Shell skript sõltub teatud tunnustest, mis on ainult GNU grep-il, seega skript ei tööta ilmselt süsteemides, mis millel puudub GNU utiliit.

Md5sum ja Mac OS X

On olemas kolm meetodit md5sum kasutamiseks OS X masinal:

1. Kõige lihtsam (kui MD5 on saadaval) on kasutada Disk Utility programmi (Applications > Utilities). Ava Disk Utility ja oota kuni see kogub informatsiooni ketaste kohta. Mine kataloogi, kus on alla laetud ISO fail ja tiri see Disk Utility dock ikooni juurde. Vali ISO fail. Vali „Images“ menüü ning seejärel Checksum > MD5. Valima peab kindlasti “MD5" ja mitte "MD5 image checksum" või "CRC-32 image checksum", sest tegemist on erinevate asjadega, mis annavad erinevaid tulemusi.
2. Kui md5 ei ole saadaval Images > Checksum menüüs, ava terminali aken (Applications > Utilities > Terminal.app). Kirjuta "md5", seejärel tühik, tiri ISO fail terminali aknasse ja vajuta Enter. Käsurida tagastab räsinumbri.
3. Võib kasutada Terminal.app ning järgida md5sum juhiseid Linuxi jaoks, ainult käsu „md5sum“ asemel peaks kasutama „openssl md5".

MD5SUM ja Windows

Windowsis ei ole vaikimisi md5sum installeeritud. Peab laadima selle alla usaldusväärsest allikast. On käsure utiliite (md5sum.exe), mis töötavad sarnaselt Unix utiliidile. Lihtsalt installitav ja uuendatav versioon on leitav siin: http://cygwin.com/. Peale installeerimist toimib Cygwin-i md5sum täpselt samamoodi nagu Linuxi md5sum.

On olemas ka graafilisi töötriistu, nagu näiteks winMD5Sum. Õpetus selle kasutamiseks:
1. Lae alla ja installeeri winMD5Sum, tasuta vabatarkvaraline räsi kontrollimise programm: http://www.nullriver.com/products/winmd5sum
2. Parem-klõps ISO failil
3. Vajuta Send To ning seejärel vali winMD5Sum
4. Oota kuni winMD5Sum laeb ja koostab räsi
5. Kopeeri õige räsi alumisele tekstiväljale
6. Vajuta "Compare"

Md5sum ja "Checksums calculator"

"Checksums calculator” on vabatarkvaraline GUI aplikatsioon, mis sobib kasutamiseks nii Windows, MacOS X kui ka Linux operatsioonissüsteemidel (32bit ja 64bit arhitektuurid) ja on tõlgitud 19 keelde. See annab võimaluse arvutada md5, sha1, sha256, sha384 ja sha512 kontrollsummat. Seda on lihtne kasutada ning ei vaja installeerimist. Peab valima faili, millele soovitakse arvutada kontrollsummat ning valima funktsiooni ja vajutama "Calculate". Kui soovitakse tulemust millegiga võrrelda, peaks sisestama allalaetud kontrollsumma väljale "Original checksum" ja vajutama "Compare". Aplikatsiooni saab alla laadida siit: http://sinf.gr/en/hashcalc.html

Kasutatud kirjandus

https://help.ubuntu.com/community/HowToMD5SUM
http://en.wikipedia.org/wiki/Md5sum

Autor

Inger Romanenko A31