RHEL6編譯升級官方內核

RHEL6編譯升級官方內核

RHEL是一個商業支持的Linux版本,他的軟件可以免費獲得,免費使用,但是補丁和技術支持則需收費。但是根據GPLv2協議,對內核的任何改動都必須公佈代碼,所以RedHat只將源碼公佈在官方的FTP上,沒有給出二進制包。對於沒有買RHEL服務的人來說,則需要自己手動將源碼編譯成RPM二進制包。

1)安裝編譯環境(RHEL6.5 x86_64)

# yum -y install rpm* xmlto asciidoc elfutils-libelf-devel zlib-devel binutils-devel newt-devel python-devel hmaccalc perl*
# wget http://mirror.centos.org/centos/6/os/i386/Packages/asciidoc-8.4.5-4.1.el6.noarch.rpm
# wget http://mirror.centos.org/centos/6/os/x86_64/Packages/newt-devel-0.52.11-3.el6.x86_64.rpm
# wget http://mirror.centos.org/centos/6/os/x86_64/Packages/slang-devel-2.2.1-1.el6.x86_64.rpm
# rpm -ivh asciidoc-8.4.5-4.1.el6.noarch.rpm newt-devel-0.52.11-3.el6.x86_64.rpm slang-devel-2.2.1-1.el6.x86_64.rpm

2)下載內核源碼

# wget ftp.redhat.com:/pub/redhat/linux/enterprise/6Server/en/os/SRPMS/kernel-2.6.32-431.el6.src.rpm

3)生成內核源碼樹

# groupadd mockbuild
# useradd -g mockbuild mockbuild
# rpm -ivh kernel-2.6.32-431.el6.src.rpm
# cd /root/rpmbuild/SPECS/
# rpmbuild -bp --with fireware --target=`uname -m` kernel.spec

生成過程的中會生成key,用於簽署內核模塊,可以運行命令提升生成速度:rngd -r /dev/urandom

4)最後一步

# cd /root/rpmbuild/BUILD/kernel-2.6.32-431.el6/linux-2.6.32-431.el6.x86_64
# cp /boot/config-2.6.32-431.el6.x86_64 .config
# make menuconfig
# make
# make modules_install
# make install

重啓選擇新內核即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章