linux 4.0 裡,你可能再也不需要重啟你的作業系統。
在大多數的伺服器或者資料中心裡,喜歡用linux的乙個原因是你不需要頻繁的進行重啟操作。誠然,某些關鍵性的補丁必須要進行重啟,但你也可以等到數月後再做此操作。現在,得益於 linux 核心的最新更新 你也許可以數年間都不用重啟。
感謝 ksplice 專案,使得這一特性在2023年就可以實現。此專案在對原始和打過補丁的核心進行比較後,使用乙個定製的核心模組將新的**加入到執行核心中。在支援ksplice的核心中,每個將被修補的功能都攜帶有一套特殊標誌用以進行區分。ksplice程序會監視正在修補該函式的**是不是當前不在使用,噹噹,打上補丁,你的伺服器上繼續執行。
oracle 在 2011 年收購了 ksplice 專案,並將其作為 rhel 的一項可選服務,使其應用於它自己的oracle linux 中(乙個 rhel(red hat enterprise linux ) 的轉殖版本)。這將此項技術隔離於其他企業版和伺服器版 linux 之外。
後來 kemelcare 為xpkezelbrl大部分企業發行版 linux 發布了一項提供非啟動式補丁服務。此程式作為專利軟體,只能通過按月支付來享有此服務。這從而很難滿足大多數linux系統管理員。
所以,red hat 和 suse 開始著手完全開源的為 linux 安裝嚴重補丁的非重啟方案。red had 的專案命名為 kpatch, suse的專案命名為 kgraft.
兩個公司採用了不同的途徑。kpatch 發布了乙個 stop_machine() 命令。之後,它著眼於現有的棧處理去使用ftrace,如果打補丁可以被做得很安全,它會重定向執行著的**到補丁函式,而後就www.cppcns.com刪除現在過時的**。
比過去好的是,資料中心被執行在世界各處,但是它們中的許多都需要乙個21世紀式的重啟。今天的資料中心必須更有效率,更有魯棒性和靈活性,這超過以往任何時候。我們檢查怎樣才能執行好你的資料中心,與之相對的是外包到乙個雲或者乙個服務提供商,或是採取混合程式設計客棧的方式。
kgraft 一直使用ftrace,儘管它是工作**程級的。當乙個老的函式被呼叫,它會定位到執行緒的乙個點,然後將其切換到新的函式。
雖然最終結果相同,即作業系統在打補丁的時候保持執行,但還是有顯著的效能差異的。當kgraft可能花費數分鐘的時候,kpatch可以只需要1到40毫秒,但他們從不會停機。
在2023年10月召開的linux 開發者大會上,兩個小組合二為一並且開始致力於聯合最好的程式使linux打補丁時不再重啟。實際上,他們最終是把kpatch和kgraft都丟進了linux核心。
jiri kosina,一位suse軟體工程師和linux核心開發者解釋說,linux核心的熱補丁將會「為函式提供乙個基本基礎設施」 熱補丁(例如:**重定向),包括為了包含實際補丁的核心模組的api(應用程式介面),和為了在使用者空間可以操作補丁的api/abi(應用二進位制介面),這是「相對簡單和簡約的,因為它盡可能多的利用了已有的核心基礎(名為ftrace)。它也是自包含的,在某種意義上說,它不在任何其他的核心子系統中呼叫自身(它甚至不接觸其他任何**)」
linux 4.0 rc 版現在已經放出,kosina 聲稱:」現在實施的x86架構只是作為乙個參考架構,對於powerpc, s390 和 arm 的支援工作已經在進行中了「。確實,對於程式設計客棧這些架構的支援源**已經在 live patching git 程式設計客棧code 上了。
簡單的**僅僅只是開始,你的發行版將通過補丁來支援和使用它。隨著 red hat 和 suse 的支援,live 補丁將很快預設在所有商業linux發行版中。
本文標題: linux 4.0 不再需要重啟
本文位址:
Linux 4 0亮點特性
個人僅挑選部分亮點特性 1.live patching livepatch是利用核心ftrace特性,無需重啟即可實時修補核心 的功能,對於使用大型伺服器並頻繁更新系統的公司是乙個好訊息,不必再頻繁重啟,可使用者無感知的更新或者bugfix。這個功能由suse和redhat主推,用於替換現在的ksp...
中國構建「綠色經濟」需40萬億
2月26日,全球管理諮詢公司麥肯錫 mckinsey company 在北京發布研究報告稱,中國要想轉型成為 綠色經濟 需要在未來20年投入大量資金運用新技術 從現在到2030年,年均需1.5萬億 2萬億元人民幣的資金投入,才能有效部署必要的綠色技術。根據麥肯錫測算,以年度計算,這部分資金相當於中國...
安裝 Linux 核心 4 0
警告 安裝新的核心可能會導致你的系統不可用或不穩定。如果你仍然使用以下命令繼續安裝,請確保備份所有重要資料到外部硬碟。如果你正在使用linux的發行版ubuntu 15.04,你可以直接通過ubuntu核心 安裝。在你的ubuntu15.04上安裝最新的linux核心4.0,你需要在shell或終端...