亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
最近訪問(wèn)板塊 發(fā)新帖
查看: 972 | 回復(fù): 0
打印 上一主題 下一主題

以內(nèi)存配置為例,介紹redhat AS4內(nèi)核配置更改再編譯 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2007-04-29 11:05 |只看該作者 |倒序?yàn)g覽

-----------------------
一、內(nèi)核內(nèi)存配置檢查:
-----------------------
可以通過(guò)以下辦法來(lái)查看啟動(dòng)時(shí)內(nèi)核是否支持64G內(nèi)存
首先要弄清啟動(dòng)時(shí)用的是哪個(gè)內(nèi)核
[root@study ~]# cat /boot/grub/grub.conf
...
default=0 (說(shuō)明第一個(gè)條目是默認(rèn)的啟動(dòng))
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Red Hat Enterprise Linux AS (2.6.9-34.ELsmp)
         root (hd0,0)
         kernel /vmlinuz-2.6.9-34.ELsmp ro root=/dev/VolGroup00/LogVol00 rhgb quiet
         initrd /initrd-2.6.9-34.ELsmp.img
title Red Hat Enterprise Linux AS-up (2.6.9-34.EL)
        root (hd0,0)
        kernel /vmlinuz-2.6.9-34.EL ro root=/dev/VolGroup00/LogVol00 rhgb quiet
        initrd /initrd-2.6.9-34.EL.img

我的內(nèi)核是vmlinuz-2.6.9-34.ELsmp
對(duì)應(yīng)安裝時(shí)的內(nèi)核編譯文件就是
/boot/config-2.6.9-34.ELsmp
檢查高內(nèi)存支持
[root@study ~]# more /boot/config-2.6.9-34.ELsmp |grep 4G
# CONFIG_X86_4G is not set
# CONFIG_X86_4G_VM_LAYOUT is not set
# CONFIG_HIGHMEM4G is not set
CONFIG_HIGHMEM64G=y 說(shuō)明我的內(nèi)核編譯時(shí)選擇了64G內(nèi)存支持,
只有4G支持的情況會(huì)類似:
[root@study ~]# more /boot/config-2.6.9-34.EL |grep 4G
# CONFIG_X86_4G is not set
# CONFIG_X86_4G_VM_LAYOUT is not set
CONFIG_HIGHMEM4G=y
# CONFIG_HIGHMEM64G is not set
-----------------------
二、定制內(nèi)核:
-----------------------
如果要改變內(nèi)核對(duì)高內(nèi)存的支持需要重新編譯內(nèi)核。定制內(nèi)核有兩種方法
1)、redhat專有,中間可以得到一個(gè)rpm內(nèi)核包,用來(lái)安裝或者與別人共享。
2)、用于所有l(wèi)inux發(fā)行版,不會(huì)得到rpm包,從原代碼生成您定制的內(nèi)核。
這里只介紹第一種
警告:
定制內(nèi)核超出了紅帽的服務(wù)范圍和支持流程?赡軙(huì)使您的系統(tǒng)失去紅帽的支持服務(wù)。風(fēng)險(xiǎn)自負(fù)。
如果已投入運(yùn)行的redhat系統(tǒng),只是想改變內(nèi)核的一項(xiàng)配置的話,按我說(shuō)的步驟會(huì)把影響降到最低。
1,檢查相關(guān)工具包
[root@study ~]# system-config-packages
在彈出的"添加或刪除軟件包"界面選中"開(kāi)發(fā)工具",并檢查它的細(xì)節(jié)中,
kernel-devel,kernel-smp-devel,kernel-hugemem-devel,他們會(huì)產(chǎn)生以下文件夾:
[root@study ~]# ls /usr/src/kernels/
2.6.9-34.EL-hugemem-i686  2.6.9-34.EL-i686  2.6.9-34.EL-smp-i686
每個(gè)文件夾對(duì)應(yīng)一個(gè)內(nèi)核代碼樹(shù)(他們都不是完整的代碼,只是可以用來(lái)編譯相應(yīng)的內(nèi)核模塊而已,
而不能用來(lái)編譯真正的內(nèi)核)。
2,準(zhǔn)備完整的源代碼環(huán)境
請(qǐng)使用與您系統(tǒng)版本一致的軟件包(cat /etc/redhat-release)。
如果注冊(cè)了紅帽網(wǎng)絡(luò)可以通過(guò)下面方法來(lái)下載安裝源代碼

