Linux使用tar命令生成压缩包报异常tar: Exiting with failure status due to previous errors
在使用命令 tar -zcvf xxx.tar.gz xx/ 打包时,报错tar: Exiting with failure status due to previous errors
原因是打包的文件夹中有超出权限的文件或文件夹,比如你用普通用户登录,但是存在root权限的文件夹。
1.可以使用root权限来打包
2.找到超出权限的文件或文件夹,更改文件或文件夹权限或者删除该文件或文件夹
*如何找到超出权限的文件夹
通过刚刚的打包命令再加上 >/dev/nulk
tar -zcvf tomcat.tar.gz tomcat/ > /dev/null
从图上可以看到:tomcat76/work/Catalina/localhsot/manager/org Permission denied(权限被拒绝)
就可以到该文件夹下修改权限或者删除文件夹
*如何修改文件或文件夹权限
sudo chown -R user:user org
修改后再次使用打包命令就可正常打包成功。
拓展( > /dev/null ):
/dev/null 是一个特殊的文件,写入到它的内容都会被丢弃(不显示、不打印、不记录);如果尝试从该文件读取内容,那么什么也读不到。但是 /dev/null 文件非常有用,将命令的输出重定向到它,会起到"禁止输出"的效果。