2005 01 Odzyskiwanie danych–sposoby i przegląd narzędzi [Bezpieczenstwo]

background image

bezpieczeństwo

32

styczeń 2005

Odzyskiwanie danych

– sposoby i przegląd

narzędzi

Michał Niwicki

N

a pewno każdy z Was sta-
nął lub stanie przed proble-
mem odzyskania danych.
Zazwyczaj w momencie,

w którym uświadamiamy sobie, że stra-
ciliśmy istotne pliki, nie widzimy szansy
na ich odratowanie i nie podejmuje-
my żadnych działań. Spotykamy się
z dwiema sytuacjami. Pierwsza wiąże
się z fizycznym uszkodzeniem nośni-
ka danych (twardego dysku, dyskiet-
ki, płyty CD/DVD), co uniemożliwia
nam prawidłowe odczytanie zawarto-
ści całego pliku. Druga to taka, w której
umyślnie lub nieumyślnie skasowaliśmy
z dysku potrzebny nam plik i chcemy go
odzyskać. W obu przypadkach istnieją
sposoby i narzędzia pozwalające na cał-
kowite lub częściowe odzyskanie utra-
conych danych.

W niniejszym artykule dokonamy

przeglądu kilku popularnych aplika-
cji służących do odzyskiwania danych
– uszkodzonych bądź usuniętych
z naszego komputera.

Fizyczne uszkodzenie

nośnika

Zanim przejdziemy do omówienia spo-
sobu odzyskania utraconych danych
z uszkodzonego nośnika, wytłumaczy-
my najpierw, jak dochodzi do uszkodze-
nia nośnika i jaki ma to wpływ znajdu-
jące się na nim dane.

Tradycyjnie, wszystkie magnetycz-

ne nośniki danych – dyskietki, twarde
dyski, taśmy – mogą ulec częściowe-
mu rozmagnesowaniu na skutek kon-
taktu z różnymi urządzeniami wytwa-
rzającymi duże pole elektromagnetycz-
ne (magnesy, bramki kontrolne na lot-
nisku, telefony komórkowe). W przy-
padku płyt CD/DVD najczęściej spo-

tykamy się z fizycznym uszkodzeniem
jednej z optycznych warstw na skutek
zarysowania.

W obu sytuacjach, gdy dochodzi do

utraty części (kilku lub kilkudziesię-
ciu bajtów) pliku lub systemu plików,
system komunikuje nam, że odczyt
z urządzenia jest niemożliwy i zaprze-
staje dalszych prób dostępu do danych.

Spróbujmy zilustrować przykładem

zaistniały problem. Posiadamy płytę,
na której znajduje się dwugodzinny film
w pliku o łącznej objętości 690 mega-
bajtów. Na skutek fizycznego uszkodze-
nia (przypadkowe zarysowanie płyty)
nie jest możliwy odczyt kilku ostatnich
bajtów pliku, w efekcie czego program
odtwarzający przerywa działanie przed
najciekawszym fragmentem filmu.

Wiemy lub domyślamy się, że uszko-

dzeniu uległo jedynie kilka sekund cen-
nego nagrania, natomiast kilkanaście
pozostałych minut nadal znajduje się na
płycie. Stajemy przed problemem, jak
zmusić program do odtworzenia tego,
co znajduje się za uszkodzonym obsza-
rem. Innymi słowy, chcemy, aby pro-
gram nie przerywał działania w przypad-
ku, w którym nie może odczytać zapisa-
nych danych.

DD_rescue

Gdy próba przekopiowania uszkodzone-
go pliku standardową metodą nie skutku-
je (tak dzieje się, gdy używamy standar-
dowej komendy

cp

), z pomocą przycho-

dzi nam program DD_rescue.

Jego zasada działania jest prosta

– próbuje odzyskać uszkodzone bajty
pliku, a w przypadku, gdy nie może ich
odczytać, nie przerywa swego działania,
nie ucina uszkodzonego pliku i kontynu-
uje proces kopiowania.

Na płycie CD/DVD

Na płycie CD/DVD znajduje się

oprogramowanie omawiane

w artykule.

background image

33

bezpieczeństwo

narzędzia data recovery

www.lpmagazine.org

W efekcie otrzymujemy lekko uszko-

