Инструменты пользователя

Инструменты сайта


linux:overall:arhive

Это старая версия документа!


Архивация

tar

Утилита для архивации файлов/каталогов.
Никогда не перемещает и не удаляет какие бы то ни было файлы, только архивные копии.
Права на файлы передаются создающему архив.

  • -c - создание нового архива.
  • -r - добавление в существующий.
  • -x - извлечение из архива.
  • -v - подробный вывод.
  • -f - имя нового файла
  • -z - перенаправить вывод в команду gzip, для сжатия.
  • –one-file-system - исключает файлы из любой ФС кроме текущей, например псевдо-файловые системы.
  • –exclude=path - исключает указанный путь из архивации.
  • - (дефис, после аргументов) - выводит содержимое стандартным выводом.

Архивирование текущей директории. Указание точки вместо звездочки, добавит даже скрытые файлы.

# tar -cvf myarhive.tar *

Архивирование и сжатие указанных файлов.

# tar -czvf myarhive.tar.gz /home/user/*.mp4

Перенаправление потока. Можно сразу отправить архив по сети, без промежуточного сохранения.

# tar czvf - ~/sourcedir/ | ssh user@host "cat > ~/myarhive.tar.gz"

Архивация всей системы. Исключая временные разделы и папку /home/andy/, включая /var/ и /usr/.

# tar czvf - --one-file-system / /usr /var --exclude=/home/andy/ | ssh user@host "cat > ~/arh.tar.gz"

Поиск и архивация. Для поиска используем команду find.

# find /var/dir/ -iname "*.mp4" -exec tar -rvf arh.tar {} \;

Разархивировать в указанное место

# tar -xzvf name-arh.tar.gz -C /.../exist-folder

Разделение архивов на части

С помощью команды split можно разделять файлы (архивы) на части, не более указанного размера.
Аргумент -b позволяет указать размер.

Разбиение архива на части.

# split -b 1G myarhive.tar.gz "myarhive.tar.gz.part"

Соединить архив обратно.

# cat myarhive.tar.gz.part* > myarhive.tar.gz

dd

Создание (побайтовых) образов разделов.

  • if - исходный раздел.
  • of - файл/расположение назначения.
  • bs - указание кол-ва байтов, копирования за один раз.

Создаем архив диска

# dd if=/dev/sda of=~/sdadisk.img

Восстановление из образа

# dd if=~/sdadisk.img of=/dev/sda

Форматирование раздела метод с перезаписыванием (if=/dev/random - случайными символами)

# dd if=/dev/zero of=/dev/sda1

Синхронизация rsync

Синхронизирует указанные каталоги.

  • -a - включая подкаталоги.
  • -v - подробный вывод.

Синхронизация указанного каталога

# rsync -av * user@host:directory
linux/overall/arhive.1618914601.txt.gz · Последнее изменение: 2021/04/20 10:30 — admin