Linux之父警告全球程序員:我剛發(fā)布的5.12內(nèi)核有bug,你們千萬別用
可能損壞根目錄文件
曉查 發(fā)自 凹非寺量子位 報(bào)道 | 公眾號 QbitAI
在美國的大雪天氣影響下,Linux之父Linus Torvalds的家經(jīng)歷了6天斷電,但他還是2月底趕出了5.12-rc1內(nèi)核。

然而,事情不到一周卻發(fā)生了轉(zhuǎn)折。
Linus本周給Linux內(nèi)核郵件組的發(fā)去了一封警告郵件:我剛發(fā)布的5.12-rc1內(nèi)核你們千萬別用!
你們中的某些人可能已經(jīng)注意到,在我的公共git樹中,“ v5.12-rc1”標(biāo)記已經(jīng)神奇地重命名為“ v5.12-rc1-dontuse”。
Linus之所以用“不要使用”(dontuse)來標(biāo)記這些代碼,是因?yàn)榭赡芷茐慕粨Q文件(swapfile)的處理。具體來說,更新后的代碼會丟失指向交換文件開頭的適當(dāng)偏移量,可能導(dǎo)致災(zāi)難性的后果。

當(dāng)發(fā)生此錯(cuò)誤時(shí),系統(tǒng)不僅會覆蓋現(xiàn)有文件中的數(shù)據(jù),還會覆蓋大量的元數(shù)據(jù),這些元數(shù)據(jù)的損壞可能會導(dǎo)致整個(gè)文件系統(tǒng)無法安裝和使用。
如果你根本不使用交換文件,那么這個(gè)問題不會造成任何傷害。因?yàn)樵S多Linux發(fā)行版仍然默認(rèn)交換分區(qū),而不是交換文件。
但是,應(yīng)用最廣的發(fā)行版Ubuntu默認(rèn)使用交換文件。如果你是Ubuntu或以Ubuntu為基礎(chǔ)的發(fā)行版(如Mint)用戶,那么這個(gè)錯(cuò)誤可能會破壞你整個(gè)根文件系統(tǒng)。
昨天,Linus已經(jīng)發(fā)布了5.12-rc2,修復(fù)了這個(gè)錯(cuò)誤。

不過,對Linux用戶來說,還是不要輕易使用未經(jīng)充分測試的rc版代碼。這類早期發(fā)布的內(nèi)核版本可能會帶來非常嚴(yán)重的bug,并不適合部署到生產(chǎn)中。
https://arstechnica.com/gadgets/2021/03/psa-linux-folks-stay-away-from-the-5-12-rc1-kernel/
版權(quán)所有,未經(jīng)授權(quán)不得以任何形式轉(zhuǎn)載及使用,違者必究。