linux的压缩一般是针对单个文件的,而打包是把几个文件打包成一个文件(打包本身并没有减小文件的大小)
常见的压缩文件扩展名
*.gz gzip程序压缩的文件
*.bz2 bzip2程序压缩的文件
*.tar tar程序打包的数据,并没有压缩过
*.tar.gz tar程序打包的文件,其中经过gzip的压缩
*.tar.bz2 tar程序打包的文件,其中经过bzip2的压缩
zcat 文件名.gz
bzcat文件名.bz2
gzip
用法:gzip [-cdtv#] 文件名
说明:生成.gz为后缀的压缩文件
zcat 文件名.gz
参数说明:
-c 将压缩后的数据输出到屏幕上,可通过数据流重定向来处理
-d 解压缩
-t 检查文件是否有错误
-v 显示原文件与压缩后的文件的压缩比例
-# 压缩等级,-1最快,但是压缩比最差,-9最慢
bzip2
用法:bzip2 [-cdkzv-#] 文件
-c 将压缩数据输出到屏幕上
-d 解压缩
-k 保留原来的文件
-z 压缩的参数
-v 显示压缩比
tar
用法:tar -[z|j][cxvf] 文件名/目录名
参数说明:-z 使用gzip先压缩文件
-j 使用bzip2先压缩文件
-t 显示tar文件中的文件列表
-c 建立新的打包文件(打包用)
-x 解压tar压缩包 只要是tar压缩包,我们直接使用tar –xf进行解压
-v 显示归档或解档的进度
-f 当与-c选项一起使用时,创建的tar文件使用该选项的指定的文件名;当与-x选项一起使用时,则解包该选项指定的归档。该参数一定放在所有参数的最后面。
-C 解压到新的目录,该命令是大写。
先查看该压缩包的目录结构,使用如下命令:
tar -tvf hyd.tar.gz
查看备份包中的内容,若为已经压缩的文件,需加上-z或者-j参数
tar -ztvf /tmp/etc.tar.gz
默认情况下,tar打包时都是使用相对路径的,所以,释放时,需要先进入目录目录,然后再解压
同样的,根据使用的压缩方式,应加上-z或者-j参数
cd /tmp && tar -zxvf /tmp/etc.tar.gz
这是另一种写法,结果和上面的相同,其会先进入/tmp目录,然后再释放包的
tar -zxvf /tmp/etc.tar.gz -C /tmp
释放单个etc/passwd文件,正如前面提到的,tar包中的是相对路径,所以不能使用“/etc/passwd”
而且,这里不能使用-C参数,释放文件是当前路径的相对路径,并带目录释放
tar -zxvf /tmp/etc.tar.gz etc/passwd
比2005年6月1日新的文件才会备份
tar -N '2005/06/01' -zcvf home.tar.gz /home
除/home/dmtsai目录外,/home和/etc目录的所有东西都打包
tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc
删除etc.tar文件中的etc/pbm2ppa.conf文件
tar --delete etc/pbm2ppa.conf -vf etc.tar
把tmp.tar文件附加到etc.tar后面
tar -A tmp.tar -vf etc.tar
把/etc/ 内的所有文件备份下来,并且保存其权限!
tar -zxvpf /tmp/etc.tar.gz /etc
NFS
NFS 使用的则是一个称为远程过程调用( Remote Procedure Call, RPC )的协议来协助 NFS 本身的运作。NFS Server 可以让你的 PC 来将网络远程的 NFS 主机分享的目录,挂载到本地端的机器当中
NFS 的 Server 需要激活 RPC 的服务,连带的,要挂载 NFS partition 的 Client 机器,也需要同步激活 RPC 才行!这样 Server 端与 Client 端才能藉由 RPC 的协议来进行 program port 的对应喔!NFS 主要在管理分享出来的目录,而至于资料的传递,就直接 将他丢给 RPC 的协议来运作就是了!
NFS需要两个套件:
nfs-utils
portmap : Client 端尝试来使 用 RPC server 所提供的服务时,由于 Client 需要取得一个可以连接的 port 才能够使用 RPC server 所提供的服务。
启动服务portmap,nfs
#/etc/rc.d/init.d/portmap start (or:#service portmap start)
#/etc/rc.d/init.d/nfs start (or:#service nfs start)
可以到/var/log/messages里面查看是否正确激活
如果我们修改了/etc/exports后,并不需要重启nfs服务,只要用exportfs重新扫描一次/etc/exports,并且重新加载即可
语法: exportfs [-aruv]
-a: 全部挂载(或卸载) /etc/exports档案内的设定
-r: 重新挂载/etc/exports里面的设定,也同步的更新/etc/exports和/var/lib/nfs/xtab里面的内容
-u:卸载某一目录
-v:在export的时候,将分享的目录显示到荧屏上.