dzony, ale już możliwy do odczytania
plik, który nie różni się rozmiarem od
oryginału, ale zawiera błędy w miejscu,
w którym doszło do uszkodzenia nośni-
ka, z którego kopiowaliśmy.

Praca z dd_rescue

Kopiowanie za pomocą dd_rescue jest
proste. Wywołanie programu przybiera
postać:

dd_rescue [opcje] <plik_źró-

dłowy> <plik_docelowy>.

Jeśli w wyniku działania komen-

dy

dd_rescue plik_a plik_b

program

skopiuje pliki bez napotkania na błędy,
powinien wyświetlić się komunikat
podobny do poniższego:

dd_rescue: (info): plik_a (0.8k): EOF
Summary for plik_a -> plik_b:
dd_rescue: (info): ipos: 0.8k,

S

opos: 0.8k, xferd: 0.8k
errs:0, errxfer: 0.0k, succxfer: 0.8k
+curr.rate: 15kB/s, avg.rate: 15kB/s,

S

avg.load: 0.0%

Jeśli podczas procesu kopiowania przytra-
fią się błędy odczytu, pojawi się dodatko-
wa informacja dotycząca ilości uszkodzo-
nych bajtów i miejsca ich występowania.

Dodatkowe przydatne opcje progra-

mu to kopiowanie piku od określonej
pozycji (w bajtach), kopiowanie zbioru
danych od końca do początku, wyświe-
tlanie pełnej informacji o procesie
odczytywania i zapisywania przetwa-
rzanych danych oraz określenie górnej
granicy ilości błędów, po osiągnięciu
której praca programu jest przerywana.

Pewnym ułatwieniem w korzystaniu

z programu DD_rescue jest skrypt napi-
sany z BASH-u – DD_rhelp. Jego działa-
nie opiera się na programie DD_rescue,

ale od użytkownika nie jest wymaga-
ne podawanie żadnych dodatkowych
opcji – wystarczy, że w linii poleceń
wpiszemy:

dd_rhelp <plik_źródłowy>

<plik_docelowy>

, a skrypt domyślnie

odzyska (jeśli tylko mu się uda) wszel-
kie utracone dane.

Skasowane pliki – jak

sobie z nimi radzić

Zdarza się, że na skutek pomyłki lub
celowego działania osób trzecich w
wyniku operacji kasowania (plików lub
partycji) straciliśmy część lub wszystkie
nasze dane. Mogłoby się wydawać, że
wszystko stracone, ale i na takie przy-
padki jest rada. W najlepszym razie
może okazać się, że dane są w 100%
odzyskiwalne, ale najczęściej spotkamy
się z sytuacją, w której odzyskamy jedy-
nie mniejszy lub większy procent ska-
sowanych zbiorów. Paradoksalnie, to co
wygląda bardzo groźnie, może okazać
się łatwe w naprawie. Najczęstszym
omawianym wyżej przypadkiem jest
zamazanie tablicy partycji dysku twar-
dego (tracimy wszystko) lub skasowa-
nie pliku/plików komendą rm

.

Narzę-

dzia, jakich można użyć w obu przy-
padkach, przedstawię poniżej.

Namierzanie partycji programem

Gpart

Jeśli z pewnych powodów zamazaliśmy
tablicę partycji dysku twardego (dzieje
się tak przykładowo podczas nieuważ-
nego dzielenia dysku na partycje), mimo
że dysk wygląda tak, jakby nic na nim się
nie znajdowało, nasze dane wciąż na nim
są. Proces przywracania struktury dysku
do pierwotnej postaci wymaga od użyt-
kownika wiedzy na temat tego, jakiej
wielkości i jakiego typu partycje znajdo-

wały się na nim przed zamazaniem tabli-
cy partycji. Problem w tym, że takimi
informacjami większość użytkowników
nie dysponuje. Tu z pomocą przycho-
dzi Gpart – narzędzie, którego działanie
wydaje się być proste: program analizu-
je dane zapisane na dysku (jeszcze nie
skasowane) i na ich podstawie próbuje
odbudować tablicę partycji dysku.

Praca z narzędziem Gpart

Ponieważ po skasowaniu partycji nie
mamy dostępu do żadnych danych, które
się na dysku znajdują, nie możemy rów-
nież uruchomić Gparta. W takiej sytu-
acji powinniśmy skorzystać z ratunko-
wej dystrybucji Linuksa – RIP. Po wło-
żeniu do napędu CD/DVD bootowalnej
płyty i ponownym uruchomieniu kom-
putera, naszym oczom ukaże się ascetycz-
nie wyglądające okno terminala. Po zalo-
gowaniu się na konto administratora sys-
temu (root) mamy do dyspozycji kilkadzie-
siąt programów służących do odzyskiwa-

