Резервирование программой ``tar'':
Если Вы используете для резервирования ``tar'', разберитесь с ее параметрами командной строки: наберите “man tar ”, там будет подробное описание. Еще потребуется знать, как обращаться к резервным носителям. В мире Unix все устройства доступны как файлы. Если запись идет на символьное устройство, имя “file” является именем устройства, например ``
/dev/nst0'' для SCSI-стриммера).
Следующая команда скопирует Вашу Linux-систему в файловую систему ``/archive/'', исключив псевдофайловую систему ``/proc/
'', все смонтированные файловые системы в ``
/mnt/'', саму систему ``
/archive/'' и Squid cache, который незачем резервировать, да и занимает он немало места.
tar -zcvpf /archive/full-backup-`date '+%d-%B-%Y'`.tar.gz \ --directory / --exclude=mnt --exclude=proc --exclude=var/spool/squid . |
Не пугайтесь длинной команды! Разделите ее на компоненты и поймите ее красоту и простоту.
Здесь использованы опции: ``z'' (сжать резервную копию программой ``gzip''), ``c'' (создать архивный файл), ``v'' (отображать список файлов при архивации), ``p'' (сохранить в архиве права доступа к файлам: при восстановлении они будут тоже восстановлены). Опция ``f'' (file) указывает, что следующий параметр задает имя файла или устройства длязаписи. Обратите внимание на то, что имя архивабудет содержать дату его создания, поскольку в имя файла включена команда ``date''. Общее соглашение об именах состоит в том, чтобы к имени архива добавлять ``tar'', а к имени сжатого архива добавлять ``
tar.gz''.
Опция ``--directory'' задает имя начального каталога, из которого надо брать данные для архивации (в данном случае ``/''). Опция ``--exclude'' указывает каталоги, которые не надо архивировать. Наконец, символ ``.'' указывает, что упаковать все надо с путями относительно текущего каталога.
Обратите внимание: Опции для tar cAsE-sEnSiTiVe! То есть, чувствительны к регистру символов. К тому же, многие опции могут задаваться как один символ (например, ``f'') или как несколько (например, ``file''). Краткая форма предваряется одним символом ``-'', а полная двумя такими символами. |
Другой пример: запись только определенных файловых систем (в противоположность записи всех, кроме некоторых, как было показано выше).
tar -cvpf /dev/nst0 --label="Backup set created on `date '+%d-%B-%Y'`." \ --directory / --exclude=var/spool/ etc home usr/local var/spool |
Поскольку стриммер устройство символьное, невозможно указать имя файла архива на ленте. Имя в команде tar просто задает имя устройства, ``/dev/nst0'', первый стриммер на SCSI.
Обратите внимание: При использовании имени `` /dev/nst0'' лента не будет перемотана после записи архива, что позволяет записывать несколько архивов один за другим на ленту стриммера. А если перемотка нужна, используйте имя ``/dev/st0''. |
Будут архивироваться файлы из каталогов ``/etc/'', ``/home/'', ``/usr/local'' и ``/var/spool/'' (кроме Squid cache).
При работе с лентой можно использовать команды для перемотки и извлечения кассеты из стриммера:
mt -f /dev/nst0 rewind mt -f /dev/nst0 offline |
Замечание: Первый символ ``/'' (slash) будет удален программой tar после создания архива. Такой режим работы задан по умолчанию и нужен, чтобы Вы случайно не перезаписали критические файлы их старыми версиями. Если Вы хотите как раз обратного результата, задайте параметр ``--absolute-paths'', тогда tar сохранит полные пути. Я не советую делать это, поскольку такой подход опасен! |