gaffitter + dvdisaster = całkiem niezły backup

  2010-02-16 20:00:00

Z racji niemiłych doświadczeń z dyskami twardymi, które zwykły mi padać w najmniej oczekiwanych momentach przyłożyłem się bardziej do tematu backupu danych i pomyślałem, że warto podzielić się doświadczeniami. Może komuś się przyda :-)

Na początek zamontowałem RAID‘a 1. Ponieważ jednak żaden RAID nie zabezpieczy mi danych np. przed kradzieżą czy pożarem, postanowiłem usprawnić trochę procedurę backupu na płytkach DVD (w przyszłości BD), które traktuję jako żelazne zabezpieczenie właśnie na wypadek “kataklizmu”.

Jako, że nie planuję backup'owych płytek na co dzień używać, pominąłem całkowicie zagadnienie ich katalogowania. Zabezpieczane dane to w moim przypadku tylko zdjęcia więc cała operacja sprowadzała się do odpowiedniego wypalenia płytek. Pozostały więc problemy: optymalnego wykorzystania pojemności płyty oraz zabezpieczenia jej przed błędami odczytu.

Optymalne wykorzystanie miejsca

... czyli nic innego jak tzw. problem plecakowy. Z lekkim uczuciem wstydu przyznam, że zmarnowałem trochę czasu na próbach samodzielnej implementacji rozwiązania tego problemu ale na szczęście szybko pod myszkę wpadł mi gaffitter, który wybawił mnie z opresji :).

Zabezpieczenie przed błędami odczytu

Tu już nawet nie próbowałem kombinować na własną rękę - skorzystałem z poleconego dvdistaster'a.

Jak to działa?

Gdy już mamy potrzebne narzędzia możemy wziąć się do roboty. Zaczynamy od końca czyli od płytki. Znajdujemy właściwy rozmiar naszej płytki i wyznaczamy 80% tej wartości. 20% przeznaczone będzie na nadmiarowe dane naprawcze (Tak zaleca autor dvdisaster'a). W moim przypadku było to: 4707319808B → 3765855846B

Następnie:

  • używając gaffitter'a wyznaczamy zestaw danych optymalnie wypełniających zadaną pojemność:

    gaffitter -b -t 3765855846 /katalog/z/danymi
    
  • Wybrany zestaw danych zamieniamy na obraz ISO przy pomocy mkisofs:

    mkisofs -o dvd.iso /katalog/z/zestawem
    
  • otrzymany plik iso wzbogacamy o dane naprawcze(żadne dodatkowe pliki nie zostaną dodane do obrazu płyty):

    dvdisaster -c -mRS02 -i dvd.iso
    

Na końcu otrzymujemy plik ISO z gotowym do wypalania obrazem płyty. Obraz wypalamy i cieszymy się zabezpieczoną płytką :-). Wszystko oczywiście można też wyklikać, ale podejście konsolowe daje możliwość sporej automatyzacji.

Teścik

Oczywiście nie mogłem sobie odmówić przyjemności przetestowania skuteczności tego zabezpieczenia. Test nie był zbyt subtelny, po prostu porysowałem zabezpieczoną płytkę śrubokrętem i spróbowałem ją odczytać.

Płytka wyglądała tak:

obrazek

Płytka po spotkaniu ze śrubokrętem

Tak wyglądał proces jej odczytu (na czerwono zaznaczone sektory płyty, których nie dało się odzyskać:

obrazek

dvdisaster

Efektem dość długiego odczytu był obraz iso uszkodzonej płyty. Wystarczyło jedno kliknięcie (lub polecenie) w dvdisasterze i w automagiczny sposób obraz płyty wracał do stanu idealnego:

obrazek

dvdisaster

Oryginalny obraz:

md5:3caeebc8dcfff53940eb2ad3a00b325b

Obraz płyty uszkodzonej:

md5:758d5ae26de7f6c5159856ea5600a087

Obraz po naprawie:

md5:3caeebc8dcfff53940eb2ad3a00b325b

I to by było na tyle. Myślę, że warto poświęcić te 10 dodatkowych minut i 20% pojemności płyty dla zwiększenia bezpieczeństwa wypalanych danych. Powodzenia w backupowaniu.

Komentarze