Dec
12
2、释放
引用
-k, --keep-old-files
还原备份文件时,不覆盖已存在的文件
-m, --modification-time, --touch
还原文件时,不变更文件的更改时间
-p, --same-permissions
解析许可权限信息,即保留备份文件中的权限信息
-s, --same-order, --preserve-order
以与备份文件相同的顺序还原文件
--preserve
等于同时设置-p和-s
--no-same-permissions
不解析许可权限信息,这是普通用户的默认设置,仅对影响管理员的操作有影响
--no-same-owner
不使用备份文件中的所有者信息,而以您自己的身份解析文件
--same-owner
使用相同的文件所有者还原文件
--overwrite
覆盖已经存在的文件和目录
--overwrite-dir
覆盖已经存在的目录
--recursive-unlink
释放前,先删除整个目录下所有文件的连接
还原备份文件时,不覆盖已存在的文件
-m, --modification-time, --touch
还原文件时,不变更文件的更改时间
-p, --same-permissions
解析许可权限信息,即保留备份文件中的权限信息
-s, --same-order, --preserve-order
以与备份文件相同的顺序还原文件
--preserve
等于同时设置-p和-s
--no-same-permissions
不解析许可权限信息,这是普通用户的默认设置,仅对影响管理员的操作有影响
--no-same-owner
不使用备份文件中的所有者信息,而以您自己的身份解析文件
--same-owner
使用相同的文件所有者还原文件
--overwrite
覆盖已经存在的文件和目录
--overwrite-dir
覆盖已经存在的目录
--recursive-unlink
释放前,先删除整个目录下所有文件的连接
举例:
释放文件时,设置为备份文件中的相同所有者(仅对管理员而言)
tar --same-owner -xzvf etc.tar.gz
通过管道,把/etc目录用tar整个“拷贝”到/backup/etc,而不用建立任何临时文件
因为根本不需要生成备份包文件,所以这里不需要-z参数
tar cvf - /etc | tar xvf - -C /backup/etc
这里同上面的原理是一样的,只不过通过ssh直接“拷贝”到远端机器上而已
配合ssh密钥匹配,可实现不用人工干预的备份工作
tar cvf - /etc | (ssh root@192.168.228.244 'tar xvf - -C /backup/etc')
3、操作磁带设备
部分参数只适用于磁带设备,不适用于常规的磁盘文件。
引用
-K file, --starting-file=file
从指定的文件开始还原(按顺序)
-L length, --tape-length=length
设置磁带的容量,单位为1024字节(bytes)
-M, --multivolume
在建立、还原备份文件或列出其中内容时,采用多卷模式(不能对文件操作)
-V name, --label=name
建立使用指定卷标的备份文件
-W, --verify
写入备份文件后,校验文件是否正常
-F script, --info-script=script, --new-volume-script=script
更换磁带时执行指定的脚本文件,必须与参数-M同时使用
从指定的文件开始还原(按顺序)
-L length, --tape-length=length
设置磁带的容量,单位为1024字节(bytes)
-M, --multivolume
在建立、还原备份文件或列出其中内容时,采用多卷模式(不能对文件操作)
-V name, --label=name
建立使用指定卷标的备份文件
-W, --verify
写入备份文件后,校验文件是否正常
-F script, --info-script=script, --new-volume-script=script
更换磁带时执行指定的脚本文件,必须与参数-M同时使用
举例:
把/bin、/usr/bin目录都打包到st0磁带设备中
tar cvf /dev/st0 /bin /usr/bin
把old.dmp文件追加到st0磁带中(使用cvf,会删除原来的文件的)
Linux下使用磁带机的简单方法,可以见这里:点击
tar rvf /dev/st0 old.dmp
4、其他
还有一些控制参数这里不详细讨论了,请自行测试。
但提醒一句,-T参数比较重要哦。
引用
--null
-T从null设备读取文件名,覆盖-C的设置
-o, --old-archive, --portability
将数据写入备份文件时使用V7格式
--posix
将数据写入备份文件时使用POSIX格式
-G, --incremental
处理旧GNU格式的增量备份
--rsh-command=command
不使用rsh命令连接远程主机,而使用指定的命令进行
--suffix=suffix
指定要删除文件前备份文件,该备份文件使用的后缀,默认是“~”
--totals
创建备份文件时,列出已建立的备份文件的大小
tar --totals -cvf tmp.tar tmp/
-R, --block-number
在输出信息时,一同block number信息
-S, --sparse
若文件中有大量连续0字节时,将该文件保存成稀疏文件
-T file, --files-from=file
指定样式文件,文件内容为一个或多个条件样式,供程序还原或创建符合指定条件的文件
--use-compress-program=program
使用指定的压缩程序对备份文件压缩或解压
--volno-file=FILE
使用或更新FILE文件中指定的卷号码
-w, --interactive, --confirmation
当遇到问题时,要求用户先确认
-B, --read-full-records
读取数据是重设扇区大小,仅适用于BSD 4.2的管道操作
-O, --to-stdout
把从备份文件里还原的文件输出到标准输出设备
--version
版本信息
--help
帮助信息
-T从null设备读取文件名,覆盖-C的设置
-o, --old-archive, --portability
将数据写入备份文件时使用V7格式
--posix
将数据写入备份文件时使用POSIX格式
-G, --incremental
处理旧GNU格式的增量备份
--rsh-command=command
不使用rsh命令连接远程主机,而使用指定的命令进行
--suffix=suffix
指定要删除文件前备份文件,该备份文件使用的后缀,默认是“~”
--totals
创建备份文件时,列出已建立的备份文件的大小
tar --totals -cvf tmp.tar tmp/
-R, --block-number
在输出信息时,一同block number信息
-S, --sparse
若文件中有大量连续0字节时,将该文件保存成稀疏文件
-T file, --files-from=file
指定样式文件,文件内容为一个或多个条件样式,供程序还原或创建符合指定条件的文件
--use-compress-program=program
使用指定的压缩程序对备份文件压缩或解压
--volno-file=FILE
使用或更新FILE文件中指定的卷号码
-w, --interactive, --confirmation
当遇到问题时,要求用户先确认
-B, --read-full-records
读取数据是重设扇区大小,仅适用于BSD 4.2的管道操作
-O, --to-stdout
把从备份文件里还原的文件输出到标准输出设备
--version
版本信息
--help
帮助信息
四、参考资料
http://www.oreillynet.com/linux/cmd/cmd.csp?path=t/tar
http://linux.vbird.org/linux_basic/0240tarcompress.php#tar
http://linux.chinaitlab.com/command/726307.html
原文备份:
下载文件