一、事件描述
某次,因某业务系统迁移,一线人员对业务目录误操作,执行打包命令过程中导致Tomcat下的web应用程序无法使用,检查后发现项目下所有文件名都加了gz格式;询问一线,发现是对项目目录执行了:gzip -r ./tomcat
导致程序文件找不到;报错如下:
二、事件处理
1、查看相关文件,所有文件都追加了*.gz的格式,导致了服务文件和依赖调用过程中无法找到,故服务不可用;
2、查看相关文件,这些文件依然是可通过vim和cat、less等查看命令正常读取的;即验证了本次问题只是因为对项目所有文件进行了压缩操作,文件名全部变成了压缩文件;
3、通过gzip命令, 只会压缩,不能打包目标文件,且因为只能压缩单个文件,以".gz"为扩展名且压缩后的文件可以自动解压缩(即可正常查看读写),但不能处理目录。故对项目内目录并无影响,但注意的是,gzip压缩完目标文件,默认不加参数会删除原文件来生成gz后缀的新文件,如需保留源文件需加-c参数;使用-k参数会对源文件压缩,还会生成对应gz后缀的压缩文件;现场人员使用了-r参数,即它会递归地压缩目标目录下的所有文件,并在每个文件的原始文件名后面添加".gz"扩展名。解压缩使用如下命令:
#解压:或使用:gunzip -r 目录
gzip -dv filename.gz //将解压缩名为filename.gz的压缩文件,生成一个名为filename的解压缩文件,并显示解压过程,之后压缩包会被自动删除
#验证,显示压缩文件信息
gzip -l filename.gz //gzip -c -d filename.gz > filename //将解压缩名为filename.gz的压缩文件,并生成一个名为filename的解压缩文件,但保留原始压缩文件。
#查看压缩文件#使用指定的压缩级别进行压缩