Muokataan sivua Ddrescue

Siirry navigaatioon Siirry hakuun
Varoitus: Et ole kirjautunut sisään. IP-osoitteesi näkyy julkisesti kaikille, jos muokkaat. Jos kirjaudut sisään tai luot tunnuksen, muokkauksesi yhdistetään käyttäjänimeesi ja saat paremman käyttökokemuksen.

Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.

Nykyinen versio Oma tekstisi
Rivi 3: Rivi 3:
| kuva=
| kuva=
| kuvateksti=
| kuvateksti=
| lisenssi=[[GPL]]v3+
| lisenssi=[[GNU]] [[GPL]]
| käyttöliittymä=teksti
| käyttöliittymä=teksti
| kotisivu=[https://gnu.org/software/ddrescue/ gnu.org/software/ddrescue]
| kotisivu=[http://www.garloff.de/kurt/linux/ddrescue/ www.garloff.de/kurt/linux/ddrescue/]}}
}}


'''Ddrescue''' on ohjelma, jolla voi kopioida ja yrittää pelastaa rikkinäisiä kiintolevyjä tai naarmuisia CD-levyjä.
 
Ddrescuella voi kopioida ja yrittää pelastaa rikkinäistä kiintolevyä tai naarmuista CD-levyä.


==Asennus==
==Asennus==
{{Asenna|Ddrescue|ddrescue}}
Ddrescue löytyy [[Ubuntu]]n [[Paketinhallintajärjestelmä|paketinhallinnasta]] nimellä <tt>gddresuce</tt>. Lisätietoja ohjelmien asentamisesta löytyy artikkelista [[Ohjelmien asentaminen]].


==Käyttö==
==Käyttö==
Oletetaan, että rikkinäinen levy (kiintolevy, CD-levy, DVD-levy jne) on /dev/sr0
Oletetaan, että rikkinäinen levy (kiintolevy tai CD-levy) on /dev/sr0


Lyhyesti:
Lyhyesti:
Ajetaan kolme komentoa peräkkäin (joissa jokaisessa voi mennä tunteja)
Ajetaan kolme komentoa peräkkäin (joissa jokaisessa voi mennä tunteja)


Vanha tapa, ainakin versioon 1.17 asti (eli noin vuoteen 2015)
  ddrescue --no-split  /dev/sr0 imagefile logfile
  ddrescue --no-split  /dev/sr0 imagefile logfile
  ddrescue --direct --max-retries=3 /dev/sr0 imagefile logfile          
  ddrescue --direct --max-retries=3 /dev/sr0 imagefile logfile  
  ddrescue --direct --retrim --max-retries=3 /dev/sr0 imagefile logfile  
  ddrescue --direct --retrim --max-retries=3 /dev/sr0 imagefile logfile  
Ja uusi tapa (ainakin versiosta 1.19):
ddrescue --no-split  /dev/sr0 imagefile logfile
ddrescue --direct --retry-passes=3 /dev/sr0 imagefile logfile
ddrescue --direct --retrim --retry-passes=3 /dev/sr0 imagefile logfile


Levykuva eli <tt>imagefile</tt> on tiedosto johon levykopiota tehdään, ja se voi sisältää myös polun. Luonnollisesti sille täytyy olla riittävästi tilaa. Huomaathan myös, että esim FAT32-levylle ei voi tehdä yli 4G:n tiedostoja. Lokitiedostoon eli <tt>logfile</tt> kirjoitetaan kaikki rikkinäiset eli yli hypätyt kohdat. Ddrescuen voi huolettaa käynnistää useita kertoja peräkkäin samalla levykuvalla ja lokitiedostolla, se ei tuhoa kerran onnistunutta kopiointia, vaan aina yrittää pelkästään lokitiedostossa olevia rikkinäisiä kohtia. Jos samasta levystä sattuu olemaan toinen rikkinäinen versio (identtinen), sitä voi käyttää samaan levykuvaan ja lokitiedostoon jolloin jos virheet ovat eri kohdissa lopputuloksessa ei ole virheitä ollenkaan.  
Levykuva eli <tt>imagefile</tt> on tiedosto johon levykopiota tehdään, ja se voi sisältää myös polun. Luonnollisesti sille täytyy olla riittävästi tilaa. Huomaathan myös, että esim FAT32-levylle ei voi tehdä yli 4G:n tiedostoja. Lokitiedostoon eli <tt>logfile</tt> kirjoitetaan kaikki rikkinäiset eli yli hypätyt kohdat. Ddrescuen voi huolettaa käynnistää useita kertoja peräkkäin samalla levykuvalla ja lokitiedostolla, se ei tuhoa kerran onnistunutta kopiointia, vaan aina yrittää pelkästään lokitiedostossa olevia rikkinäisiä kohtia. Jos samasta levystä sattuu olemaan toinen rikkinäinen versio (identtinen), sitä voi käyttää samaan levykuvaan ja lokitiedostoon jolloin jos virheet ovat eri kohdissa lopputuloksessa ei ole virheitä ollenkaan.  


