Как создать резервную копию с помощью команды tar в Linux

Как создать резервную копию с помощью команды tar в Linux

 

Привет, любители Linux, если вы ищете бесплатные инструменты для резервного копирования из командной строки в системах Linux, тогда команда tar — это решение для вас. Команда Tar может создать резервную копию вашего приложения, файлов конфигурации и папок системы.

Tar означает « архив на магнитной ленте » и может архивировать несколько файлов и каталогов в файл tar. Этот tar также можно сжать с помощью утилит сжатия gzip и bzip2. Когда у нас будет готовая резервная копия tar, мы можем легко перенести ее на удаленный сервер резервного копирования с помощью команд scp или rsync .

В этом посте мы продемонстрируем, как создать резервную копию с помощью команды tar в Linux.

Как создать файл резервной копии tar?

Чтобы создать файл резервной копии tar, сначала определите файлы и папки, которые будут частью вашей резервной копии. Предположим, мы хотим сделать резервную копию папки / home / linuxtechi , / etc и / opt . Выполните следующую команду tar,

$ tar <options> {tar-backup-filename} {files-folders-to-be-backed-up}

$ sudo tar -cvpf  system-back.tar  /home/linuxtechi /etc /opt

Это создаст tar-шар в текущем рабочем каталоге. В приведенной выше команде tar мы использовали следующие параметры

  • c — Создать новый архив
  • v — отображать подробный вывод при создании файла tar
  • f — имя файла архива
  • p — сохранить разрешения

Как вы видели, мы не использовали никаких параметров сжатия для сжатия tar-файла. Итак, чтобы сжать файл резервной копии tar во время архива, используйте -z (сжатие gzip) или -j (сжатие bzip2)

Создание резервной копии tar вместе со сжатием gzip

Используйте ‘ z ‘ в команде tar, чтобы использовать сжатие gzip. На этот раз файл резервной копии tar будет иметь расширение .tgz или .tar.gz.

$ sudo tar -zcvpf system-back.tgz /home/linuxtechi /etc /opt

Создание резервной копии tar вместе со сжатием bzip

Используйте параметр ‘ j ‘ в команде tar, чтобы использовать сжатие bzip2, на этот раз файл резервной копии tar будет иметь расширение .tbz2 или .tar.bz2

$ sudo tar -jcvpf system-back.tbz2 /home/linuxtechi /etc /opt

Как добавить файл в резервную копию tar?

Чтобы добавить файл к существующему файлу резервной копии tar, используйте опцию ‘ -r ‘, завершите команду, как показано ниже:

Синтаксис: $ tar -rvf {tar-backup} {новый файл для добавления}

Предположим, мы хотим добавить файл /root/app.yaml в system-backup.tar, запустите

$ sudo tar -rvf system-back.tar /root/app.yaml

Примечание. Мы не можем добавлять файлы или папки в сжатую резервную копию tar, поскольку она не поддерживается.

Как исключить файл при создании резервной копии tar?

Чтобы исключить файл при создании резервной копии tar, используйте параметр « -X », за которым следует исключить файл. Чтобы использовать функцию исключения, мы должны создать файл исключения, имя которого будет исключаться.

$ cat exclude.txt
/etc/debconf.conf
/etc/hosts

Выполните следующую команду, чтобы исключить файлы, упомянутые в exclude.txt, при создании резервной копии tar /etc.

$ sudo tar -X exclude.txt -zcpvf etc-backup.tgz /etc

Как просмотреть содержимое резервной копии tar?

Чтобы просмотреть содержимое резервной копии tar, используйте опцию « -t », полные опции будут « -tvf ». Пример показан ниже:

$ sudo tar -tvf system-back.tgz | grep -i etc/fstab
-rw-rw-r-- root/root    665 2021-07-07 04:57 etc/fstab
$

Как извлечь резервную копию tar?

Используйте опцию ‘ -x ‘ в команде tar для извлечения резервной копии tar, полная опция будет ‘ -xpvf ‘. Пример показан ниже

$ sudo tar -xpvf system-back.tgz

Эта команда извлечет файл system-back.tgz в текущий рабочий каталог. Если вы хотите извлечь его в определенную папку, используйте опцию « -C », за которой следует путь к папке. В следующем примере мы извлекаем system-back.tgz в папку / var / tmp.

$ sudo tar -xpvf system-back.tgz -C /var/tmp/
$ ls -l /var/tmp/

Как создать резервную копию с помощью команды tar в Linux

Как проверить целостность резервной копии tar?

Для tar Ball используйте параметр ‘-tf’ и перенаправьте вывод в файл / dev / null,

$ tar -tf system-back.tar > /dev/null

Если указанная выше команда не выводит на экран какие-либо данные, мы можем сказать, что повреждений нет.

В случае повреждения мы получим результат примерно так, как показано ниже:

Как создать резервную копию с помощью команды tar в Linux 1

Чтобы проверить целостность сжатой резервной копии tar, используйте следующие

Для .tgz / .tar.gz

$ gunzip -c system-back.tgz | tar -t > /dev/null

Для .tbz2 / .tar.bz2

$ tar -tvf system-back.tbz2 > /dev/null

Вышеуказанные команды не должны выводить на экран какие-либо данные. В случае, если есть вывод, то мы можем сказать, что в сжатой резервной копии tar могут быть некоторые повреждения.

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