Исключить смонтированные папки из архива tar
Мы хотим сделать резервную копию нашего сервера, и это кажется довольно простым делом, кроме одного. В настоящее время мы используем что-то вроде этого:
tar cvpjf backup.tar.bz2 --exclude = / proc --exclude = / lost + found --exclude = / backup.tar.bz2 --exclude = / mnt --exclude = / sys /
Все хорошо, но мы не хотим включать точки монтирования, так как несколько пользователей ftp имеют доступ к своим домам с помощью монтирования, например:
mount --bind / var / www / folder / home / user / html
Есть ли способ исключить такие папки из резервной копии?
2 ответа
Используйте соответствующие tar
опция командной строки:
--one-file-system
stay in local file system when creating archive
Опция --one-file-system
действительно работает, ему просто нужен какой-то очень специфический синтаксис.
tar -cvzf /mnt/backup.tar.gz --one-file-system /
работает, но
tar --one-file-system -cvzf /mnt/backup.tar.gz /*
не. Вероятно, это связано с тем, что глобализация оболочки приведет к тому, что опция будет применена к каждому подкаталогу / индивидуально. Таким образом, /proc включается, потому что все в /proc действительно является одной файловой системой.