打包压缩 解压 -c

tar -czf etc-gzip.tar.gz /etc/ //z是gzip 压缩成gz 压缩内容比较大 压缩速度和压缩体积成反比

tar -cjf etc-bzip.tar.bz /etc/ //j是bzip 压缩成bz 压缩中等

tar -cJf etc-xzip.tar.xz /etc/ //J是xzip 压缩成xz 压缩成最小

ll -h etc* 观察3个包的体积

解压tar -x

tar -tf sys.tar.xz //t查看f文件名

tar -xzvf etc1.tar.gz //x解压z调为gzip,还可以自动判断

tar -xvf etc1.tar.gz //无需指定解压工具,tar会自动判断

tar -xvf etc2.tar.bz2 -C /tmp //-C解压到//tmp目录

终极大法:

tar xf etc3.tar.xz //简单粗暴

==解压zip

unzip xxx.zip

mysql物理备份及恢复

cd /var/lib/mysql
tar -cJf /backup/mysql.tar.xz * 压缩
tar -xf /backup/mysql.tar.xz -C /var/lib/mysql 解压
进入工作目录,备份就不会包含绝对路径

host A /etc (海量小文件) --------> host A /tmp 将海量小文件从etc下弄到tmp下

tar -czf - /etc |tar -xzf - -C /tmp

czf 后的“-”代表先保存到内存中。
xzf后的"-"指的是前面的内存数据

host A /etc (海量小文件) --------> host B /tmp 将海量小文件从A电脑传送到B电脑中这样可以瞬间转移过去

常规方法: scp -r /etc 172.16.20.21:/tmp 这种方法速度极慢

扩展方法nc方法 B 监听端口(192.168.100.20)

B接口

systemctl stop firewalld.service 双方都要关掉防火墙

nc -l 8888 |tar -xzf - -C /tmp //启动监听程序8888 相当于设个暗号 等待传输

A接口
关掉防火墙后

tar -czf - /etc | nc 192.168.100.20 8888 进行传输

你可能感兴趣的:(打包压缩 解压 -c)