R

E

K

L

A

M

A

Wybrane parametry

DD_rescue:

-w

– przerywa kopiowanie jeśli

napotka na błędy

-r

– kopiowanie wsteczne

(od końca pliku do początku)

-v

– wyświetla pełną informację

o procesie kopiowania

-q

– nie wyświetla żadnych

komunikatów

-e x

– przerywa działanie po

osiągnięciu x błędów

-s s

– rozpoczyna kopiowanie pliku

od s bajta

-m m

– kopiuje jedynie m bajtów

-d

– wykorzystuje bezpośredni

dostęp do urządzenia blokowego
(z pominięciem pamięci cache)

background image

34

bezpieczeństwo

styczeń 2005

nia i ratowania różnych systemów opera-
cyjnych. Nas interesuje Gpart.

Wydajemy polecenie

gpart [opcje]

urządzenie

i czekamy na to, aż program

przeanalizuje nasz nośnik danych pod
względem struktury zapisanych na nim
danych. Przykładowo:

# gpart /dev/hda

spowoduje, że narzędzie będzie analizo-
wało dysk /dev/hda.

Po pewnym czasie (może trwać to

nawet kilkanaście minut – w zależności
od tego jakiej wielkości posiadamy dysk)
naszym oczom powinna ukazać się infor-
macja podobna do tej z Listingu 1.

Wynika z niej, że pierwsza party-

cja jest typu ext2 i ma rozmiary 101 MB,
podczas gdy druga partycja jest najpraw-
dopodobniej partycją wymiany (swap) o
rozmiarach sięgających ponad 1 GB.

Jeśli przedstawione informacje uwa-

żamy za prawdziwe, możemy zapisać
na dysku nową tablicę partycji wydając
polecenie:

# gpart -W /dev/hda /dev/hda

Parametr /dev/hda podajemy dwa razy,
gdyż pierwszy mówi nam, jaka jest struk-
tura badanego dysku, a drugi zapisuje na
wskazanym dysku tablicę partycji.

Po ponownym uruchomieniu kompu-

tera możemy od nowa cieszyć się zawar-
tością naszego dysku.

Więcej o Gpart

Jak zobaczyliśmy, w niektórych sytu-
acjach potrafi naprawić strukturę dysku,
na którym po zamazaniu tablicy party-
cji utworzono nowe partycje (jeszcze nie-
formatowane). Dzieje się tak dlatego, że
narzędzie to nie próbuje odzyskać zamaza-
nej tablicy partycji, lecz na podstawie roz-
kładu danych na dysku (analizuje sektor
po sektorze) stara się stworzyć tablicę par-
tycji na nowo. W efekcie, wydawać by się

mogło, tragiczna w skutkach próba zmiany
typu partycji z ext3 na swap zostanie pra-
widłowo zdiagnozowana przez Gparta
i naprawiona.

Mimo swojej niepozorności, Gpart

jest potężnym narzędziem, które potra-
fi o wiele więcej niż opisaliśmy powy-
żej. Obsługuje większość znanych typów
partycji – począwszy od ext2, ext3, xfs,
fat, poprzez stosowane w systemie Win-
dows
ntfs i vfat, a skończywszy na party-
cjach LVM czy hpfs.

Gpart jest wyposażony również

w szereg dodatkowych użytecznych
opcji, służących przykładowo do spo-
rządzania kopii zapasowych sektora roz-
ruchowego, a także do odzyskiwania
danych z formatowanych partycji (tylko
w niektórych okolicznościach)

Praca z programem unrm

Radziliśmy, jak uporać sobie z uszko-
dzonymi fizycznie nośnikami danych,
z zamazanymi systemami plików, a teraz
przyszła kolej na odzyskiwanie skasowa-
nych plików.

Pomocną aplikacją w takich sytu-

acjach jest unrm, przypominający nieco
swoim działaniem program undelete, pra-
cujący w systemie DOS.

Jest to skrypt powłoki BASH, który na

podstawie analizy i-węzłów potrafi przy-
wrócić skasowane pliki.