# up2date redhat-rpm-config rpm-build
# up2date --get-source kernel
# rpm -ivh /var/spool/up2date/kernel*.src.rpm
參考
http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/release-notes/as-x86/
如果沒(méi)有注冊(cè)紅帽網(wǎng)絡(luò),只能手工下載安裝了(我猜配發(fā)的光盤(pán)中應(yīng)該可以找到這個(gè)包,但我的光盤(pán)不全無(wú)法試驗(yàn))

ftp://ftp.redhat.com/pub/redhat/linux/updates/enterprise/4AS/en/os/SRPMS/kernel-2.6.9-34.src.rpm
請(qǐng)下載用與您系統(tǒng)版本一致的軟件包。
# rpm -ivh /mnt/kernel-2.6.9-34.src.rpm
# cd /usr/src/redhat/SPECS/
#cd /usr/src/redhat/SPECS
#vi kernel-2.6.spec
主要修改如下地方:
define buildsource 0------------我的這個(gè)在第8行,改為1,
這就是為什么沒(méi)有源代碼包的原因,因?yàn)槟J(rèn)不生成源代碼包。
%define buildhugemem 1 支持高內(nèi)存
%define buildsmp 1  支持多處理器  
%define buildlargesmp 1 支持更多處理器

Requires: qt-devel, gtk2-devel readline-devel ncurses-devel
我的在1187行,如果沒(méi)用用X的話,把這句注釋掉,這樣編譯出來(lái)的包就不依賴于X-window的某些包,
因?yàn)閮?nèi)核配置是可以用make xconfig,所以默認(rèn)依賴X-window,如果沒(méi)裝X-window,可以注釋掉。
保存退出。
#touch /etc/beehive-root
這句命令非必須,如果不做的話,最后編譯出來(lái)的包都會(huì)變成kernel-*.*-root.rpm,多了個(gè)root,
據(jù)說(shuō)是為了標(biāo)示包的編譯人的,如果touch了這個(gè)文件,就沒(méi)有這個(gè)問(wèn)題了,命名和官方rpm一樣。
#rpmbuild  -ba --target=`uname -m` ./kernel-2.6.spec
編譯i686平臺(tái)(這里uname -m命令會(huì)得到i686的結(jié)果)的所有包,這樣上面介紹的所有包都會(huì)生成,
或者換成rpmbuild -bb --target=`uname -m` ./kernel-2.6.spec只編譯非src.rpm。
所有包就會(huì)生成到/usr/src/redhat/RPMS/i686下面
如果只需要sourcecode而并非所有rpm包,那在修改spec文件時(shí)還要修改如下行:
%ifarch noarch
%define builddoc 1
%define buildsource 0---------------這里0修改為1
在編譯的時(shí)候使用rpmbuild -ba --target=noarch ./kernel-2.6.spec,這樣僅僅編譯sourcecode和doc包,
會(huì)節(jié)省很多時(shí)間。
3,配置內(nèi)核
為了標(biāo)識(shí)我們將來(lái)自己訂制的內(nèi)核,以和現(xiàn)有的內(nèi)核區(qū)分:
[root@study kernel-2.6.9]# cd /usr/src/redhat/BUILD/kernel-2.6.9/linux-2.6.9/
[root@study linux-2.6.9]# vi Makefile
找到EXTRAVERSION改成下面的形式:
EXTRAVERSION = -custom-2.6.9-34
因?yàn)槲业?boot/config-2.6.9-34.EL內(nèi)核不支持64G內(nèi)存,我要“克隆”一個(gè)新的,并支持64G內(nèi)存。
[root@study linux-2.6.9]# diff .config /boot/config-2.6.9-34.EL 比較這兩個(gè)配置文件,
一般無(wú)輸出,也就是沒(méi)有差異,如果有差異就:
[root@study linux-2.6.9]# cp  /boot/config-2.6.9-34.EL .config
cp:是否覆蓋 '.config' ? y
我們的目的是在原來(lái)的基礎(chǔ)上只修改內(nèi)存配置,這個(gè).config文件決定了編譯內(nèi)核的選項(xiàng)。
不建議直接修改.config,而通過(guò)下面的方法:
[root@study linux-2.6.9]#make menuconfig
在界面中選擇  Processor type and features  --->  
再選擇 High Memory Support (4GB)  --->  
       ( ) off
       ( ) 4GB
       (X) 64GB
