Как создать резервную копию с помощью команды 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?
Для tar Ball используйте параметр ‘-tf’ и перенаправьте вывод в файл / dev / null,
$ tar -tf system-back.tar > /dev/null
Если указанная выше команда не выводит на экран какие-либо данные, мы можем сказать, что повреждений нет.
В случае повреждения мы получим результат примерно так, как показано ниже:
Чтобы проверить целостность сжатой резервной копии tar, используйте следующие
Для .tgz / .tar.gz
$ gunzip -c system-back.tgz | tar -t > /dev/null
Для .tbz2 / .tar.bz2
$ tar -tvf system-back.tbz2 > /dev/null
Вышеуказанные команды не должны выводить на экран какие-либо данные. В случае, если есть вывод, то мы можем сказать, что в сжатой резервной копии tar могут быть некоторые повреждения.
Это все из этого поста, я надеюсь, вы нашли его информативным. Пожалуйста, поделитесь своими отзывами и запросами в разделе комментариев ниже.