архивирование в *nix |
![]() |
Добавил(а) microsin |
Под Линукс в архивировании для новичков есть маленькая трудность, поскольку общеупотребительным форматом для архивов является так называемый tar.gz. Это не что иное, как двойной архив, продукт последовательной работы сначала утилиты tar, которая может слить файлы и каталоги в один несжатый файл (так называемый tarfile), а потом сжатие этого файла архиватором gzip. Такая практика повелась де-факто потому, что gzip не умеет работать с каталогами, а утилита tar, предназначенная для создания программных пакетов, это делать умеет.
Утилита tar позволяет слить несколько файлов в один. Чтобы занести файлы 'apple', 'angst' и 'asparagus' в архив по имени 'afiles.tar', используйте следующую команду:
Как забэкапить, например, каталог /usr, с подкаталогами (c - create, f - делать вывод в файл, а не на ленту):
Как посмотреть подробно содержимое tar (t - вывести список содержимого архива, v - verbose, f - file):
Как сразу сделать архив со сжатием:
Подсказка по командам tar: Утилита gzip позволяет создавать архив со сжатием (с расширением .gz).
Как заархивировать файл (в этом примере создается архив backup_usr.tar.gz, а исходный файл удаляется):
В этом примере исходный файл сохраняется, и создается новый файл архива backup_usr.tar.gz:
Вывод подсказки: Утилита bzip2 делает более современный архив (с расширением .bz2).
Как заархивировать файл (в этом примере создается архив backup_usr.tar.bz2, а исходный файл удаляется):
В этом примере исходный файл сохраняется, и создается новый файл архива backup_usr.tar.bz2 (k - keep):
Как распаковать файл gcc-g++-4.2.2.tar.bz2 (d - decompress, при этом файл gcc-g++-4.2.2.tar.bz2 стирается, и появляется файл gcc-g++-4.2.2.tar):
В этом примере исходный файл сохраняется, и создается новый файл gcc-g++-4.2.2.tar:
Вывод подсказки: ASPLinux, утилита zip. В следующем примере создается стандартный файл архива /bbb/071102asplinux10.zip и туда добавляется содержимое папок /home и /etc со всеми файлами и подкаталогами (опция -r): # zip -r /bbb/071102asplinux10.zip /home /etc |