Calvin's Tech Space

成于坚忍,毁于浮躁

   :: 首页 :: 联系 :: 聚合  :: 管理
默认情况下,tar命令可以用来将文件打包为.tar包或者用来解开.tar包。tar命令也可以调用其它压缩算法从而支持gzip,bzip2等等。
tar命令有几种主要模式:
* 打包:
tar cf allfile.tar *.jpg

* 解包到指定的目录:
tar xf allfile.tar -C ~/Pictures

* 列出tar包中的所有文件:
tar tf allfile.tar

* 往已有的tar包中增加新文件:
tar rf allfile.tar *.png

使用tar命令处理其它压缩算法
* gzip(.tar.gz或者.tgz)
tar zcf allfile.tar.gz *.jpg
tar zxf allfile.tar.gz -C ~/Pictures

* bzip2(.tar.bz2或者.bz2)
tar jcf allfile.tar.bz2 *.jpg
tar jxf allfile.tar.bz2 -C ~/Pictures

归档里面的所有文件均是相对引用,归档解压缩(释放)在了当前目录。归档文件总是释放到当前目录,为的是防止破坏文件系统中重名的文件。
如果想覆盖的话,在归档和解压时请使用-P参数:
tar zcvf mysql.tar.gz -P /var/lib/mysql
tar -Pzxvf mysql.tar.gz(这会覆盖本地的/var/lib/mysql目录)

Tar炸弹

攻击者利用绝对路径,或者“tar -cf bomb.tar *”的方式创建的tar文件,然后诱骗受害者在根目录下解压,或者使用绝对路径解压。可能使受害系统上已有的文件被覆盖掉,或者导致当前工作目录凌乱不 堪,这就是所谓的“tar炸弹”。因此,要养成良好的解压习惯:

  • 解压前用“t”查看tar的文件内容。
  • 拒绝使用绝对路径。
  • 新建一个临时子目录,然后在这个子目录里解压。

posted on 2011-05-14 14:03 calvin 阅读(2298) 评论(0)  编辑  收藏 所属分类: Linux

只有注册用户登录后才能发表评论。


网站导航: