濮阳杆衣贸易有限公司

主頁 > 知識庫 > 建立并安裝一個定制的內核

建立并安裝一個定制的內核

熱門標簽:江蘇保險智能外呼系統(tǒng)產(chǎn)品介紹 高德地圖標注樓房入駐 北京外呼防封系統(tǒng)是什么 諾基亞地圖標注app 成都哪里有地圖標注公司 個人電銷機器人 南昌四川外呼系統(tǒng) 西寧人工外呼系統(tǒng)線路商 咸寧智能營銷電話機器人怎么樣
  首先對內核構建目錄做一個快速的瀏覽。 這里所提到的所有目錄都在 /usr/src/sys 目錄中; 也可以通過 /sys 來訪問它。 這里的眾多子目錄包含了內核的不同部分, 但對我們所要完成的任務最重要的目錄是 arch/conf,您將在這里編輯定制的內核配置; 以及 compile,編譯過程中的文件將放置在這里。 arch 表示 i386、 alpha、 amd64、 ia64、 powerpc、 sparc64, 或 pc98 (在日本比較流行的另一種 PC 硬件開發(fā)分支)。在特定硬件架構目錄中的文件只和特定的硬件有關; 而其余代碼則是與機器無關的,則所有已經(jīng)或將要移植并運行 FreeBSD 的平臺上都共享這些代碼。 文件目錄是按照邏輯組織的,所支持的硬件設備、 文件系統(tǒng), 以及可選的組件通常都在它們自己的目錄中。
  這一章提供的例子假定您使用 i386 架構的計算機。 如果您的情況不是這樣,只需對目錄名作相應的調整即可。
注意: 如果您的系統(tǒng)中 沒有 /usr/src/sys 這樣一個目錄, 則說明沒有安裝內核源代碼。安裝它最簡單的方法是通過以 root 身份運行 sysinstall, 選擇 Configure, 然后 Distributions, 然后 src, sys。 如果您不喜歡 sysinstall 并且可以使用 “官方的” FreeBSD CDROM, 則也可以通過命令行來安裝:
# mount /cdrom
# mkdir -p /usr/src/sys
# ln -s /usr/src/sys /sys
# cat /cdrom/src/ssys.[a-d]* | tar -xzvf -
  接下來, 進入 arch/conf 目錄下面, 復制 GENERIC 配置文件, 并給這個文件起一個容易辨認的名稱,它就是您的內核名稱。例如:
# cd /usr/src/sys/i386/conf
# cp GENERIC MYKERNEL
  通常,這個名稱是大寫的,如果您正維護著多臺不同硬件的FreeBSD機器,以您機器的域名來命名是非常好的主意。我們把它命名為MYKERNEL就是這個原因。
提示: 將您的內核配置文件直接保存在 /usr/src 可能不是一個好主意。 如果您遇到問題, 刪掉 /usr/src 并重新開始很可能是一個誘人的選擇。 一旦開始做這件事,您可能幾秒鐘之后才會意識到您同時會刪除定制的內核配置文件。 另外, 也不要直接編輯 GENERIC, 因為下次您 更新代碼 時它會被覆蓋, 而您的修改也就隨之丟失了。
您也可以考慮把內核配置文件放到別的地方, 然后再到 i386 目錄中創(chuàng)建一個指向它的符號鏈接。
例如:
# cd /usr/src/sys/i386/conf
# mkdir /root/kernels
# cp GENERIC /root/kernels/MYKERNEL  
# ln -s /root/kernels/MYKERNEL
注意: 必須以 root 身份執(zhí)行這些和接下來命令,否則就會得到 permission denied 的錯誤提示。
  現(xiàn)在就可以用您喜歡的文本編輯器來編輯 MYKERNEL 了。如果您剛剛開始使用 FreeBSD, 唯一可用的編輯器很可能是 vi,它的使用比較復雜, 限于篇幅, 這里不予介紹, 您可以在 參考書目 一章中找到很多相關書籍。 不過, FreeBSD 也提供了一個更好用的編輯器, 它叫做 ee, 對于新手來說,這很可能是一個不錯的選擇。 您可以修改配置文件中的注釋以反映您的配置, 或其他與 GENERIC 不同的地方。
  如果您在SunOS™或者其他BSD系統(tǒng)下定制過內核,那這個文件中的絕大部分將對您非常熟悉。如果您使用的是諸如DOS這樣的系統(tǒng),那GENERIC配置文件看起來就非常困難, 所以在下面的 配置文件章節(jié)將慢慢地、仔細地進行介紹。
