2015-02-23 84 views
5

我對Linux非常陌生,並且對構建/編譯我自己的內核非常陌生。對於初學者,我只是想弄清楚如何改變我的內核的版本字符串。例如,當我做uname -a時,它打印出「Linux localhost.localdomain 3.11.10-100.fc18.i686」。我想定製,但我不確定要編輯的文件。我知道它必須是我的內核目錄中的一些文件,但我一直在經歷他們,沒有運氣。任何幫助將是偉大的!如何更改內核的版本字符串?

回答

10

在頂層Makefile的頂部,有四行

VERSION = 3 
PATCHLEVEL = 18 
SUBLEVEL = 7 
EXTRAVERSION = 

的值是不同的內核版本的不同,當然。這些用於構建版本字符串,因此在構建內核之前更改它們會更改您構建的內核的版本字符串。

另外,還有一個配置選項CONFIG_LOCALVERSION,可以在的make menuconfig之後找到,它附加在這裏。

+0

好的我找到了那個文件。由於某些原因,uname -a顯示與makefile顯示的不同。另外,EXTRAVERSION是我想要追加到最後的? – pfinferno 2015-02-23 22:50:25

+1

Fedora傢伙用'EXTRAVERSION'設置爲'100.fc18.i686'編譯它們的內核。在內核源碼樹中更改makefile不會影響正在運行的內核的版本字符串,它會影響您從這些源生成的內核的版本字符串。 – Wintermute 2015-02-23 22:52:15

+1

或者他們可能已經使用'CONFIG_LOCALVERSION',可以在General Setup-> Local version下的'make menuconfig'中找到。 – Wintermute 2015-02-23 23:01:25