Ero sivun ”Levykuva” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
(levykuvan koosta ym)
Rivi 1: Rivi 1:
Levykuva eli image on tietyn massamuistilaitteen tai levyosion sisällöstä yksi yhteen luotu ja tiedostoon tallennettu kuva. Kun esimerkiksi cd-levyn sisällöstä luotu levykuva [[levyn polttaminen|poltetaan]] toiselle cd:lle, tulee toisen levyn sisällöksi täsmälleen sama kuin ensimmäisen. Jos tiedostot vain kopioitaisiin normaalein menetelmin, jäisivät esimerkiksi monet [[tiedostojärjestelmä]]än liittyvät tiedot siirtymättä.
Levykuva eli ''image'' on tietyn massamuistilaitteen (esimerkiksi kiintolevyn) tai levyosion sisällöstä yksi yhteen luotu ja tiedostoon tallennettu kuva. Kun esimerkiksi cd-levyn sisällöstä luotu levykuva [[levyn polttaminen|poltetaan]] toiselle cd:lle, tulee toisen levyn sisällöksi täsmälleen sama kuin ensimmäisen. Jos tiedostot vain kopioitaisiin normaalein menetelmin, jäisivät esimerkiksi monet [[tiedostojärjestelmä]]än ja mahdolliseen osiorakenteeseen liittyvät tiedot siirtymättä.


===Esimerkki: CD-imagen laatiminen===
==Cd-levykuvan laatiminen==
  [[cat]] /dev/cdrom > image.iso
  [[cat]] /dev/cdrom > image.iso
tai
tai
  [[dd]] if=/dev/cdrom of=image.iso
  [[dd]] if=/dev/cdrom of=image.iso
==Tyhjän levytilan ongelma==
Koska massamuistin sisältöä käsitellään raakamuodossa (bitti bitiltä) tulee luotavaan levykuvaan väistämättä mukaan myös levyn sisältämä tyhjä tila, ts. levykuvasta yhtä suuri kuin massamuistin nimelliskoko. Esimerkiksi 512 Mt:n [[usb-muisti]]sta tehty levykuva on aina kooltaan 512 Mt, riippumatta käytettävästä tiedostojärjestelmästä/osioinnista sekä muistin täyttöasteesta. Cd- ja [[dvd]]-levyjä tämä ei kuitenkaan koske, sillä niiden tiedostojärjestelmien lopun jälkeinen osa ei näy käyttöjärjestelmälle (vertaa esimerkiksi komennon <tt>[[df]]</tt> näyttämä tilatieto).
Yksi ratkaisu ongelmaan on täyttää massamuistin tyhjä tila nollabitillä ja luoda pakattu levykuva. Nollabitin lisäämisellä päästään eroon poistettujen tiedostojen jäänteistä jotka lisäävät pakatun tiedoston kokoa.
Massamuistin täyttö nollabitillä:
dd if=[[laitetiedostot|/dev/zero]] of=isotiedosto; [[rm]] isotiedosto
Pakatun levykuvan luonti ensimmäisen kiintolevyn ensimmäisesti osiosta (<tt>/dev/sda1</tt>):
dd if=/dev/sda1 | [[gzip]] | dd of=levykuva.img.gz
Levykuvan purku samalle osiolle:
dd if=levykuva.img.gz | [[zcat]] | dd of=/dev/sda1
[[Gzip]] on yleensä nopeutensa takia [[Bzip2]]:ta suositeltavampi pakkausmenetelmä.


==Katso myös==
==Katso myös==
Rivi 16: Rivi 29:


[[Luokka:Käsitteet]]
[[Luokka:Käsitteet]]
[[Luokka:Ohjeet]]
[[Luokka:Järjestelmä]]

Versio 16. toukokuuta 2008 kello 17.31

Levykuva eli image on tietyn massamuistilaitteen (esimerkiksi kiintolevyn) tai levyosion sisällöstä yksi yhteen luotu ja tiedostoon tallennettu kuva. Kun esimerkiksi cd-levyn sisällöstä luotu levykuva poltetaan toiselle cd:lle, tulee toisen levyn sisällöksi täsmälleen sama kuin ensimmäisen. Jos tiedostot vain kopioitaisiin normaalein menetelmin, jäisivät esimerkiksi monet tiedostojärjestelmään ja mahdolliseen osiorakenteeseen liittyvät tiedot siirtymättä.

Cd-levykuvan laatiminen

cat /dev/cdrom > image.iso

tai

dd if=/dev/cdrom of=image.iso

Tyhjän levytilan ongelma

Koska massamuistin sisältöä käsitellään raakamuodossa (bitti bitiltä) tulee luotavaan levykuvaan väistämättä mukaan myös levyn sisältämä tyhjä tila, ts. levykuvasta yhtä suuri kuin massamuistin nimelliskoko. Esimerkiksi 512 Mt:n usb-muistista tehty levykuva on aina kooltaan 512 Mt, riippumatta käytettävästä tiedostojärjestelmästä/osioinnista sekä muistin täyttöasteesta. Cd- ja dvd-levyjä tämä ei kuitenkaan koske, sillä niiden tiedostojärjestelmien lopun jälkeinen osa ei näy käyttöjärjestelmälle (vertaa esimerkiksi komennon df näyttämä tilatieto).

Yksi ratkaisu ongelmaan on täyttää massamuistin tyhjä tila nollabitillä ja luoda pakattu levykuva. Nollabitin lisäämisellä päästään eroon poistettujen tiedostojen jäänteistä jotka lisäävät pakatun tiedoston kokoa.

Massamuistin täyttö nollabitillä:

dd if=/dev/zero of=isotiedosto; rm isotiedosto

Pakatun levykuvan luonti ensimmäisen kiintolevyn ensimmäisesti osiosta (/dev/sda1):

dd if=/dev/sda1 | gzip | dd of=levykuva.img.gz

Levykuvan purku samalle osiolle:

dd if=levykuva.img.gz | zcat | dd of=/dev/sda1

Gzip on yleensä nopeutensa takia Bzip2:ta suositeltavampi pakkausmenetelmä.

Katso myös

Aiheesta muualla