16+
ComputerPrice
НА ГЛАВНУЮ СТАТЬИ НОВОСТИ О НАС




Яндекс цитирования


Версия для печати

Модуль поиска не установлен.

Быстрое восстановление данных или семь раз отмерь, один раз отрежь!

24.07.2008

Евгений Сосновский

Существует довольно много программ для восстановления информации. GetDataBack, File Recovery, Easy Recovery и другие успешно применяются довольно давно. Правда, все эти программы написаны для Windows. Как же быть пользователям юниксовых систем? Бытует мнение, что на Linux/Unix машинах удаленную информацию невозможно восстановить.

Это не совсем так. Дело в том, что архитектура семейства Unix довольно специфическая. Здесь под файлом может пониматься любой объект, включая каталог. И те данные, которые содержит каталог, на самом деле хранятся в другом месте, а мы работаем со ссылками, которые указывают на то или иное место в файловой системе. После удаления файла блоки на диске помечаются как свободные и возможность для последующего восстановления все-таки есть.

Если данные вам жизненно необходимы, то работу с операционной системой лучше прекратить, так как вы рискуете перезаписать блоки, которые использовались удаленным файлом. После – прямая дорога в центр восстановления данных или нудный поиск утилит для восстановления. Лишних трат и головной боли можно избежать, если заняться резервным копированием важных данных.

Программ для резервного копирования данных семейства Unix/Linux довольно много, плюс – в каждой операционной системе существуют свои утилиты для этого.

Эти утилиты хорошо работают с вашими данными, но если вы работаете в крупной компании с несколькими серверами и накопителями информации большого объема, то вам не помешает ознакомиться с более сложными и функциональными пакетами резервного копирования и восстановления.

Я советую обратить внимание на таких разработчиков, как Legato или Veritas. Они предоставляют комплексный набор утилит, предназначенный для резервного копирования и восстановления данных в сложной компьютерной среде. Также они подходят и для других операционных систем.

Остановлюсь подробнее на программах, которые использую сам – Ufsrestore, которая входит в OС SOLARIS, и Legato Networker, одной из лучших, на мой взгляд, программ для восстановления.

Обращение к утилите Ufsrestore не бывает без обращения к Ufsdump. Ufsdump обеспечивает "бэкап", а Ufsrestore – восстановление информации. В отличие от других утилит, Ufsdump была специально создана для выполнения резервного копирования, и именно она рекомендована для копирования файловых систем. Из плюсов можно отметить встроенную опцию для проверки данных на магнитной ленте на соответствие исходной файловой системы, учет структуры файловой системы UFS, работу непосредственно через исходный файл устройства и экономию магнитной ленты за счет усовершенствованных встроенных опций для создания инкрементальных резервных копий.

Синтаксис команды ufsdump следующий:

/usr/sbin/ufsdump<options> <arguments> <files to dump>

где <arguments> – аргументы опций, которые могут быть записаны в виде нескольких строк,

а <files to dump> – файлы, которые подлежат резервному копированию.

 

Утилита Ufsrestore использует обратный процесс. Она копирует файлы с резервных копий, созданные Ufsdump, при этом, если запуск производит суперпользователь, то восстановление происходит с сохранением исходной принадлежности файлов.

Синтаксис команды выглядит так:

ufsrestore <options> <arguments> <filename(s)>

 

Например, для восстановления с резервной копии одиночного файла, созданного Ufsdump, необходимо задать:

ufsrestore f /dev/rmt/0 filename

 

Как видите, все довольно просто.

 

Перейдем к Networker от Legato. Эта программа отличается простотой и универсальностью, ее версии постоянно обновляются и используются для большинства операционных систем.

Итак, задача: необходимо восстановить экспортный dmp-файл и скрипт из удаленной директории по этому пути /software/oracle/admin/testdb/JK (ОС SOLARIS).

 

login as: root

root@Serv10's password:

Last login: Mon Apr 21 11:14:23 2008 from 192. 168. 1. 34

Sun Microsystems Inc.    SunOS 5. 6       Generic August 1997

Sun Microsystems Inc.    SunOS 5. 6       Generic August 1997

###

Serv10(root)> df -k

Filesystem            kbytes    used   avail capacity Mounted on

/dev/dsk/c1t15d0s0   4032142 3350280 641541    84%    /

/proc                      0       0       0     0%    /proc

