很多人吹噓 Linux 穩定,為什麼普遍 Ubuntu 會崩呢?

很多人吹噓 Linux 穩定,為什麼普遍 Ubuntu 會崩呢?

在軟件的更新速度和穩定性上,Ubuntu選擇了更新速度。在是否信任用戶的問題上,Ubuntu選擇了認為用戶是不被重視的。

Linux各種發行版有自己的風格,但都逃不掉一個選擇,就是選擇最新的軟件,還是選擇保持穩定。對單一軟件而言,版本的新舊與穩定性是不存在確認的關聯的。但如果是構成一個軟件體系就存在密切的關聯了。

在各種Linux發行版裡,有選擇追求穩定的,比如各種企業級發行版和Debian。也有極端追求軟件更新的,如Ubuntu和Gentoo。這裡的區別是,發行版如果選擇追求穩定,則需要一開始就確認大量基礎第三方庫的版本,確保這些版本之間可以協調起來穩定運行。同時選擇各類軟件包的版本時,也要考慮這些第三方庫的兼容性。在這些兼容性都確定下來後,由大量的軟件包維護者來對軟件進行測試和跟蹤調試,遇到bug也會通過與原作者溝通或者打patch的方式來修復軟件的問題。

這個過程會使得發行版裡各種軟件經過確認認為是穩定的。但這個過程其實非常耗時,導致一個穩定的發行版對外發布時,內部包含的很多軟件都已經落後於最新版本了。

很多人吹噓 Linux 穩定,為什麼普遍 Ubuntu 會崩呢?

這裡的典型是Debian發行版。每次啟動一個版本時,先是大家在SID版裡可以隨便用最新的軟件胡搞。最終確定下來一些基礎軟件庫後,開始形成一個TESTING版,此時軟件包維護者就開始大量的測試和接受用戶反饋,修復BUG了。這個過程要經歷大約2年的時間。最終無數的軟件包維護者都認可了這個TESTING版足夠穩定了。就會形成一個RELEASE版。這就是為啥每次Debian的Release裡都會包含那麼多很舊的軟件。

而Ubuntu則是追求軟件更新速度。其標準做法是每半年一個Release,Release直接基於Debian TESTING版。可見穩定性是肯定遠遠不如Debian的,但可以實現Ubuntu所追求的軟件版本儘量新。就算是每隔2年多的一個Ubuntu LTS(Long Time Support,長期維護版)其穩定性還是比照Debian差了一截。

Ubuntu追求軟件的更新速度也不全是缺點,優點也有不少。比如新版本的軟件通常可以用上更新的功能。而硬件驅動也是如此。所以買了比較新的電腦硬件,很多時候只有Ubuntu能無痛的用起來。

很多人吹噓 Linux 穩定,為什麼普遍 Ubuntu 會崩呢?

另外一個Ubuntu穩定性較差的根源在於Ubuntu的產品經理思維。這是個長期以來值得討論的問題,即:用戶是不是可以不被重視的?認為可以不重視的思路,會把儘量多的選擇交給用戶,不要做多餘的隱藏操作。認為用戶可以不被重視的思路,則儘量隱藏控制和配置細節,並以開發者的主管意願去做一些隱藏的操作。

而Ubuntu選擇了後者。於是Ubuntu表面看起來非常適合小白用戶,隱藏了很多技術細節。但背後偷偷摸摸做了很多自動運行的事情。自2005年首次嘗試Ubuntu至今,無數次的遇到了手工修改好的配置轉眼就被Ubuntu給改回去的情況。尤其是輸入法等與UI相關的配置。

這個問題上,過去10年來,微軟的Windows也曾反覆糾結過。之前因為安全問題曾經很糾結的選擇信任用戶。於是包括關機都需要填寫個理由這種事情都乾的出來。但自打阿三做了微軟的CEO後,選擇了相反的路線,即認為用戶可以不被重視。所以各種不信任用戶,偷偷更新,強制更新之類的都出來了。

所以,可以構建一個二維的矩陣,維度分別是穩定性和信任用戶。Ubuntu所在的象限就是低穩定性高更新頻度,且不信任用戶。Gentoo所在象限是高更新頻度(比Ubuntu還高),且信任用戶。Debian選擇低更新頻度高穩定性,且信任用戶。如果希望不要像Debian那麼保守而穩定,但也不想不被重視,可以考慮Centos。


分享到:


相關文章: