如此這般,好嗎?

導讀 讓咱們回顧一下 Linux 社區最新的願景——推進去中心化的應用來解決發行版的碎片化。繼上週的文章:「Snap、Flatpak 這種通吃全部發行版的打包方式真的有用嗎?」 以後,一系列新觀點浮出水面,其中可能包含關於這樣應用是否有用的重要信息。

缺點html

就這個話題在這裏的評論,一個叫 Till 的 Gentoo 使用者,對於上一次咱們未能徹底解釋的問題給出了一些新的觀點。對於上一次咱們選擇僅僅稱之爲膨脹的的東西,Till 從另外一方面作了剖析膨脹未來的發展,這能夠幫助咱們更好的理解它的組成和其影響。linux

這些被稱之爲「捆綁應用」的應用程序可以工做在全部發行版上的機制是——將它依賴的庫都包含在它們的應用軟件之中,Till 說:安全

「捆綁應用裝載了大量的並不被應用開發者所維護的軟件。若是其中的某個函數庫被發現了一個安全問題而須要更新的話,你得爲每個獨立的應用程序安裝更新來確保你的系統安全。」函數

如此這般,好嗎?如此這般,好嗎?

本質上,Till 提出了一個重要的安全問題。可是它並不只僅與安全有關係,它還關係到許多方面,好比說系統維護、原子更新等等。此外,若是咱們進一步假設:依賴的開發者們也許會合做,將他們的軟件與使用它的應用程序一塊兒發佈(一種理想情況),但這將致使整個平臺的開發總體放緩。測試

另外一個將會致使的問題是透明的依賴關係變得模糊,就是說,若是你想知道一個應用程序捆綁了哪些依賴關係,你必須依靠開發者發佈這些數據。或者就像 Till 說的:「好比說像某某包是否已經包含了更新的某函數庫這樣的問題將會是你天天須要面對的。」優化

與之相反,對於 Linux 現行的標準的包管理方法(包括二進制包和源碼包),你可以很容易的注意到哪些函數庫已經在系統中更新了。而且,你也能夠很輕鬆的知道其它哪些應用使用了這個函數庫,這就將你從繁瑣的單獨檢查每個應用程序的工做中解救了出來。htm

其餘可能由膨脹致使的缺點包括:更大的包體積(每個應用程序捆綁了依賴),更高的內存佔用(沒有共享函數庫),而且,少了一個包過濾機制來防止惡意軟件:發行版的包維護者也充當了一個在開發者和用戶之間的過濾者,他保障了用戶得到高質量的軟件。而在捆綁應用中就再也不是這種狀況了。內存

最後一點,Till 聲稱,儘管在某些狀況下頗有用,可是在大多數狀況下,捆綁應用程序將弱化自由軟件在發行版中的地位(專有軟件供應商將被可以發佈他們的軟件而不用把它放到公共軟件倉庫中)。開發

除此以外,它引出了許多其餘問題。不少問題均可以簡單歸結到開發人員身上。get

優勢

相比之下,另外一個名叫 Sven 的人的評論試圖反駁目前廣泛反對使用捆綁應用程序的觀點,從而證實和支持使用它。

「浪費空間?」——Sven 聲稱在當今世界咱們有不少其餘事情在浪費磁盤空間,好比電影存儲在硬盤上、本地安裝等等……

最終,這些事情浪費的空間要遠遠多於僅僅「 100 MB 而你天天都要使用的程序。所以浪費空間的說法實在很荒謬。」

如此這般,好嗎?如此這般,好嗎?

「浪費運行內存?」

主要的觀點有:

  • • 共享庫浪費的內存要遠遠少於程序的運行時數據所佔用的。
  • • 而今運行內存已經很便宜了。

「安全夢魘」

不是每一個應用程序的運行真正的要注重安全。並且,許多應用程序甚至歷來沒有過任何安全更新,除非在「滾動更新的發行版」。

除了 Sven 這種從實用出發的觀點之外,Till 其實也指出了捆綁應用在一些狀況下也有着其優勢:

  • • 專有軟件的供應商想要保持他們的代碼遊離於公共倉庫以外將更加容易。
  • • 沒有被你的發行版打包進去的小衆應用程序將變得更加可行。
  • • 在沒有 Beta 包的二進制發行版中測試應用將變得簡單。
  • • 將用戶從複雜的依賴關係中解放出來。

最後的思考

雖然關於此問題有着不一樣的想法,可是有一個被你們共同接受的觀點是:捆綁應用對於填補 Linux 生態系統有着其獨到的做用。雖然如此,它的定位,不管是主流的仍是邊緣的,都變得愈發清晰,至少理論上是這樣。

想要儘量優化其系統的用戶,在大多數狀況下應該要避免使用捆綁應用。而講究易用性、儘量在維護系統上少費勁的用戶,可能應該會感受這種新應用十分舒爽。

原文來自:https://linux.cn/article-7796-1.html

本文地址:http://www.linuxprobe.com/all-linux-sts-best.html

相關文章
相關標籤/搜索