fd                         0       0       0     0%    /dev/fd

/dev/vx/dsk/rootdg/home

                     3145728 1721933 1334980    57%    /export/home

/dev/vx/dsk/ld00     9302605 6099170 3110409    67%    /ld00

swap                 2767560    4120 2763440     1%    /tmp

/dev/vx/dsk/dt/rd01 17641240 12697140 4866904    73%    /rd01

/dev/vx/dsk/dt/rd02 17641240 8500856 8997680    49%    /rd02

/dev/vx/dsk/dt/rd03 17641472 14411676 3209836    82%    /rd03

/dev/vx/dsk/dt/rd04 17641472 15962064 1679408    91%    /rd04

/dev/vx/dsk/dt/rd05 17641472 8782984 8729396    51%    /rd05

/dev/vx/dsk/dt/rd06 17641240 12503148 5065812    72%    /rd06

/dev/vx/dsk/dt/rd07 17641240 2562464 14843368    15%    /rd07

/dev/vx/dsk/dt/rd08 17641240 11786604 5763220    68%    /rd08

/dev/vx/dsk/dt/rd09 17641240 15056944 2543980    86%    /rd09

/dev/vx/dsk/dt/rd10 17641472 9972152 7552944    57%    /rd10

/dev/vx/dsk/dt/rd11 17641472 14407648 3191300    82%    /rd11

/dev/vx/dsk/dt/rd12 17641472 16428400 1213072    94%    /rd12

/dev/vx/dsk/dt/rd14 17641240 11733124 5830796    67%    /rd14

/dev/vx/dsk/dt/rd15 17641472 17230216 404956    98%    /rd15

/dev/vx/dsk/dt/rd17 15544088 12044628 3486756    78%    /rd17

/dev/vx/dsk/dt/rd18 33554432 18862280 14577536    57%    /rd18

/dev/vx/dsk/dt/rd19 16777216 10382704 6344600    63%    /rd19

 

##### Теперь применим непосредственно утилиту восстановления. Восстановление данных будем производить с бэкапного сервера – servbck, а выполнять операции на клиентском сервере Serv10.

Serv10(root)> recover -s servbck -c Serv10 (где servbck – бэкапный сервер, а -c Serv10 – клиентский сервер)

recover: Current working directory is /

recover> cd /software/oracle/admin/testdb/JK

##### Просмотр нашей директории.

recover> ls –l

total 57248

-rw-r--r-- oracle       58605568 Apr 15 16:26 export_Base. dmp

-rw-r--r-- root              538 Apr 15 17:56 export_Base. dmp. log

-rwxr----- oracle           3279 Apr 15 18:02 import_user_new. sh

##### Вот мы и увидели удаленные файлы, теперь неплохо бы и пометить их ;-)

Выделяем из них 2 файла *. dmp и *. sh.

recover> add export_Base. dmp

1 file(s) marked for recovery

recover> add import_user_new. sh

2 file(s) marked for recovery

##### Командой list мы можем просмотреть необходимые пути.

recover> list

/rd03/software/oracle/admin/testdb/JK/export_Base. dmp @ Sat Apr 19 02:49:39 2008

/rd03/software/oracle/admin/testdb/JK/import_user_new. sh @ Sat Apr 19 02:49:39 2008

2 file(s) marked for recovery

#####   Зададим команду vol для определения ленточного устройства.

recover> vol

Volumes needed (all on-line):

        Incr. 001 at /dev/rmt/1cbn

 

##### Dest нам поможет определить путь для восстановления информации.

Если же мы хотим восстановить файлы не в текущую директорию, а в другую, используем команду relocate.

recover> dest

recover files into their original location

##### И, наконец, командой rec завершаем весь процесс восстановления удаленных файлов.

recover> rec

recover: Total estimated disk space needed for recover is 57 MB.

Recovering 2 files into their original locations

Volumes needed (all on-line):

        Incr. 001 at /dev/rmt/1cbn

Requesting 2 file(s), this may take a while. . .

. / import_user_new. sh

. /export_Base. dmp

Received 2 file(s) from NSR server `servbck'

Recover completion time: Mon Apr 21 11:32:32 2008

 

Файлы были успешно восстановлены в необходимую директорию.

 

P. S.   “Cемь раз отмерь – один раз отрежь” – мудрая народная пословица ;-)



статьи
статьи
 / 
новости
новости
 / 
контакты
контакты