标签:ace 不用 pen http cat 解压 directory remove anaconda
tar命令可以为linux的文件和目录创建档案。利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的。
首先要弄清两个概念:打包和压缩。打包是指将一大堆文件或目录变成一个总的文件;压缩则是将一个大的文件通过一些压缩算法变成一个小文件。
为什么要区分这两个概念呢?这源于Linux中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得先将这一大堆文件先打成一个包(tar命令),然后再用压缩程序进行压缩(gzip bzip2命令)。
linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进行压缩。
tar[必要参数][选择参数][文件]
用来压缩和解压文件。tar本身不具有压缩功能。他是调用压缩(gzip bzip2等命令)功能实现的
主要选项 -c 创建新的归档(打包)文件。 -r 把要归档(打包)的文件追加到档案文件的末尾。 -t 列出档案文件的内容,查看已经备份了哪些文件。 -u 更新文件。就是说,用新增的文件取代原备份文件,如果在备份文件中找不到要更新的文件,则把它追加到备份文件的最后。 -x 从归档的文件中提取文件 辅助选项 -b N该选项是为磁带机设定的,其后跟一数字,用来说明区块的大小,系统预设值为20(20×512 bytes) -f 指定打包压缩文件或设备,这个选项通常是必选的。 -k 保存已经存在的文件。例如把某个文件还原,在还原的过程中遇到相同的文件,不会进行覆盖。 -m 在还原文件时,把所有文件的修改时间设定为当前时间 -v 详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。 -w 每一步都要求确认。 -J代表调用“xz”程序进行文件的压缩 -A,--catenate,--concatenate 新增压缩文件到已存在的压缩 -d,--diff,--compare 比较归档(打包)与当前文件的不同之处将一归档(打包)与已有的归档(打包)合并 --delete 从归档文件中删除-C,--directory DIR 解压到指定的目录-h,--dereference 不转储动态链接,转储动态链接指向的文件。 -k,--keep-old-files 保存现有文件;从归档中展开时不进行覆盖 #-N,--after-date DATE,--newer DATE 仅存储时间较新的文件(藐视linux上tar不支持) -P,--absolute-paths 以绝对路径打包文件,不要从文件名中去除 ‘/‘ --remove-files 建立存档后删除源文件 --exclude FILE 不把指定文件包含在内 -X,--exclude-from FILE 从指定文件中读入不想包含的文件的列表 -j 代表使用‘bzip2’程序进行文件的压缩 -Z,--compress,--uncompress 用 compress 对存档压缩或解压 -z,--gzip,--ungzip 用 gzip 对存档压缩或解压
[root@localhost ~]# ll total 9468 -rw-------. 1 root root 1304 May 26 2017 anaconda-ks.cfg -rw-r--r--. 1 root root 507 May 26 12:30 group -rw-r--r--. 1 root root 11301 May 26 12:37 passwd -rw-r--r--. 1 root root 9665555 May 26 13:16 tmp.tar.bz2 -rw-r--r--. 1 root root 2301 May 26 12:49 tmp.tg -rw-r--r--. 1 root root 674 May 26 12:57 tmp.tgz [root@localhost ~]# tar cvf /tmp/root.tar ./* ./anaconda-ks.cfg ./group ./passwd ./tmp.tar.bz2 ./tmp.tg ./tmp.tgz
[root@localhost ~]# tar tvf /tmp/root.tar -rw------- root/root 1304 2017-05-26 15:47 ./anaconda-ks.cfg -rw-r--r-- root/root 507 2017-05-26 12:30 ./group -rw-r--r-- root/root 11301 2017-05-26 12:37 ./passwd -rw-r--r-- root/root 9665555 2017-05-26 13:16 ./tmp.tar.bz2 -rw-r--r-- root/root 2301 2017-05-26 12:49 ./tmp.tg -rw-r--r-- root/root 674 2017-05-26 12:57 ./tmp.tgz
[root@localhost ~]# tar tvf /tmp/root.tar -rw------- root/root 1304 2017-05-26 15:47 ./anaconda-ks.cfg -rw-r--r-- root/root 507 2017-05-26 12:30 ./group -rw-r--r-- root/root 11301 2017-05-26 12:37 ./passwd -rw-r--r-- root/root 9665555 2017-05-26 13:16 ./tmp.tar.bz2 -rw-r--r-- root/root 2301 2017-05-26 12:49 ./tmp.tg -rw-r--r-- root/root 674 2017-05-26 12:57 ./tmp.tgz [root@localhost ~]# tar -rvf /tmp/root.tar /etc/issue tar: Removing leading `/‘ from member names #若以绝对路径打包的话,tar默认会将‘/‘去除 /etc/issue [root@localhost ~]# tar tvf /tmp/root.tar -rw------- root/root 1304 2017-05-26 15:47 ./anaconda-ks.cfg -rw-r--r-- root/root 507 2017-05-26 12:30 ./group -rw-r--r-- root/root 11301 2017-05-26 12:37 ./passwd -rw-r--r-- root/root 9665555 2017-05-26 13:16 ./tmp.tar.bz2 -rw-r--r-- root/root 2301 2017-05-26 12:49 ./tmp.tg -rw-r--r-- root/root 674 2017-05-26 12:57 ./tmp.tgz -rw-r--r-- root/root 23 2016-11-29 13:12 etc/issue
[root@localhost ~]# tar tvf /tmp/root.tar -rw------- root/root 1304 2017-05-26 15:47 ./anaconda-ks.cfg -rw-r--r-- root/root 507 2017-05-26 12:30 ./group -rw-r--r-- root/root 11301 2017-05-26 12:37 ./passwd -rw-r--r-- root/root 9665555 2017-05-26 13:16 ./tmp.tar.bz2 -rw-r--r-- root/root 2301 2017-05-26 12:49 ./tmp.tg -rw-r--r-- root/root 674 2017-05-26 12:57 ./tmp.tgz -rw-r--r-- root/root 23 2016-11-29 13:12 etc/issue [root@localhost ~]# tar -uvf /tmp/root.tar /etc/sysconfig/network tar: Removing leading `/‘ from member names /etc/sysconfig/network [root@localhost ~]# tar tvf /tmp/root.tar -rw------- root/root 1304 2017-05-26 15:47 ./anaconda-ks.cfg -rw-r--r-- root/root 507 2017-05-26 12:30 ./group -rw-r--r-- root/root 11301 2017-05-26 12:37 ./passwd -rw-r--r-- root/root 9665555 2017-05-26 13:16 ./tmp.tar.bz2 -rw-r--r-- root/root 2301 2017-05-26 12:49 ./tmp.tg -rw-r--r-- root/root 674 2017-05-26 12:57 ./tmp.tgz -rw-r--r-- root/root 23 2016-11-29 13:12 etc/issue -rw-r--r-- root/root 22 2017-05-26 15:47 etc/sysconfig/network
[root@localhost root_tar]# tar xvf /tmp/root.tar ./anaconda-ks.cfg ./group ./passwd ./root_tar/ ./root_tar/anaconda-ks.cfg ./root_tar/group ./root_tar/passwd ./root_tar/tmp.tar.bz2 ./root_tar/tmp.tg ./root_tar/tmp.tgz ./tmp.tar.bz2 ./tmp.tg ./tmp.tgz
[root@localhost tmp]# tar xvf root.tar -C /root/root_tar/ ./anaconda-ks.cfg ./group ./passwd ./root_tar/ ./root_tar/anaconda-ks.cfg ./root_tar/group ./root_tar/passwd ./root_tar/tmp.tar.bz2 ./root_tar/tmp.tg ./root_tar/tmp.tgz ./tmp.tar.bz2 ./tmp.tg ./tmp.tgz [root@localhost tmp]# ls -al /root/root_tar/ total 9468 drwxr-xr-x. 3 root root 120 Sep 19 09:42 . dr-xr-x---. 3 root root 258 May 26 13:30 .. -rw-------. 1 root root 1304 May 26 15:47 anaconda-ks.cfg -rw-r--r--. 1 root root 507 May 26 12:30 group -rw-r--r--. 1 root root 11301 May 26 12:37 passwd drwxr-xr-x. 2 root root 104 May 26 13:30 root_tar -rw-r--r--. 1 root root 9665555 May 26 13:16 tmp.tar.bz2 -rw-r--r--. 1 root root 2301 May 26 12:49 tmp.tg -rw-r--r--. 1 root root 674 May 26 12:57 tmp.tgz
[root@localhost ~]# tar -tvf /tmp/root.tar -rw------- root/root 1304 2017-05-27 03:47 ./anaconda-ks.cfg -rw-r--r-- root/root 507 2017-05-27 00:30 ./group -rw-r--r-- root/root 11301 2017-05-27 00:37 ./passwd drwxr-xr-x root/root 0 2017-05-27 01:30 ./root_tar/ -rw------- root/root 1304 2017-05-27 03:47 ./root_tar/anaconda-ks.cfg -rw-r--r-- root/root 507 2017-05-27 00:30 ./root_tar/group -rw-r--r-- root/root 11301 2017-05-27 00:37 ./root_tar/passwd -rw-r--r-- root/root 9665555 2017-05-27 01:16 ./root_tar/tmp.tar.bz2 -rw-r--r-- root/root 2301 2017-05-27 00:49 ./root_tar/tmp.tg -rw-r--r-- root/root 674 2017-05-27 00:57 ./root_tar/tmp.tgz -rw-r--r-- root/root 9665555 2017-05-27 01:16 ./tmp.tar.bz2 -rw-r--r-- root/root 2301 2017-05-27 00:49 ./tmp.tg -rw-r--r-- root/root 674 2017-05-27 00:57 ./tmp.tgz [root@localhost ~]# ll /root/root_tar/ total 0 [root@localhost ~]# tar xmvf /tmp/root.tar ./root_tar/ ./root_tar/ ./root_tar/anaconda-ks.cfg ./root_tar/group ./root_tar/passwd ./root_tar/tmp.tar.bz2 ./root_tar/tmp.tg ./root_tar/tmp.tgz [root@localhost ~]# ll /root/root_tar/ total 9468 -rw-------. 1 root root 1304 Sep 19 21:55 anaconda-ks.cfg -rw-r--r--. 1 root root 507 Sep 19 21:55 group -rw-r--r--. 1 root root 11301 Sep 19 21:55 passwd -rw-r--r--. 1 root root 9665555 Sep 19 21:55 tmp.tar.bz2 -rw-r--r--. 1 root root 2301 Sep 19 21:55 tmp.tg -rw-r--r--. 1 root root 674 Sep 19 21:55 tmp.tgz [root@localhost ~]# date Tue Sep 19 21:55:57 CST 2017
tar Avf 追加的归档文件 新增归档文件
[root@localhost tmp]# tar tvf tmp.tar -rw-r--r-- root/root 27627520 2017-09-19 21:59 ./etc.tar lrwxrwxrwx root/root 0 2017-05-27 00:30 ./group -> /root/group -rwx------ root/root 836 2017-05-27 03:47 ./ks-script-hjy08p -rw-r--r-- root/root 11301 2017-05-27 00:39 ./pass lrwxrwxrwx root/root 0 2017-05-27 00:30 ./passwd -> /root/passwd drwx------ root/root 0 2017-05-26 21:15 ./systemd-private-85aa472335ef4117a4ffab639e34b392-httpd.service-WejRSA/ drwxrwxrwt root/root 0 2017-05-26 21:15 ./systemd-private-85aa472335ef4117a4ffab639e34b392-httpd.service-WejRSA/tmp/ -rw-r--r-- root/root 0 2017-05-27 00:53 ./tar.txt drwxr-xr-x root/root 0 2017-05-27 00:46 ./test/ -rw------- root/root 0 2017-05-27 03:43 ./yum.log [root@localhost tmp]# tar Avf tmp.tar root.tar [root@localhost tmp]# tar tvf tmp.tar -rw-r--r-- root/root 27627520 2017-09-19 21:59 ./etc.tar lrwxrwxrwx root/root 0 2017-05-27 00:30 ./group -> /root/group -rwx------ root/root 836 2017-05-27 03:47 ./ks-script-hjy08p -rw-r--r-- root/root 11301 2017-05-27 00:39 ./pass lrwxrwxrwx root/root 0 2017-05-27 00:30 ./passwd -> /root/passwd drwx------ root/root 0 2017-05-26 21:15 ./systemd-private-85aa472335ef4117a4ffab639e34b392-httpd.service-WejRSA/ drwxrwxrwt root/root 0 2017-05-26 21:15 ./systemd-private-85aa472335ef4117a4ffab639e34b392-httpd.service-WejRSA/tmp/ -rw-r--r-- root/root 0 2017-05-27 00:53 ./tar.txt drwxr-xr-x root/root 0 2017-05-27 00:46 ./test/ -rw------- root/root 0 2017-05-27 03:43 ./yum.log dr-xr-x--- root/root 0 2017-09-19 21:50 root/ -rw-r--r-- root/root 18 2013-12-29 10:26 root/.bash_logout -rw-r--r-- root/root 176 2013-12-29 10:26 root/.bash_profile -rw-r--r-- root/root 176 2013-12-29 10:26 root/.bashrc -rw-r--r-- root/root 100 2013-12-29 10:26 root/.cshrc -rw-r--r-- root/root 129 2013-12-29 10:26 root/.tcshrc -rw------- root/root 1304 2017-05-27 03:47 root/anaconda-ks.cfg -rw------- root/root 5021 2017-05-27 00:16 root/.bash_history -rw------- root/root 73 2017-05-27 00:51 root/.lesshst -rw-r--r-- root/root 11301 2017-05-27 00:37 root/passwd -rw-r--r-- root/root 507 2017-05-27 00:30 root/group -rw-r--r-- root/root 2301 2017-05-27 00:49 root/tmp.tg -rw-r--r-- root/root 9665555 2017-05-27 01:16 root/tmp.tar.bz2 drwxr-xr-x root/root 0 2017-09-19 21:55 root/root_tar/ -rw------- root/root 1304 2017-09-19 21:55 root/root_tar/anaconda-ks.cfg -rw-r--r-- root/root 507 2017-09-19 21:55 root/root_tar/group -rw-r--r-- root/root 11301 2017-09-19 21:55 root/root_tar/passwd -rw-r--r-- root/root 9665555 2017-09-19 21:55 root/root_tar/tmp.tar.bz2 -rw-r--r-- root/root 2301 2017-09-19 21:55 root/root_tar/tmp.tg -rw-r--r-- root/root 674 2017-09-19 21:55 root/root_tar/tmp.tgz -rw-r--r-- root/root 674 2017-05-27 00:57 root/tmp.tgz -rw------- root/root 5189 2017-09-19 21:50 root/.viminfo
[root@localhost ~]# tar tvf rootbak.tar -rw------- root/root 1304 2017-05-27 03:47 ./anaconda-ks.cfg -rw-r--r-- root/root 507 2017-05-27 00:30 ./group -rw-r--r-- root/root 11301 2017-05-27 00:37 ./passwd drwxr-xr-x root/root 0 2017-09-19 21:55 ./root_tar/ -rw------- root/root 1304 2017-09-19 21:55 ./root_tar/anaconda-ks.cfg -rw-r--r-- root/root 507 2017-09-19 21:55 ./root_tar/group -rw-r--r-- root/root 11301 2017-09-19 21:55 ./root_tar/passwd -rw-r--r-- root/root 9665555 2017-09-19 21:55 ./root_tar/tmp.tar.bz2 -rw-r--r-- root/root 2301 2017-09-19 21:55 ./root_tar/tmp.tg -rw-r--r-- root/root 674 2017-09-19 21:55 ./root_tar/tmp.tgz -rw-r--r-- root/root 9665555 2017-05-27 01:16 ./tmp.tar.bz2 -rw-r--r-- root/root 2301 2017-05-27 00:49 ./tmp.tg -rw-r--r-- root/root 674 2017-05-27 00:57 ./tmp.tgz [root@localhost ~]# tar --delete -vf rootbak.tar ./tmp.tg [root@localhost ~]# tar tvf rootbak.tar -rw------- root/root 1304 2017-05-27 03:47 ./anaconda-ks.cfg -rw-r--r-- root/root 507 2017-05-27 00:30 ./group -rw-r--r-- root/root 11301 2017-05-27 00:37 ./passwd drwxr-xr-x root/root 0 2017-09-19 21:55 ./root_tar/ -rw------- root/root 1304 2017-09-19 21:55 ./root_tar/anaconda-ks.cfg -rw-r--r-- root/root 507 2017-09-19 21:55 ./root_tar/group -rw-r--r-- root/root 11301 2017-09-19 21:55 ./root_tar/passwd -rw-r--r-- root/root 9665555 2017-09-19 21:55 ./root_tar/tmp.tar.bz2 -rw-r--r-- root/root 2301 2017-09-19 21:55 ./root_tar/tmp.tg -rw-r--r-- root/root 674 2017-09-19 21:55 ./root_tar/tmp.tgz -rw-r--r-- root/root 9665555 2017-05-27 01:16 ./tmp.tar.bz2 -rw-r--r-- root/root 674 2017-05-27 00:57 ./tmp.tgz
[root@localhost root_tar]# ll total 9456 -rw-------. 1 root root 1304 Sep 19 21:55 anaconda-ks.cfg -rw-r--r--. 1 apache apache 11301 Sep 19 21:55 passwd -rw-r--r--. 1 root root 9665555 Sep 19 21:55 tmp.tar.bz2 [root@localhost root_tar]# tar cvf test.tar ./* --exclude tmp.tar.bz2 ./anaconda-ks.cfg ./passwd [root@localhost root_tar]# tar tvf test.tar -rw------- root/root 1304 2017-09-19 21:55 ./anaconda-ks.cfg -rw-r--r-- apache/apache 11301 2017-09-19 21:55 ./passwd
假设我们需要打包 /etc文件夹,并用 gzip 工具将其压缩。可以在 tar 命令中使用 -z 选项来实现。这种 tar 文件的扩展名可以是 .tar.gz 或者 .tgz。
[root@localhost ~]# tar -zcpvf myarchive.tar.gz /etc 或 [root@localhost ~]# tar -zcpvf myarchive.tgz /etc
假设我们需要打包 /etc文件夹,并使用 bzip2 压缩。可以在 tar 命令中使用 -j 选项来实现。这种 tar 文件的扩展名可以是 .tar.bz2 或者 .tbz。
[root@linuxtechi ~]# tar -jcpvf myarchive.tar.bz2 /etc 或 [root@linuxtechi ~]# tar -jcpvf myarchive.tbz2 /etc
[root@localhost root_tar]# tar t[z|j]vf myarchive.tar.gz | less drwxr-xr-x root/root 0 2017-05-27 01:31 etc/ -rw-r--r-- root/root 465 2017-05-27 03:43 etc/fstab -rw------- root/root 0 2017-05-27 03:43 etc/crypttab lrwxrwxrwx root/root 0 2017-05-27 03:43 etc/mtab -> /proc/self/mounts -rw-r--r-- root/root 101 2017-05-26 19:57 etc/resolv.conf drwxr-xr-x root/root 0 2017-05-27 03:44 etc/pki/ drwxr-xr-x root/root 0 2017-05-27 03:43 etc/pki/rpm-gpg/ -rw-r--r-- root/root 1690 2016-11-30 02:12 etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 -rw-r--r-- root/root 1004 2016-11-30 02:12 etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-Debug-7 -rw-r--r-- root/root 1690 2016-11-30 02:12 etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-Testing-7 drwxr-xr-x root/root 0 2017-05-27 03:43 etc/pki/ca-trust/ -rw-r--r-- root/root 166 2016-11-05 00:34 etc/pki/ca-trust/README -rw-r--r-- root/root 980 2016-11-05 00:34 etc/pki/ca-trust/ca-legacy.conf drwxr-xr-x root/root 0 2017-05-27 03:43 etc/pki/ca-trust/extracted/ -rw-r--r-- root/root 560 2016-11-05 00:34 etc/pki/ca-trust/extracted/README drwxr-xr-x root/root 0 2017-05-27 03:43 etc/pki/ca-trust/extracted/java/ -rw-r--r-- root/root 726 2016-11-05 00:34 etc/pki/ca-trust/extracted/java/README -r--r--r-- root/root 194984 2017-05-27 03:43 etc/pki/ca-trust/extracted/java/cacerts drwxr-xr-x root/root 0 2017-05-27 03:43 etc/pki/ca-trust/extracted/openssl/ -rw-r--r-- root/root 787 2016-11-05 00:34 etc/pki/ca-trust/extracted/openssl/README -r--r--r-- root/root 346654 2017-05-27 03:43 etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt drwxr-xr-x root/root 0 2017-05-27 03:43 etc/pki/ca-trust/extracted/pem/ -rw-r--r-- root/root 898 2016-11-05 00:34 etc/pki/ca-trust/extracted/pem/README -r--r--r-- root/root 262042 2017-05-27 03:43 etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem -r--r--r-- root/root 208874 2017-05-27 03:43 etc/pki/ca-trust/extracted/pem/email-ca-bundle.pem -r--r--r-- root/root 208976 2017-05-27 03:43 etc/pki/ca-trust/extracted/pem/objsign-ca-bundle.pem drwxr-xr-x root/root 0 2017-05-27 03:43 etc/pki/ca-trust/source/ -rw-r--r-- root/root 932 2016-11-05 00:34 etc/pki/ca-trust/source/README drwxr-xr-x root/root 0 2016-11-06 01:45 etc/pki/ca-trust/source/anchors/ drwxr-xr-x root/root 0 2016-11-06 01:45 etc/pki/ca-trust/source/blacklist/ ...
使用 -x 和 -z 选项来解压 .tar.gz 或 .tgz 文件。如下:
[root@localhost ~]# tar -zxpvf myarchive.tgz -C /tmp/ 以上命令将 tar 文件解压到 /tmp 目录。 注:现今的 tar 命令会在执行解压动作前自动检查文件的压缩类型,这意味着我们在使用 tar 命令是可以不用指定文件的压缩类型。如下: [root@localhost ~]# tar -xpvf myarchive.tgz -C /tmp/
使用 -j 和 -x 选项来解压 .tar.bz2 或 .tbz2 文件。如下:
[root@localhost ~]# tar -jxpvf myarchive.tbz2 -C /tmp/ 或 [root@localhost ~]# tar xpvf myarchive.tbz2 -C /tmp/
想像这样一个场景:把想要归档和压缩的文件及目录记录到到一个文件,然后把这个文件当做 tar 命令的传入参数来完成归档任务;而有时候则是需要排除上面提到的这个文件里面记录的特定路径后进行归档和压缩。
在 tar 命令中使用 -T 选项来指定该输入文件,使用 -X 选项来指定包含要排除的文件列表。
假设要归档 /root 目录,并排除 /root/rootbak.tar和 /root/tmp.tar.bz2文件,可以创建 /root/tar-include 和 /root/tar-exclude 然后分别输入以下内容
[root@localhost ~]# cat tar-include /root [root@localhost ~]# cat tar-exclude /root/rootbak.tar /root/tmp.tar.bz2 运行以下命令来创建一个压缩归档文件。 [root@localhost ~]# tar zcpvf mybackup-$(date +%Y-%m-%d).tgz -T /root/tar-include -X /root/tar-exclude
使用如下命令来查看 (压缩) tar 文件的体积。
[root@localhost tmp]# tar czf - root.tar | wc -c 48227906 [root@localhost tmp]# tar czf - tmp.tar | wc -c 29090060
类 Unix 系统中使用 split 命令来将大体积文件分割成小体积文件。大体积的 tar 当然也可以使用这个命令来进行分割。
假设需要将 “mybackup-2017-09-19.tgz” 分割成每份 6 MB 的小文件。
Syntax : split -b <Size-in-MB> .<extension> “prefix-name”
[root@localhost tmp]# split -b 6M mybackup-2017-09-19.tgz mybackup-parts
以上命令会在当前目录分割 mybackup-2017-09-19.tgz文件成为多个 6 MB 的小文件,文件名为 mybackup-partsaa ~ mybackup-partsag。如果在要在分割文件后以数字而非字母来区分,可以在以上的 split 命令使用-d 选项。
[root@localhost tmp]# split -b 6M mybackup-2017-09-19.tgz mybackup-parts [root@localhost tmp]# ll total 157888 -rw-r--r--. 1 root root 27627520 Sep 19 21:59 etc.tar -rwx------. 1 root root 836 May 27 03:47 ks-script-hjy08p -rw-r--r--. 1 root root 19223011 Sep 19 22:40 mybackup-2017-09-19.tgz -rw-r--r--. 1 root root 6291456 Sep 19 22:46 mybackup-partsaa -rw-r--r--. 1 root root 6291456 Sep 19 22:46 mybackup-partsab -rw-r--r--. 1 root root 6291456 Sep 19 22:46 mybackup-partsac -rw-r--r--. 1 root root 348643 Sep 19 22:46 mybackup-partsad -rw-r--r--. 1 root root 11301 May 27 00:39 pass -rw-r--r--. 1 root root 48537600 Sep 19 22:42 root.tar drwx------. 3 root root 17 May 26 21:15 systemd-private-85aa472335ef4117a4ffab639e34b392-httpd.service-WejRSA -rw-r--r--. 1 root root 0 May 27 00:53 tar.txt drwxr-xr-x. 2 root root 6 May 27 00:46 test -rw-r--r--. 1 root root 47042560 Sep 19 22:01 tmp.tar -rw-------. 1 root root 0 May 27 03:43 yum.log
然后通过网络将这些分割文件转移到其他服务器,就可以合并成为一个单独的 tar 文件了,如下:
[root@localhost mnt]# ll total 18776 -rw-r--r--. 1 root root 6291456 Sep 19 22:48 mybackup-partsaa -rw-r--r--. 1 root root 6291456 Sep 19 22:48 mybackup-partsab -rw-r--r--. 1 root root 6291456 Sep 19 22:48 mybackup-partsac -rw-r--r--. 1 root root 348643 Sep 19 22:48 mybackup-partsad [root@localhost mnt]# cat mybackup-partsa* > mybackup-2017-09-19.tgz [root@localhost mnt]# ll total 37552 -rw-r--r--. 1 root root 19223011 Sep 19 22:48 mybackup-2017-09-19.tgz -rw-r--r--. 1 root root 6291456 Sep 19 22:48 mybackup-partsaa -rw-r--r--. 1 root root 6291456 Sep 19 22:48 mybackup-partsab -rw-r--r--. 1 root root 6291456 Sep 19 22:48 mybackup-partsac -rw-r--r--. 1 root root 348643 Sep 19 22:48 mybackup-partsad [root@localhost mnt]# du -sh ./* 19M ./mybackup-2017-09-19.tgz 6.0M ./mybackup-partsaa 6.0M ./mybackup-partsab 6.0M ./mybackup-partsac 344K ./mybackup-partsad [root@localhost mnt]# du -sh /tmp/mybackup-2017-09-19.tgz 19M /tmp/mybackup-2017-09-19.tgz
***********************************************************
学习永远不晚。——高尔基
***********************************************************
标签:ace 不用 pen http cat 解压 directory remove anaconda
原文地址:http://www.cnblogs.com/chengd/p/7541495.html