注意: 如果您和 FreeBSD project 進行了 代碼同步, 則一定要在進行任何更新之前查看 /usr/src/UPDATING。這個文件中描述了更新過的代碼中出現(xiàn)的重大問題或需要注意的地方。 /usr/src/UPDATING 總是和您的 FreeBSD 源代碼對應,因此能夠提供比手冊更具時效性的新內容。
  現(xiàn)在應該編譯內核的源代碼了。 一共有兩種方法來完成這項工作,使用哪一種取決于您為什么要重新編譯內核, 以及所運行的 FreeBSD 版本。
如果您只安裝內核源代碼,使用方法1。
如果您在沒有升級源代碼的情況下編譯一個新內核(也許您只想為內核添加一個新的選項, 如IPFIREWALL),可以使用任何一種方法。
如果您打算把重新構建內核作為 make buildworld 過程的一部分來進行, 則應使用方法 2。
  如果從上次成功地完成 buildworld-installworld 以來您還 沒有 升級過代碼 (也就是沒有運行 CVSup、 CTM, 或使用 anoncvs), 則可以放心使用 config、 make depend、 make、 make install。
聯(lián)編內核
進入 /usr/src 目錄:
# cd /usr/src
編譯內核:
# make buildkernel KERNCONF=MYKERNEL
安裝新內核:
# make installkernel KERNCONF=MYKERNEL
注意: 使用這種方法聯(lián)編內核時, 需要安裝完整的 FreeBSD 源代碼。
提示: 默認情況下, 在聯(lián)編您所定制的內核時, 全部 內核模塊也會同時參與構建。 如果您希望更快地升級內核,或者只希望聯(lián)編您所需要的模塊, 則應在聯(lián)編之前編輯 /etc/make.conf:
MODULES_OVERRIDE = linux acpi sound/sound sound/driver/ds1 ntfs
這個變量的內容是所希望構建的模塊列表。 如果希望了解更多與構建內核有關的變量, 請參見 make.conf(5) 聯(lián)機手冊。
  新內核將會被復制到 /boot/kernel 目錄中成為 /boot/kernel/kernel 而舊的則被移到 /boot/kernel.old/kernel。 現(xiàn)在關閉系統(tǒng), 然后用新的內核啟動計算機。如果出現(xiàn)問題, 后面的一些 故障排除方法 將幫您擺脫困境。 如果您的內核 無法啟動, 請參考那一節(jié)。
注意: 其他與啟動過程相關的文件, 如 loader(8) 及其配置,則放在 /boot。 第三方或定制的模塊也可以放在 /boot/kernel, 不過應該注意保持模塊和內核的同步時很重要的,否則會導致不穩(wěn)定和錯誤。

標簽:電信 綏化 長春 長春 金華 清遠 濮陽 中衛(wèi)

巨人網(wǎng)絡通訊聲明:本文標題《建立并安裝一個定制的內核》,本文關鍵詞  建立,并,安裝,一個,定制,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《建立并安裝一個定制的內核》相關的同類信息!
  • 本頁收集關于建立并安裝一個定制的內核的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    张家港市| 南康市| 彰武县| 阿巴嘎旗| 宁晋县| 平遥县| 六枝特区| 德清县| 广安市| 始兴县| 石楼县| 道孚县| 阳原县| 会同县| 施秉县| 延津县| 平昌县| 朔州市| 上蔡县| 宁南县| 河间市| 视频| 高邑县| 永和县| 霍林郭勒市| 通城县| 九寨沟县| 荣昌县| 德昌县| 灌阳县| 慈溪市| 大理市| 铜陵市| 石嘴山市| 临湘市| 西乌珠穆沁旗| 灵丘县| 驻马店市| 庄浪县| 扎鲁特旗| 临城县|