嘗試 Debian 的最大理由可能是它的穩定性。為了不破壞這種穩定性,我們必須遵循一定的理念,即始終從官方 Debian 儲存庫安裝軟體,並且永遠不要進行安裝您在網路上找到的隨機 tarball 中的內容。
然而,我還不清楚我是否也應該將這種心態應用於預編譯軟體。我已經透過 tarball 解壓縮安裝了 Apache OpenOffice 和 PyCharm tar -xvzf file.tar.gz
。之後,我要么已經能夠運行該程序,要么必須安裝一些.deb
文件(我想這符合 Debian 哲學?),而無需“進行安裝”。
我想安裝“隨機”.deb
檔案可能會弄亂我的系統,但除此之外,有什麼方法可以以這種方式破壞我的系統嗎?
答案1
這Debian 社會契約第 4 節說
我們的首要任務是我們的用戶和免費軟體
我們將以使用者和自由軟體社群的需求為指導。我們將把他們的利益放在第一位。我們將支援使用者在多種不同類型的運算環境中進行操作的需求。我們不會反對旨在在 Debian 系統上使用的非自由作品,也不會試圖向創建或使用此類作品的人收取費用。我們將允許其他人創建包含 Debian 系統和其他作品的發行版,而無需向我們支付任何費用。為了促進這些目標,我們將提供一個由高品質材料組成的整合系統,沒有任何法律限制會阻止該系統的此類使用。
所以我不會說 Debian 對你的做法有任何反對。當然安裝軟體應該/opt
就可以了;將二進位檔案連結到/usr/local/bin
而不是連結到 可能會更好/usr/bin
,但這只是一個小細節。 (/usr/bin
應該是套件管理器的專屬域,但它是您的系統。)
當然,可能還有更多「類似 Debian」的做事方式,但這取決於您的特定用例。我建議使用打包的自由辦公室而不是 Apache 的 OpenOffice。安裝「隨機」軟體包不會破壞您的系統,只要它們來自 Debian 檔案即可。無論您是否使用 Debian 軟體包,都有無數種方法可以破壞您的系統;如果您只使用 Debian 軟體包,Debian 開發人員會盡力避免這種情況發生,但沒有辦法保證...
如果您希望保持系統的穩定性:
- 永遠不要用非打包內容覆蓋包;
- 不要安裝非打包軟體
/usr
(除了/usr/local
); - 小心 initscripts 或 systemd 單元;
- 不要從隨機存儲庫(或除主“套件”存儲庫之外的 Debian 存儲庫)安裝軟體包 - 所以不要混合
stable
等等testing
,除非你知道自己在做什麼)。
遵循這些規則,您應該足夠安全。您可以在 Debian 提供的系統之上安裝軟體,無論是預先編譯的還是您自己編譯的。
答案2
「隨機 deb」有兩個差異。
- 有一種自然的卸載方法,您知道它的存在。 (我認為標準 autoconf 專案提供了
make uninstall
,但它遠非通用)。 - 套件使用的名稱可能與其他套件衝突。如果檔案名稱衝突,您會在安裝時收到警告,所以這是一個很好的改進。但如果套件名稱衝突,您可能會得到非常混亂的結果。
偵測(某些類型的)檔案名稱衝突可能是一種有用的安全增強功能。它會阻止您覆蓋 Debian 軟體包已提供的某些系統檔案。卸載也非常有用。但是……如果我們使用「隨機 deb」和「不破壞穩定性」等更強硬的詞呢?那我會說不,這和 原理上沒有那麼大的差別make install
。
從 tarball 運行單獨的程式往往不會造成太大的干擾。然而 Debian 的第二個原則是提供安全性更新。我建議不要使用任何開啟 Office 文件的可能性不安全、未維護的軟體你提到的。因此,在大多數情況下,官方 (LibreOffice) 軟體包會更好。
稱之為「Debian 哲學」有點言過其實。這並不是 Debian 獨有的。您可以採取與 Ubuntu(LTS 或其他)用戶相同的態度,我認為這是一個很好的起點。而 Debian 有更深層的哲學,這更配得上這個字:)。
就我個人而言,我在運行 Debian 的系統上希望 Ubuntu LTS 也能照顧我。我避免使用 Ubuntu 的原因是他們自己編造了一些東西,這並沒有給我留下深刻的印象,而且我也沒有興趣處理它。 (“Unity”,Mir,對 systemd 的壞話。我希望我的 wifi 保持開放。他們整合驅動程式的方式讓我擔心長期維護)。