為什麼你的發行版仍然在使用“過時的”Linux 核心?
檢查一下你的系統所使用的 Linux 核心版本,你十有八九會發現,按照 Linux 核心官網提供的資訊,該核心版本已經達到使用壽命終期(EOL)了。
一個軟體一旦達到了使用壽命終期,那麼就意味著它再也不會得到 bug 修復和維護了。
這自然會引發一連串問題:為什麼我的 Linux 發行版會使用一個已經達到使用壽命終期的核心呢?這樣做有沒有安全風險?我的系統還安全嗎?
下面將逐一解答這些問題。
總結
上游核心維護與你的發行版的核心維護是兩個不同的概念。
例如,根據 Linux 核心官網,Linux 核心 4.15 版本可能已經達到使用壽命終期了,但是在 2023 年 4 月之前,Ubuntu 18.04 長期維護版本將會繼續使用這個版本,並通過向後移植安全補丁和修復 bug 來提供維護。
檢查 Linux 核心版本,以及是否達到使用壽命終期
首先,檢視你的系統所使用的 Linux 核心版本:
uname -r
我使用的是 Ubuntu 18.04,輸出的 Linux 核心版本如下:
abhishek@itsfoss:~$ uname -r
5.0.0-37-generic
接下來,可以到 Linux 核心官網上看看哪些 Linux 核心版本仍然在維護狀態。在網站主頁上就可以看到相關資訊。
你看到的核心版本狀態應該類似於下圖:
如果你的核心版本沒有列在核心官網主頁上,就說明該版本已經達到了使用壽命終期。
可以看到,5.0 核心版本並不在列,這說明該核心版本已經不再得到維護。事實上,該版本在 2019 年 6 月就已經達到使用壽命終期了。
不幸的是,Linux 核心的生命週期沒有任何規律可循。不是說常規的核心穩定釋出版可以得到 X 月的維護、長期維護版本(LTS)可以得到 Y 年的維護。沒有這回事。
根據實際需求,可能會存在核心的多個 LTS 版本,其使用壽命終期各不相同。在這個頁面上可以查到這些 LTS 版本的相關資訊,包括計劃的使用壽命終期。
那麼問題來了:既然 Linux 核心官網上明確表示 5.0 版本的核心已經達到了使用壽命終期,Ubuntu 為什麼還在提供這個核心版本呢?
你的發行版使用的 Linux 核心已經達到了使用壽命終期,但是沒關係!
你是否想過,為什麼 Ubuntu/Debian/Fedora 等發行版被稱為 Linux “發行版”?這是因為,它們“發行” Linux 核心。
這些發行版會對 Linux 核心進行不同的修改,並新增各種 GUI 元素(包括桌面環境、顯示伺服器等)以及軟體,然後再呈現給使用者。
按照通常的工作流,Linux 發行版會選擇一個核心,提供給其使用者,然後在接下來的幾個月、幾年中,甚至是達到核心的使用壽命終期之後,仍然會繼續使用該核心。
這樣能夠保障安全嗎?其實是可以的,因為 發行版會通過向後移植全部的重要修補來維護核心。
換句話說,你的 Linux 發行版會確保 Linux 核心沒有漏洞和 bug,並且已經通過向後移植獲得了重要的新特性。在“過時的舊版本 Linux 核心”上,其實有著數以千計的改動。
如果 Linux 核心網站上說某個核心版本已經達到了使用壽命終期,那麼就意味著 Linux 核心的核心維護團隊不會再對該核心版本進行升級和打補丁了。
但與此同時,Debian/Ubuntu 或者其他發行版的開發者們會繼續工作,通過從(由核心核心團隊維護的)更新的核心版本中遷移相關的修改,維持這個老版本的生命力。
重點在於,即使你的發行版看上去是在使用一個已經過時的 Linux 核心,其實該核心也得到了良好的維護,並非是真的過時了。
你是否應該使用最新的穩定核心版本?
新的 Linux 核心穩定版本每隔 2 到 3 個月釋出一次,有不少使用者躍躍欲試。
實話說,除非有十分充分的理由,否則不應該使用最新版本的穩定核心。你使用的發行版並不會提供這個選項,你也不能指望通過在鍵盤上敲出 sudo apt give-me-the-latest-stable-kernel
解決問題。
此外,手動安裝主流 Linux 核心版本本身就是一個挑戰。即使安裝成功,之後每次釋出 bug 修復的時候,負責更新核心的就會是你了。此外,當新核心達到使用壽命終期之後,你就有責任將它升級到更新的核心版本了。和常規的 Ubuntu 更新不同,核心升級無法通過 apt upgrade
完成。
同樣需要記住的是,切換到主流核心之後,可能就無法使用你的發行版提供的一些驅動程式和補丁了。
正如 Greg Kroah-Hartman所言,“你能使用的最好的核心,就是別人在維護的核心。”除了你的 Linux 發行版之外,又有誰更勝任這份工作呢!
希望你對這個主題已經有了更好的理解。下回發現你的系統正在使用的核心版本已經達到使用壽命終期的時候,希望你不會感到驚慌失措。
歡迎在下面的評論區中留下你的疑問或建議。
via: https://itsfoss.com/why-distros-use-old-kernel/
作者:Abhishek Prakash 選題:lujun9972 譯者:chen-ni 校對:wxy
訂閱“Linux 中國”官方小程式來檢視
相關文章
- 在Linux中,發行版和核心有什麼區別?Linux
- 什麼是Linux發行版?Linux發行版推薦Linux
- Linux發行版 vs Linux核心Linux
- 外媒:華為的 Linux 發行版 openEuler 可以使用了!Linux
- 我為什麼使用Linux做開發Linux
- 不容錯過的 5 個微型 Linux 發行版Linux
- Linux核心是什麼?Linux核心的五大功能!Linux
- 主流發行版之前的那些最早的 Linux 發行版Linux
- 如何選擇更適合你的 Linux 發行版?Linux
- 為什麼你成為不了團隊核心成員
- 2022年適合新手使用的Linux發行版!Linux
- 什麼是Nginx?Linux為什麼使用Nginx?NginxLinux
- Linux核心 6.6版本將遏制NVIDIA驅動的不正當行為Linux
- 為什麼你的企業需要線上工時表?
- ###什麼是Linux核心###什麼是MMULinux
- 什麼是Linux核心?有什麼功能?Linux
- 說說你做過讓你覺得最滿意的專案是什麼?為什麼?
- 為什麼要使用Linux?幾大理由讓你滿意!Linux
- 酒店傳媒系統的核心是什麼?視達盈為你解答!
- 為什麼使用者執行緒必須對映到核心執行緒?執行緒
- 為什麼剛克隆的 Linux 核心程式碼倉庫中部分檔案丟失?你肯定也會遇到!!!Linux
- Google仍然在閱讀你的電子郵件Go
- 你最喜歡哪個 Linux 發行版?Linux
- 2018 年最好的 Linux 發行版Linux
- 2019 年最好的 Linux 發行版Linux
- Linux中核心態指什麼?使用者態切換到核心態的方式有哪些?Linux
- 事件發生時,你在想什麼?事件
- 為什麼使用finalshell連線linux去使用?Linux
- 什麼是 WireGuard?為什麼 Linux 使用者為它瘋狂?Linux
- 為什麼你沒見過年終獎!
- 為什麼選擇使用 OKR 進行專案過程管理OKR
- Linux 核心和 Windows 核心有什麼區別?LinuxWindows
- 晉升的為什麼不是你
- Linux發行版Linux
- Linux核心態是什麼?使用者態如何切換到核心態?Linux
- 為什麼感覺時間越過越快?
- 在Linux中,DNS進行域名解析的過程是什麼?LinuxDNS
- 為什麼不做開發做運維?Linux為什麼這麼廣泛?運維Linux