linux 备份命令

本文详细介绍了Linux系统下使用`tar`、`xfsdump`进行备份和还原的方法。`tar`命令用于目录树备份,支持gzip、bzip2、xz等多种压缩格式,通过不同参数实现压缩、查询和解压缩。`xfsdump`则针对整个文件系统进行备份,支持完整备份和累积备份,适用于xfs文件系统。文章还提供了实践案例和备份策略建议。
摘要由CSDN通过智能技术生成

tar(通常针对目录树系统进行备份工作)

img

GNU `tar' saves many files together into a single tape or disk archive, and can restore individual files from the archive.

tar命令可以将多个文件或目录打包成一个大文件,并能将文件和目录从打包的文件中还原。

常用参数

  • -c, --create,create a new archive,建立打包文件
  • -t, --list,list the contents of an archive,列出打包文件中的内容(重点在查看文件名)
  • -x, --extract, --get,extract files from an archive,解压缩
  • -z, --gzip,filter the archive through gzip,通过gzip的格式进行压缩/解压缩,此时文件名最好为*.tar.gz
  • -j, --bzip2,filter the archive through bzip2,通过bzip2的格式进行压缩/解压缩,此时文件名最好为*.tar.bz2
  • -J, --xz,filter the archive through xz,通过xz的格式进行压缩/解压缩,此时文件名最好为*.tar.xz
  • -v, --verbose,verbosely list files processed,详细列出已处理的文件
  • -f, --file=ARCHIVE,use archive file or device ARCHIVE,其后接要被处理的文件名
  • -C, --directory=DIR,change to directory DIR,该选项用在解压缩(在特定目录中解压缩)
  • -p, --preserve-permissions,extract information about file permissions (default for superuser),保留有关文件权限的信息(超级用户的默认设置),常用于备份重要的配置文件
  • -P, --absolute-names,don't strip leading `/'s from file names,保留绝对路径
  • -X, --exclude-from=FILE,exclude patterns listed in FILE,在压缩过程中不要将FILE打包

常用命令

压缩:tar -cvz/j/J -f filename.tar.gz/bz2/xz

查询:tar -tvz/j/J -f filename.tar.gz/bz2/xz

解压缩:tar -xvz/j/J -f filename.tar.gz/bz2/xz

实践

复制代码

压缩
[root@bogon ~]# tar -cvzf /tmp/test.tar.gz /etc
查看
[root@bogon ~]# tar -tvzf /tmp/test.tar.gz /etc
drwxr-xr-x root/root         0 2020-03-24 20:02 etc/ntp/
-rw------- root/root        86 2017-10-10 00:30 etc/ntp/keys
-rw-r--r-- root/root        72 2017-10-10 00:30 etc/ntp/step-tickers
drwxr-xr-x root/root         0 2020-03-24 20:02 etc/kernel/
drwxr-xr-x root/root         0 2020-03-24 20:02 etc/kernel/postinst.d/
-rwxr-xr-x root/root      1676 2018-09-27 21:47 etc/kernel/postinst.d/51-dracut-rescue-postinst.sh
-r--r----- root/root      4328 2018-09-25 13:57 etc/sudoers
[root@bogon ~]# tar -xvzf /tmp/test.tar.gz  打包文件会在本目录下进行解压缩

[root@bogon ~]# ll | grep etc drwxr-xr-x. 146 root root 8192 May 6 19:22 etc

复制代码

查看的时候发现每个文件都没有了根目录,为了安全起见,在tar所记录的文件名就是解压缩后的实际文件名。如果拿掉了根目录,假设将备份数据在 /tmp 解开,那么解压缩的文件就会变成/tmp/etc/xxx。 但如果没有拿掉根目录,解压缩后的文件名就会是绝对路径, 亦即解压缩后的数据一定会被放置 到 /etc/xxx 去,如此一来,原本的 /etc/ 底下的数据, 就会被备份数据所覆盖。

如果确定备份根目录到tar文件中,可以使用-P参数。

xfsdump & xfsrestore(通常针对整个文件系统进行备份与还原)

xfsdump

xfsdump可以对完整的文件系统进行备份,除了进行完整备份,还可以进行累积备份。第一次备份一定是完整备份,完整备份在xfsdump中被定义为level 0,各个level记录文件放置于/var/lib/xfsdump/inventory中。

img

xfsdump的限制

  • xfsdump只能备份已挂载的xfs文件系统。
  • xfsdump必须使用root权限才能操作。
  • xfsdump备份下来的数据只能由xfsrestore解析。
  • xfsdump通过文件系统的UUID来分辨各个备份文件,因此不能备份两个具有相同UUID的文件系统。

常用参数

img

  • -L session_label,Specifies a label for the dump session. It can be any arbitrary string up to 255 characters long,记录每次备份的session标签,并可以填写针对此文件系统的简易说明。
  • -M label [ -M label ... ],Specifies a label for the first
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值