退出,退出,再退出,當(dāng)下面信息出現(xiàn),一定要選yes
Do you wish to save your new kernel configuration?
4,編譯并安裝內(nèi)核
這里有兩種選擇,結(jié)果一致,任選其一。
1)這時(shí)候您可以做一個(gè)rpm
    [root@study linux-2.6.9]# make rpm
    安裝完成的這個(gè)內(nèi)核rpm包
    [root@study linux-2.6.9]# rpm -ivh /usr/src/redhat/RPMS/i386/kernel-2.6.9custom2.6.934-2.i386.rpm
    可以看到/boot下面多了我們的新內(nèi)核文件vmlinuz-2.6.9-custom-2.6.9-34
    /lib/modules下面多了文件夾2.6.9-custom-2.6.9-34,其中包含了新內(nèi)核的所有模塊。
    為我們的新內(nèi)核制作一個(gè)內(nèi)存盤(pán),確保新內(nèi)核能夠啟動(dòng)
    [root@study linux-2.6.9]#  mkinitrd /boot/initrd-2.6.9-custom-2.6.9-34.img 2.6.9-custom-2.6.9-34
    在啟動(dòng)引導(dǎo)器grub的配置文件中添加屬于新內(nèi)核的一段配置
    [root@study linux-2.6.9]# vi /boot/grub/grub/conf
    default=2 因?yàn)槲业男聝?nèi)核配置段排在第3位,這樣把新內(nèi)核作為默認(rèn)啟動(dòng)項(xiàng)
    ...
    title Red Hat Enterprise Linux AS(2.6.9-34custom)
         root (hd0,0)
         kernel /vmlinuz-2.6.9-custom-2.6.9-34 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
         initrd /initrd-2.6.9-custom-2.6.9-34.img
2)[root@study linux-2.6.9]# make
   [root@study linux-2.6.9]# make modules_install
   [root@study linux-2.6.9]# make install
   新的kernel, initrd 和 system.map 會(huì)自動(dòng)拷貝到/boot目錄,新的內(nèi)核也會(huì)自動(dòng)加入到grub.conf的啟動(dòng)列表里面。

在上面兩個(gè)步驟之一完成后
重新啟動(dòng)時(shí)系統(tǒng)就使用我們訂制的內(nèi)核了。
[root@study linux-2.6.9]# reboot
請(qǐng)檢查系統(tǒng)及各個(gè)服務(wù)的運(yùn)行狀況,如果有錯(cuò)誤,可以更改/boot/grub/grub.conf的default值,選原來(lái)的配置段,
重新啟動(dòng)后,就恢復(fù)使用原來(lái)的內(nèi)核了。
            



本文來(lái)自ChinaUnix博客,如果查看原文請(qǐng)點(diǎn):http://blog.chinaunix.net/u/11408/showart_288745.html
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過(guò)ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP