通常将备份文件存储在单独的分区中,可以是系统本地硬盘中的一个分区,也可以是另外挂装的移动设备中的一个分区。因此,在备份之前,应该创
建挂装点目录,并挂装文件系统。
# mkdir /backups
# mount -t ext3 /dev/sdc1 /backups
# mkdir /backups/logs /backups/last-full
指定要备份的文件或目录
1、使用如下的命令备份指定的一个或多个目录到 /back ups 目录中的一个归档文件
# tar -zcvpf /backups/full-backup.tar.gz /home
# tar -zcvpf /backups/full-backup.tar.gz /home /etc
2、使用命令替换生成要备份的目录
下面的命令备份整个 / 系统,除了 m nt、m e dia、de v、proc、back ups 目录和 lost+found 目录。
# tar -zcvpf /backups/full-backup.tar.gz -C / \
> $(ls /| egrep -v "backups|mnt|media|dev|lost+found|proc")
3、使用 e x clude 选项剔除无需备份的文件或目录
1) 下面的命令备份整个 / 系统,除了 m nt、m e dia、de v、proc、back ups、var/spool/squid 目录和所有的 lost+found 目录。
# tar -zcvpf /backups/full-backup.tar.gz -C / \
> --exclude=mnt --exclude=media --exclude=dev --exclude=proc \
> --exclude=backups --exclude=*/lost+found \
> --exclude=var/spool/squid
> . # 此处的 “.” 表示要备份根目录(因为前面的 “-C /” 将当前目录切换为根目录)
2) 下面的命令备份 e tc、hom e、usr/local 和 var/spool(不包括 var/spool/squid) 目录。
# tar -zcvpf /backups/full-backup.tar.gz -C / \
> --exclude=var/spool/squid \
> etc home usr/local var/spool
4、将要备份的文件或目录名放入文本文件
# cat whatsbackup.txt
/home
/etc
/usr/local
/root
# tar -zcvpf /backups/full-backup.tar.gz -T whatsbackup.txt
1. -T 参数后指定的文件中,不能使用文件通配符
2. 可以使用 ls 或 find 命令生成 whatsbackup.txt 文件