Мне интересно, возможно ли создавать резервные копии нескольких каталогов с помощью одной команды в Linux. Конкретно разные сайты, размещенные на VPS.

Скажем, например, у меня есть четыре сайта в /var /www:

/ Var / WWW / site01
/ Var / WWW / site02
/ Var / WWW / site03
/ Var / WWW / site04

Я хочу использовать tar для сжатия каждого из этих каталогов. Можно ли использовать одну команду для сжатия каждого подкаталога в /var /www в отдельный архив?

site01.tar, site02.tar, site03.tar, site04.tar

2 ответа2

3

Как мне tar несколько каталогов?

Автоматизируйте!

Как упомянуто @Seth в комментариях, сценарий, если вы идете сюда, если ваша цель состоит в том, чтобы уменьшить ненужную типизацию.

#!/bin/bash
# backup_dirs_to_tars.sh - back up directories in $backupdir to 
# individual tars in $outputdir
# NB ignores .hidden (dotted) directories

backupdir=/var/www/
outputdir=/home/example/backups

cd $backupdir

for dir in */; do
        tar -cf "$outputdir/$(basename $dir).tar" "$dir"
done

Объяснение:

  • изменить на $backupdir
  • for dir in */ проходит по каталогам в $backupdir (из-за конечного /)
  • создайте архив tar для каждого каталога (названный в честь каталога через basename) в указанном $outputdir

Если вы предпочитаете, вы можете, конечно, создать архивы gzip ped, изменив строку создания на tar -czf "$outputdir/$(basename $dir).tar.gz" "$dir" .

Размышления о резервных копиях (дополнительные ресурсы)

Я не знаю, чего вы пытаетесь достичь с помощью режима резервного копирования, но стоит знать о rdiff-backup (использует rsync и инкременты) и rsnapshot (использует жесткие ссылки для экономии места на файлах, которые не изменяются); оба из них просты в использовании и предоставляют «старые версии» файлов в зависимости от того, как вы их используете.

Также стоит помнить мантру: «непроверенная резервная копия не является резервной копией». Убедитесь, что вы можете восстановить из резервной копии! И rdiff-backup и rsnapshot предоставляют рабочий набор, который можно просмотреть немедленно, что полезно для проверки того, что резервная копия действительно работает.

0

Я использую аналогичную стратегию для резервного копирования моих серверов Linux на работе в общую папку Windows. В основном я делаю резервную копию содержимого в www, /etc /apache2 и базах данных MySQL. Я настроил работу cron, чтобы сделать это автоматически, она работает сама по себе в течение многих лет. Вот как я это сделал https://ittutorials.net/linux/ubuntu/how-to-backup-ubuntu-to-a-windows-share/

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .