我们想要备份我们的服务器,这似乎很简单,除了一件事。目前我们使用类似这样的方法:
tar cvpjf 备份.tar.bz2 --exclude=/proc --exclude=/lost+found --exclude=/backup.tar.bz2 --exclude=/mnt --exclude=/sys /
一切都很好,但我们不想包含挂载点,因为几个 ftp 用户已经使用如下挂载点 chroot 访问他们的家:
mount --bind /var/www/文件夹 /home/user/html
有什么方法可以排除此类文件夹的备份吗?
答案1
使用适当的tar
命令行选项:
--one-file-system
stay in local file system when creating archive
答案2
该选项--one-file-system
确实有效,它只需要一些非常具体的语法。
tar -cvzf /mnt/backup.tar.gz --one-file-system /
有效,但是
tar --one-file-system -cvzf /mnt/backup.tar.gz /*
不会。这可能是因为 shell 通配符会导致选项被单独应用于 / 的每个子目录。因此 /proc 被包括在内,因为 /proc 中的所有内容确实是一个文件系统。