為何 linux 要用 tar.gz,而不用 7z 或 zip?


為何 linux 要用 tar.gz,而不用 7z 或 zip?為何 linux 要用 tar.gz,而不用 7z 或 zip?

因為 7z 和 zip 壓縮格式都不能保留 unix 風格的文件權限,比如解壓出個可執行文件要重新 chmod chown 才能恢復正常。而 tar 格式可以。而 tar 本身不提供壓縮,無非就是把包括所有文件的內容和權限拼成一個文件而己,所以用另外如 gzip 格式壓縮。為什么是 gzip,因為幾乎所有 linux 都支持而已。

為何 linux 要用 tar.gz,而不用 7z 或 zip?為何 linux 要用 tar.gz,而不用 7z 或 zip?

從壓縮算法上來說, gz 是 gzip 的縮寫,用的壓縮算法和 zip 是一路貨。

其實現在 Linux 已經轉用 tar.xz 了,比如 deb (debian/ubuntu 用的軟件包格式)好幾年前就用 tar.xz 了。xz 和 7z 也是一路貨。

如果你在意的是 tar.gz 是兩段,先 tar 再 gz,那是因為 linux 受 unix 哲學「一個工具只做好一件事」的影響。

至於為什么沒搞出 tar.zip 這樣的東西?這是因為當年 zip 的官方軟件是個共享軟件,不是自由軟件。所以 Linux 不能直接用或者移植。那既然重寫的話,就沒有必要做的和 zip 一樣,畢竟 gz 只用管壓縮,不用管打包。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM