BackUp: бэкап сайта в ZIP-архив
Бывает необходимо сделать BackUp сайта и эта заметка со списком комманд, именно для таких случаев.
Многие скажут, что необходимо использовать TAR, ввиду его древности. Но я все же за совместимость.
ZIP-архивы поддерживаются всеми операционными системами.
Упаковать содержимое текущей директории можно следующей коммандой:
zip -r -9 site.zip ./
при чем, рекомендую использовать именно ./, а не ./* - таким образом в архив попадут и скрытые файлы тоже (например, .htaccess)
Исключение
Для архивации всего содержимого, исключая каталоги cgi-bin и webalizer:
zip -r -9 site.zip ./ -x "cgi-bin/*" "webalizer/*"
Многотомность (Разбиение архива)
Хоть чисто логически, zip не поддерживает многотомность архивов, можно воспользоваться внешней утилитой:
zip -r -9 - ./ -x "cgi-bin/*" "webalizer/*" | split -db 1024m - ./backup.zip.
В результате получите файлы: backup.zip.00, backup.zip.01, backup.zip.02...
Перед распаковкой их необходимо будет собрать командой:
cat backup.zip.* > backup.zip
Степень сжатия, задается ключом -9, в данном примере - максимальное сжатие (0-9)
Многотомность tar
К сожалению, zip не потдерживает на лету собирать и распоковывать архив. Если вы оперируете с большим объемом данных, то лучше это делать все же с tar:
tar -cz ./ --exclude="cgi-bin" --exclude="webalizer" --exclude="awstats" | split -db 2000m - ./backup.tar.gz.
Распаковка:
cat backup.tar.gz.* | tar -xz