日常運維中,在安裝某些軟件包時需要先進行解壓,但是解壓時出現了報錯,錯誤內容如下:
[root@localhost ~]# tar -zxvf php-5.6.38.tar.gz
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
出現上面所示報錯時,我們先不要急,此報錯,有兩種可能:
第一:軟件包由於傳出過程中受損,導致解壓失敗而報錯
第二:tar使用了不受軟件包支持的參數
首先,我們檢查軟件包是否有受損。與官方的包進行比較,看大小或者MD5校驗,如果有受損,重新下載,再進行解壓可解決。
其次,上一步如果正常,那就是參數使用的問題,我們看,這裏我們使用了 tar -zxvf,參數解釋
-z,是否同時具有 gzip 的屬性
-x,解壓一個壓縮文件
-v,顯示詳細信息
-f,使用文檔名,在其後緊跟一個文檔名
到這裏,我們可以嘗試一下去掉 -z 參數,用 tar -xvf
經過嘗試,發現可正常解壓,由此可以判斷,其源文件再壓縮過程中,並未使用 -z 參數。我們解壓時使用了,所以纔會報錯。