Ensimmäinen komento kopioi ensin kaiken ehjän ja hyppää rikkinäisten yli. Kopioinnin aikana näkyy tilastoa onnistuneen kopioinnin määrästä, virheiden määrästä ja kuinka paljon dataa on jäänyt kopioimatta virheiden takia.
Ensimmäinen komento kopioi ensin kaiken ehjän ja hyppää rikkinäisten yli. Kopioinnin aikana näkyy tilastoa onnistuneen kopioinnin määrästä, virheiden määrästä ja kuinka paljon dataa on jäänyt kopioimatta virheiden takia.


Esimerkkinäkymä:
Esimerkkinäkymä:
<syntaxhighlight lang="bash">
<source lang="bash">
Press Ctrl-C to interrupt
Press Ctrl-C to interrupt
Initial status (read from logfile)
Initial status (read from logfile)
Rivi 42: Rivi 37:
   ipos:    2117 MB,  errors:    157,    average rate:    1963 kB/s
   ipos:    2117 MB,  errors:    157,    average rate:    1963 kB/s
   opos:    2117 MB,    time from last successful read:      0 s
   opos:    2117 MB,    time from last successful read:      0 s
</syntaxhighlight>
 
 
</source>


Initial status tarkoittaa alkutilannetta, jos lokitiedostossa olisi jo ollut jotakin, siitä oltaisiin jatkettu suoraan.
Initial status tarkoittaa alkutilannetta, jos lokitiedostossa olisi jo ollut jotakin, siitä oltaisiin jatkettu suoraan.
Rivi 49: Rivi 46:
Lopuksi suoritetaan vielä "Trimming failed blocks...", jolloin ipos/opos kulkee lopusta alkuun ja rikkinäisten sektorien ehjiä kohtia luetaan. Virheiden määrä ei muutu, mutta errsize voi laskea.
Lopuksi suoritetaan vielä "Trimming failed blocks...", jolloin ipos/opos kulkee lopusta alkuun ja rikkinäisten sektorien ehjiä kohtia luetaan. Virheiden määrä ei muutu, mutta errsize voi laskea.


<syntaxhighlight lang="bash">
<source lang="bash">
Press Ctrl-C to interrupt
Press Ctrl-C to interrupt
Initial status (read from logfile)
Initial status (read from logfile)
Rivi 57: Rivi 54:
   ipos:  497380 kB,  errors:    157,    average rate:    1352 kB/s
   ipos:  497380 kB,  errors:    157,    average rate:    1352 kB/s
   opos:  497380 kB,    time from last successful read:      0 s
   opos:  497380 kB,    time from last successful read:      0 s
Trimming failed blocks...
Trimming failed blocks...  
</syntaxhighlight>
 
</source>


Toinen komento lukee virheellisiä kohtia uudelleen, yrittäen jokaista kohtaa kolmesti (direct tarkoittaa, että ei käytä välimuistiin mennyttä, vaan ihan oikeasti lukee levyn pintaa). Tässä ei ole vipua 'no-split', eli on mahdollista, että virheiden määrä kasvaa, mutta pelastetun tiedon määrä kasvaa.
Toinen komento lukee virheellisiä kohtia uudelleen, yrittäen jokaista kohtaa kolmesti (direct tarkoittaa, että ei käytä välimuistiin mennyttä, vaan ihan oikeasti lukee levyn pintaa). Tässä ei ole vipua 'no-split', eli on mahdollista, että virheiden määrä kasvaa, mutta pelastetun tiedon määrä kasvaa.
Rivi 69: Rivi 67:
Seuraavaksi levykuvasta riippuen sille voi suorittaa tarkistuksen:
Seuraavaksi levykuvasta riippuen sille voi suorittaa tarkistuksen:


  $ e2fsck -v -f imagefile
  e2fsck -v -f imagefile
 


tai DVD-levyn voi mountata:
tai DVD-levyn voi mountata:


  $ mkdir mounted
  mkdir mounted
  $ mount imagefile mounted -o loop
  mount imagefile mounted -o loop
 


käynnistää DVD-levyn soittamisen
käynnistää DVD-levyn soittamisen


  $ vlc imagefile
  vlc imagefile


Polttaa CD-levykuvan tyhjälle CD:lle...
Polttaa CD-levykuvan tyhjälle CD:lle...


Riippuen virheiden määrästä ja koosta jotkut tiedostot voivat toimia, toimia huonosti tai olla toimimatta.
Riippuen virheiden määrästä ja koosta jotkut tiedostot voivat toimia, toimia huonosti tai olla toimimatta.
Rivi 87: Rivi 88:
* [[Palautustyökalut]]
* [[Palautustyökalut]]


{{Varmuuskopiointi}}
[[Luokka:Palautustyökalut]]
[[Luokka:Palautustyökalut]]
Wikin materiaali on kaikkien vapaasti käytettävissä Creative Commons 3.0 - nimi mainittava -lisenssin alaisuudessa. TEKIJÄNOIKEUDEN ALAISEN MATERIAALIN KÄYTTÄMINEN ILMAN LUPAA ON EHDOTTOMASTI KIELLETTYÄ!

Muokataksesi tätä sivua vastaa alla olevaan kysymykseen (lisätietoja):

Peruuta Muokkausohjeet (avautuu uuteen ikkunaan)

Tämä sivu kuuluu seuraavaan piilotettuun luokkaan:

Noudettu kohteesta ”https://www.linux.fi/wiki/Ddrescue