Ero sivun ”Levykuva” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
p (pxe lisätty)
p (artikkeliin lisätty kohta levykuvan kopioiminen)
Rivi 17: Rivi 17:
  mount: could not find any device /dev/loop#
  mount: could not find any device /dev/loop#


==Applen levykuvan liittäminen==
===Applen levykuvan liittäminen===


Applen levykuva (dmg) voidaan [[mount|liittää]] kuten mikä tahansa muu tiedostojärjestelmä. Tämä tapahtuu antamalla <tt>mount</tt>-komennolle -t hfs-määrite sekä levykuvan polku ja haluttu liitospiste, esimerkiksi
Applen levykuva (dmg) voidaan [[mount|liittää]] kuten mikä tahansa muu tiedostojärjestelmä. Tämä tapahtuu antamalla <tt>mount</tt>-komennolle -t hfs-määrite sekä levykuvan polku ja haluttu liitospiste, esimerkiksi
Rivi 26: Rivi 26:
  umount /mnt/levykuva
  umount /mnt/levykuva


===Fuseiso===
==Levykuvan kopiointi==
Halutaessa kopioida levykuva ulkoiselle asemalla se onnistuu lähes samalla tavalla kuin levykuvan luominen, paitsi lähde ja kohde vaihtavat paikkaa:
 
  $ cat Jakelun.levykuva.iso > /dev/sd<USB-asema>
 
<tt>cat</tt> käyttö on suositeltavaa <tt>dd</tt> sijasta paremman suorituskyvyn takia sekä loogisemman ja yksinkertaisemman syntaksin takia. Jos tarve on saada esim. operaation etenemispalkki näkyviin, on mahdollista käyttää vaikkapa <tt>[[pv]]</tt>-komentoa:
 
  $ pv Jakelun.levykuva.iso > /dev/sd<USB-asema>
  846MiB 0:00:00 [2.50GiB/s] [==================================================================================================================================================================================================================================>] 100
 
====Fuseiso====
Jos liittäminen halutaan tehdä tavallisen käyttäjän oikeuksilla, voidaan käyttää [[FUSE]]a hyödyntävää Fuseiso-ohjelmaa. Liitoskomento on tällöin
Jos liittäminen halutaan tehdä tavallisen käyttäjän oikeuksilla, voidaan käyttää [[FUSE]]a hyödyntävää Fuseiso-ohjelmaa. Liitoskomento on tällöin
  fuseiso ''levykuva'' ''liitospiste''
  fuseiso ''levykuva'' ''liitospiste''

Versio 13. lokakuuta 2021 kello 12.58

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ä. Lähes kaikista Linux-jakeluista on saatavana levykuva yhä useammin usb-muistitikuilta tehtävien käyttöjärjestelmäasennusten tekemiseen perinteisten optisten asemien ja levyjen käytön vähentyessä. Levykuvan voi myös asentaa verkon kautta PXE-asennuksen avulla.

Blu-ray-, CD- ja DVD-levyistä tehtyjen levykuvien tiedostopäätteenä on yleensä .iso ja levykkeistä ja usb-muisteista tehtyjen .img.

Levykuvan luominen

Levykuvan luominen tapahtuu kopioimalla laitteen laitetiedoston sisältö haluttuun tiedostoon. Esimerkiksi CD- tai DVD-levystä luotaisiin levykuva komennolla

cat /dev/cdrom > image.iso

tai

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

Levykuvan liittäminen

Levykuva voidaan liittää kuten mikä tahansa muu tiedostojärjestelmä. Tämä tapahtuu antamalla mount-komennolle loop-määrite sekä levykuvan polku ja haluttu liitospiste, esimerkiksi

mount -o loop image.iso /mnt/levykuva

Irrotus onnistuu komennolla umount, esimerkiksi

umount /mnt/levykuva

Levykuvan liittämisessä käytetään hyväksi loop-laitetiedostoja, joita on rajallinen määrä. Ytimen moduuli loop on oltava ladattuna, jotta laitetiedostot olisivat käytettävissä. Muussa tapauksessa mount tulostaa virheilmoituksen

mount: could not find any device /dev/loop#

Applen levykuvan liittäminen

Applen levykuva (dmg) voidaan liittää kuten mikä tahansa muu tiedostojärjestelmä. Tämä tapahtuu antamalla mount-komennolle -t hfs-määrite sekä levykuvan polku ja haluttu liitospiste, esimerkiksi

mount -t hfs -o loop image.dmg /mnt/levykuva

Irrotus onnistuu komennolla umount, esimerkiksi

umount /mnt/levykuva

Levykuvan kopiointi

Halutaessa kopioida levykuva ulkoiselle asemalla se onnistuu lähes samalla tavalla kuin levykuvan luominen, paitsi lähde ja kohde vaihtavat paikkaa:

 $ cat Jakelun.levykuva.iso > /dev/sd<USB-asema>

cat käyttö on suositeltavaa dd sijasta paremman suorituskyvyn takia sekä loogisemman ja yksinkertaisemman syntaksin takia. Jos tarve on saada esim. operaation etenemispalkki näkyviin, on mahdollista käyttää vaikkapa pv-komentoa:

 $ pv Jakelun.levykuva.iso > /dev/sd<USB-asema>
 846MiB 0:00:00 [2.50GiB/s] [==================================================================================================================================================================================================================================>] 100

Fuseiso

Jos liittäminen halutaan tehdä tavallisen käyttäjän oikeuksilla, voidaan käyttää FUSEa hyödyntävää Fuseiso-ohjelmaa. Liitoskomento on tällöin

fuseiso levykuva liitospiste

ja irrotuskomento

fusermount -u liitospiste

FUSEn käyttö edellyttää, että ytimen moduuli fuse on ladattuna.

Fuseiso löytyy useimpien jakeluiden paketinhallinnasta nimellä fuseiso. Lisätietoja ohjelmien asentamisesta löytyy artikkelista Ohjelmien asentaminen.

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. Pakkaus kuitenkin lisää virheherkkyyttä (yhden bitin virhe voi tehdä koko kuvasta käyttökelvottoman), joten sitä ei kannata käyttää varmuuskopiointiin ilman täydentäviä toimia.

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ä.

Graafisia levykuvan liitos ohjelmia

  • AcetoneISO on graafinen ohjelma levykuvan liittämiseksi tiedostojärjestelmään.
  • GISOMount on graafinen ohjelma iso-tiedostojen liittämiseksi tiedostojärjestelmään.
  • Furius ISO Mount Tool on graafinen ohjelma iso-tiedostojen liittämiseksi tiedostojärjestelmään.
  • Startup Disk Creator käynnistyslevyn luonti Ubuntussa.

Katso myös

Aiheesta muualla