Linux tar指令執行時出現錯誤訊息「tar: Exiting with failure status due to previous errors」

當在Linux上使用tar指令來打包壓縮文件,在執行時出現錯誤訊息「tar: Exiting with failure status due to previous errors 由於前一個錯誤導致於失敗狀態中退出」,到底是哪裹出現問題導致出現這個錯誤呢?這次教大家如何解決這個問題。

如果在執行tar指令時,遇到如下錯誤,最有可能是因為你想打包壓縮的文件夾中,存在用戶不夠的讀取權限。

tar: Exiting with failure status due to previous errors

當遇到這個錯誤訊息時,我們要怎樣確定哪個文件提起這個錯誤呢?其實很簡單,一般我們在使用tar指令時,都會加入 v 參數來打印出打包壓縮時的所有訊息,在詳細模式(verbose mode)下我們都很容易忽略這些錯誤訊息,要明確找出錯誤訊息的原因,只要把tar的標準輸出(stdout)訊息過濾,便可以只輸出標準錯誤(stderr)訊息;又或者不使用 v 參數。

$ tar zcvf example.tar.gz example/ > /dev/null

在執行指令時,會發現只輸出錯誤訊息。很多時引起的錯誤原因都是權限問題,只要針對權限有問題的文件,修改權限或移除文件,重新再嘗試執行指令。

tar: example/file: Cannot open: Permission denied
tar: Exiting with failure status due to previous errors

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

*

驗證碼 * Time limit is exhausted. Please reload CAPTCHA.

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料