Jego działanie jest proste – wystarczy

w wierszu poleceń wpisać z uprawnienia-
mi administratora systemu komendę

unrm

/dev/hda

, aby na ekranie pojawiła się lista

plików możliwych do odzyskania.

Aplikacją posiada wiele dodatkowych

parametrów ułatwiających wyszukiwanie
utraconych zbiorów. Możliwe jest odzy-
skiwanie danych należących do jakiegoś
użytkownika (opcja -u), a także plików
zawierających określony tekst (opcja -s).

Podstawowym problemem, który

pojawia się w przypadku skuteczne-
go odzyskania pliku, jest jego zapis.
Program unrm nie przywraca plików

w miejsce, z którego zostały usunięte
(nie mylmy go zatem z katalogiem Śmiet-
nik
w niektórych popularnych menedże-
rach okien), lecz tworzy plik o nazwie

unrm.recovered/unrm.inode#

, w którym

przy odrobinie szczęścia znajdziemy
nasze skasowane dane.

Profilaktyka

Większości problemów opisanych w arty-
kule można uniknąć. Dobrym nawy-
kiem jest sporządzenie kopii zapasowej
MBR (512 bajtów – mieści się na każdej
dyskietce). Wystarczy w linii poleceń
z uprawnieniami administratora systemu
wydać komendę:

# dd if=/dev/hda of=mbr bs=512 count=1

W efekcie otrzymamy plik o nazwie mbr
zawierający kopię naszego sektora rozru-
chowego.

Powinniśmy także przyzwyczaić się

do systematycznego okresowego sporzą-
dzania kopii zapasowej najważniejszych
plików systemowych (

tar -cjvf archi-

wum.tar.bz2 /etc

) i katalogu użytkowni-

ków systemu (

tar -cjvf archiwum.tar.bz2

/home

).

Wskazane jest również używanie sys-

temu plików z księgowaniem (zastąpmy
tradycyjny ext2 nowocześniejszym roz-
wiązaniem – ext3), aby w przypadku
nagłego spadku napięcia nie trzeba było
odzyskiwać bajta po bajcie.

Podsumowanie

Utrata danych jest sytuacją, która może
przytrafić się każdemu. Istnieje szereg
narzędzi, za pomocą których możliwe
jest odzyskanie skasowanych zbiorów.
Należy również pamiętać, że i te narzę-
dzia mogą zawieść i wtedy niezbędna
stanie się kosztowna wizyta w specjali-
stycznym laboratorium.

Najlepszym rozwiązaniem wydaje się

zachowanie szczególnej ostrożności pod-
czas kasowania plików i pracami związa-
nymi ze zmianami w tablicy partycji.

W Internecie:

● Strona domowa DD_rescue:

http://freshmeat.net/projects/
dd_rescue/

● Strona projektu programu Gpart:
http://www.stud.uni-hannover.de/

user/76201/gpart/

Listing 1:

Wynik działania

programu Gpart:

Primary partition(1)
type: 131(0x83)(Linux ext2 filesystem)
size: 101mb

#s(208776) s(63-208838)

chs: (0/1/1)-(207/2/57)d (0/1/1)-(207/2/57)r

Primary partition(2)
type: 130(0x82)(Linux swap or Solaris/x86)
size: 1019mb

#s(2088448) s(208845-2297292)

chs: (207/3/1)-(1023/15/63)d (207/3/1)-(2279/0/61)r


Wyszukiwarka

Podobne podstrony:
2010 01 Odzyskiwanie danych z twardego dysku
2005 01 Nessus – skaner bezpieczeństwa [Bezpieczenstwo]
2005 01 Bezpieczne łączenie się z Internetem [Bezpieczenstwo]
2005 01 06 Bezpieczny kraj
01 reprezentacja danychid 2917
ei 2005 01 02 s078
2005 01 rozsz (2)
Inżynier Budownictwa 2005 01
egzamin 2005 01 31
LM 2005 01
2005 01 Monitor i konserwator akumulatora up ledy11
2005 01 podst id 381826 Nieznany (2)
226 Zasada odzyskiwania danych)
ei 2005 01 02 s008
ei 2005 01 02 s076
PL Linux+ 2005 01 (osiol NET) www!OSIOLEK!com
2010 01 Synchronizacja danych na wielu nośnikach [Administracja]

więcej podobnych podstron