1. tar
tar [-cxtzjvfpPN] 文件与目录 ….
参数:
-c:创建一个压缩文件的参数指令(create file)
-f:指定文件名(specify filename),-f之后要立即接压缩后文件名,不要再加参数。例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成『 tar -zcvPf tfile sfile』才对
-x:解开一个压缩文件的参数指令
-t:查看 tarfile 里面的文件
-v:压缩的过程中显示文件,这个常用,但不建议用在后台执行过程
-u:只有比归档文件中的同名文件更新的时候才进行添加
-d:比较归档文件与文件系统中的内容
-A:合并多个tar文件,如将file2.tar内容合并到file1.tar中:tar -Af file1.tar file2.tar
–delete:从归档文件中删除文件
-z:指定gzip格式
-j:指定zip2格式
–lzma:指定lzma格式
–exclude FILE:在压缩的过程中,不要将 FILE 打包
-X:排除文件列表中的文件(–exclude-from)
–totals:打印总字节数
-p:使用原文件的原来属性(属性不会依据使用者而变)
-P:可以使用绝对路径来压缩
-N:比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中
2. squashfs
SquashFS是一种基于Linux内核只读型的超高压缩率文件系统,这种文件系统能够将2G~3G的数据压缩成一个700MB的文件,如Live CD
3. 加密工具与散列
crypt、gpg、Base64、md5sum、sha1sum、shadowlike
4. rsync
rsync参数
-a –archive归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD
-r –recursive 对子目录以递归模式处理
-l –links 保留软链
-p –perms 保持文件权限
-t –times 保持文件时间信息
-g –group 保持文件属组信息
-o –owner 保持文件属主信息
-D –devices 保持设备文件信息
-z –compress 对备份的文件在传输时进行压缩处理
-P –partial 保留那些因故没有完全传输的文件,以是加快随后的再次传输
-v –verbose 详细模式输出
-e –rsh=COMMAND 指定替代rsh的shell程序
-u –update 仅仅进行更新,也就是跳过所有已经存在于DST,并且文件时间晚于要备份的文件。(不覆盖更新的文件)
–progress 显示备份过程
–delete 是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致。
5. 用git备份版本控制