欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

/bin/tar: 从成员名中删除开头的“/”

今天在使用tar进行打包时,发现报了‘从成员名中删除开头的“/”’的错误。我使用的打包语句如下:

[root@bj~]# tar czvf test.tar.gz /root/tomcat/
tar: 从成员名中删除开头的“/”
/root/tomcat/
/root/tomcat/tomcat_spider
/root/tomcat/tomcat_generator
/root/tomcat/tomcat_cms
/root/tomcat/tomcat_biz
/root/tomcat/tomcat_mgrab
/root/tomcat/tomcat_register
/root/tomcat/tomcat_expert
/root/tomcat/tomcat_monitor
/root/tomcat/tomcat_generator.bak
/root/tomcat/tomcat_sgapp
/root/tomcat/tomcat_enterprise
/root/tomcat/tomcat_jjhadmin
/root/tomcat/tomcat_passport
/root/tomcat/tomcat_usercenter
/root/tomcat/tomcat_mws
/root/tomcat/tomcat_crawl
/root/tomcat/tomcat_bbs
/root/tomcat/tomcat_feedback
/root/tomcat/tomcat_search
/root/tomcat/tomcat_comment
/root/tomcat/tomcat_register32


于是赶快的看tar的help手册和man手册。发现使用-P(大写)参数后可以解决这个问题:使用后,果然没再报错:

[root@bj ~]# tar czPvf test.tar.gz /root/tomcat/
/root/tomcat/
/root/tomcat/tomcat_spider
/root/tomcat/tomcat_generator
/root/tomcat/tomcat_cms
/root/tomcat/tomcat_biz
/root/tomcat/tomcat_mgrab
/root/tomcat/tomcat_register
/root/tomcat/tomcat_expert
/root/tomcat/tomcat_monitor
/root/tomcat/tomcat_generator.bak
/root/tomcat/tomcat_sgapp
/root/tomcat/tomcat_enterprise
/root/tomcat/tomcat_jjhadmin
/root/tomcat/tomcat_passport
/root/tomcat/tomcat_usercenter
/root/tomcat/tomcat_mws
/root/tomcat/tomcat_crawl
/root/tomcat/tomcat_bbs
/root/tomcat/tomcat_feedback
/root/tomcat/tomcat_search
/root/tomcat/tomcat_comment
/root/tomcat/tomcat_register32

造成该问题的原因是因为使用相对路径和绝对路径引起的。另外还有一种解决方法是,使用相对路径:

cd /root
tar czvf tomcat.tar.gz tomcat/


 注:相对和绝对路径报错是对于后面的备份目录来说的,而前面的包名称不受此影响。我们可以使用tar czvf /opt/tomcat.tar.gz tomat/同样是不会报错的。

来自 http://www.361way.com/tar-error/1550.html

普通分类: