?? kerneld.txt
字號:
在核心想重繪螢?zāi)粫r(shí),它會送出一個(gè) SIGQUIT 訊號到正執(zhí)行 /sbin/screenblanker 的行程 (process)。你的命令稿或螢?zāi)槐Wo(hù)程式要捕捉 (trap) 這訊號及結(jié)□。記著之後還要把螢?zāi)贿€原到原本的文字模式 (text mode)。 _________________________________________________________________ 常見問題及你可能懷疑的事情 為何當(dāng)我執(zhí)行 ifconfig 時(shí)為何我會得到 "Cannot locate module for net-pf-X" 訊息 在核心 1.3.80 左右,網(wǎng)絡(luò)的程式修改至容許把通訴協(xié)定 (protocol families, 如 IPX, AX.25 和 AppleTalk) 載入為模組。這導(dǎo)致額外的 kerneld 要求 :net-pf-X,X 是一個(gè)用以辨別通訊協(xié)定的數(shù)字(參看 /usr/src/linux/include/linux/socket.h 來找出不同數(shù)字的意思)。 不幸地,ifconfig 會意外地造成這些訊息,所以很多人會在開機(jī)期間執(zhí)行 ifconfig 來設(shè)定回歸設(shè)備 (loopback device) 時(shí)收到。這些訊息并無壞處,你 可在 /etc/conf.modules 中加入以下數(shù)行來避免它們: alias net-pf-3 off # Forget AX.25 alias net-pf-4 off # Forget IPX alias net-pf-5 off # Forget AppleTalk 當(dāng)然,如果你把 IPX 編譯了為模組,你不可加上和它有關(guān)的一行。 開始 Kerneld 後,啟動 PPP 連線會使我的電腦慢如蝸牛 已經(jīng)有多個(gè)這類個(gè)案。這似乎是因?yàn)?kerneld 和部分系統(tǒng)用來設(shè)定和監(jiān)察 PPP 連線的 tkPPP script 不正常地互相影向所致。因?yàn)槟?script 在執(zhí)行 ifconfig 時(shí)好像用到回圈 (loops)。這樣會觸發(fā) kerneld 找尋 net-pf-X 模組 (見前),增加系統(tǒng)工作量和可能導(dǎo)致系統(tǒng)紀(jì)錄 (system log) 中出現(xiàn)大量 "Cannot locate module for net-pf-X" 訊息。除了不使用 tkPPP 或改用其他方 法來監(jiān)察連線,這問題未有其他解決方法。 kerneld 不載入我的 SCSI 驅(qū)動程式! 在你的 /etc/conf.modules 中加上一個(gè) SCSI 配接器的項(xiàng)目。詳情這看之前有關(guān) [35]scsi_hostadapter 的部分。 modprobe 投訴 'gcc2_compiled' 未定義 (undefined) 這是 module-utilities 的一個(gè)錯(cuò)誤。它只在使用 binutils 2.6.0.9 或更新版 本時(shí)出現(xiàn),而且已在 binutils 的出版說明 (release note) 中說明。所以你應(yīng) 該看看它。你也可更新 module-utilities,如 modules-2.0.0 來解決這問題。 我的音響驅(qū)動程式 (sound driver) 老是忘記音量之類設(shè)定 模組載入後的設(shè)定是儲存在模組之內(nèi)的。所以,當(dāng) kerneld 自動卸下模組時(shí),你 所做的設(shè)定都會被忘掉,下次載入時(shí)又回復(fù)原狀。 你可使 kerneld 在自動載入模組後執(zhí)行一個(gè)程式,以作出設(shè)定。請參看[36]以上 有關(guān) 'post-install' 項(xiàng)目的部分。 DOSEMU 需要一些模組,我怎樣使 kerneld 載入它們? 你不能。不論是官方 (official) 或開發(fā) (development) 版的 dosemu,都不支 援用 kerneld 載入 dosemu 模組。不過,如果你有 2.0.26 或更新的核心,你不 再需要那些 dosemu 模組 -- 你只需要更新 dosemu 至 0.66.1 版。(譯按∶目 前最新的 DOSEMU 穩(wěn)定版本 (stable version) 是 0.66.7。) 為何會有 "Ouch, kerneld timed out, message failed" 這訊息? 當(dāng)核心對 kerneld 作出要求時(shí),它會期望在 1 秒之內(nèi)得到應(yīng)答 (acknowledgement)。如果 kerneld 不作出回應(yīng),這個(gè)訊息會被記錄下來 (logged)。這要求會再被提出,直到完成為止。 這通常在系統(tǒng)負(fù)荷 (load) 非常高時(shí)發(fā)生。因?yàn)?kerneld 也是一個(gè)使用者行程 (user-process),它會如其他程序般排程 (scheduling)。負(fù)荷高時(shí),它可能來不 及在核心超時(shí) (time out) 前作出回應(yīng)。 如果這問題在負(fù)荷低時(shí)也發(fā)生,請?jiān)賳?kerneld (殺掉 kerneld 行程,以 /usr/sbin/kerneld指令來重新開始它)。如果仍有問題,你應(yīng)該寄一份錯(cuò)誤報(bào)告 給[37]linux-kernel@vger.rutgers.edu,但在寄出前請先確保你的核心和 kerneld 都是最新的。 mount 不等待 kerneld 載入檔案系統(tǒng)模組 已經(jīng)收到一定數(shù)目有關(guān) mount (8) 指令不等待 kerneld 載入檔案系統(tǒng)模組的報(bào) 告。 ismod 顯示模組已被載入,如果你立刻再執(zhí)行 mount 的話便會成功。這似 乎是 module-utilities 1.3.69f 版中一個(gè)會影響 Debian 使用者的錯(cuò)誤,使用 一個(gè)新版的 module-utilities 可解決這問題。 kerneld 不能載入 ncpfs 模組 你編譯 ncpfs utilities 時(shí)要用 -DHAVE_KERNELD。請參閱 ncpfs 的 Makefile 。 kerneld 不能載入 smbfs 模組 你在使用一個(gè)舊的 smbmount utilities。請從 [38]ftp://tsx-11.mit.edu/pub/linux/filesystems/smbfs/ 下載最新版本 (0.10 或之後)。 我把所有東西都編譯成模組,現(xiàn)在我的系統(tǒng)不能啟動 kerneld 不能載入根檔案系統(tǒng) (root filesystem) 模組。 你不可把所有東西都編譯成模組∶核心要有足夠的驅(qū)動程式以使它能掛上 (mount) 根檔案系統(tǒng),和執(zhí)行所有要用於啟動 kerneld 的程式。所以你不能把以 下東西模組化∶ * 根檔案系統(tǒng)所在的硬碟的驅(qū)動程式 * 根檔案系統(tǒng)的驅(qū)動程式 * init, kerneld和其他程式的二元格式載入程式 (binary format loader) [事實(shí)上,這并不正確。新的 1.3.x 及所有 2.0.x 核心都容許 LILO 或 LOADLIN 載入初始的 ram-disk,而你可以在啟動的早期在這『磁碟』中載入模組 。做法可在核心原程式碼中的 Documentation/initrd.txt 檔中可找到。] kerneld 不能在啟動時(shí)載入 -- 投訴 libgdbm 較新版的 kerneld 要 GNU dbm 程式庫 libgdbm.so 才能執(zhí)行。大多數(shù)的安裝程 式都會把這檔案放在 /usr/lib,而你多數(shù)是在掛上 /usr 檔案系統(tǒng)前執(zhí)行了 kerneld。這問題的其中一個(gè)癥狀是 kerneld 在啟動時(shí)不能籍 rc-scripts 載入 ,但如果你在啟動系統(tǒng)後自己開始它,它便沒有問題。解決方法,一是把 kerneld 的啟動放在掛上 /usr 後,另一是把 gdbm 程式庫放到你的根檔案系統(tǒng) ,如 /lib。 我重新設(shè)定核心至沒有 xxx 支援後出現(xiàn) "Cannot load module xxx" Slackware(其他也可能)會在安裝時(shí)籍執(zhí)行 modprobe 來建立一個(gè)預(yù)設(shè)的 /etc/rc.d/rc.modules。modprode 得出來的結(jié)果會因原本的核心的設(shè)定而異。你 可能在重新設(shè)定時(shí)排除了一些在 rc.modules 的模組,因此造成錯(cuò)誤。你可把你 在 rc.modules 中不用的模組變?yōu)樽⑨?(comment out),或刪除 rc.modules,讓 kerneld 在需要模組時(shí)自行載入。 我重新建立了核心及模組,但在啟動時(shí)仍出現(xiàn)未分辨的符號 (unresolved symbol) 訊息 你可能在設(shè)定或建立新核心時(shí)排除了一些模組,但已不用的舊模組仍在 /lib/modules 目錄下。最簡單的解決方法是刪除你的 /lib/modules/x.y.z 目錄 及在核心的源程式碼的目錄下做一次 'make modules_install'。這問題只在重新 設(shè)定同一版本的核心時(shí)發(fā)生。如果你在更新核心時(shí)遇到此問題,你有其他問題。 我安裝了 Linux 2.1 後不能載入任何模組 Linux 2.1 是目前的開發(fā)核心 (development kernel)。也就是說,它隨時(shí)可能出 現(xiàn)錯(cuò)誤。其中一樣大幅改變的是模組的處理方法,及核心和模組載入到什麼地方 。Richard Henderson 現(xiàn)正負(fù)責(zé)核心的模組發(fā)展。 總結(jié)一句,如果你想在 2.1 版核心使用模組,你要∶ * 閱讀 Documentation/Changes 檔案及找出更新你的系統(tǒng)所需的模組 * 使用最新的 modutils,可從以下地方得 到[39]ftp://ftp.redhat.com/pub/alphabits/ 或 在[40]ftp://tsx-11.mit.edu/pub/linux/packages/alphabits/ 的映像站 (mirror site) 如果你想在 2.1 版核心使用模組的話,我會建議最少使用 2.1.29 版的核心。 自選撥號 (dial-on-demand) 網(wǎng)絡(luò)又怎樣? kerneld 對有需要時(shí)建立網(wǎng)絡(luò)連線原本有些支援。嘗試在沒有連線時(shí)傳送訊息包 (packet) 會使 kerneld 執(zhí)行 /sbin/request_route 命令稿來建立 PPP 或 SLIP 連線。 這并不是一個(gè)好方法。Linux 網(wǎng)絡(luò)發(fā)展人員 Alan Cox 在 Linux 核心的通信論壇 (Mailing List) 中批評∶ 路徑要求 (request-route) 的東西是過時(shí)、不對及無用的 [...],它已在 2.1.x 的源程式碼中消失。 我誠心建議你從 http://www.dna.lth.se/~erics/diald.html 取 Eric Schenk 的 [41]diald 套裝軟件來安裝,而不要使用路徑要求及 kerneld。 _________________________________________________________________ 版權(quán)訊息 This document is Copyright (c) Henrik Storner, 1996, 1997. Unless otherwise stated, Linux HOWTO documents are copyrighted by their respective authors. Linux HOWTO documents may be reproduced and distributed in whole or in part, in any medium physical or electronic, as long as this copyright notice is retained on all copies. Commercial redistribution is allowed and encouraged; however, the author would like to be notified of any such distributions. All translations, derivative works, or aggregate works incorporating any Linux HOWTO documents must be covered under this copyright notice. That is, you may not produce a derivative work from a HOWTO and impose additional restrictions on its distribution. Exceptions to these rules may be granted under certain conditions; please contact the Linux HOWTO coordinator at the address given below. In short, we wish to promote dissemination of this information through as many channels as possible. However, we do wish to retain copyright on the HOWTO documents, and would like to be notified of any plans to redistribute the HOWTOs. If you have questions, please contact Tim Bynum, the Linux HOWTO coordinator, at linux-howto@sunsite.unc.edu via email.References 1. mailto:storner@osiris.ping.dk 2. mailto:a9504480@graduate.hku.hk 3. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#Introduction 4. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#Why 5. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#Where 6. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#Setup 7. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#Configuration 8. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#Spying 9. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#Goodies 10. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#CommonProblems 11. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/kerneld-mini-HOWTO.html 12. http://www.linux.org.tw/CLDP/mini/Kerneld.html 13. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/kern.html 14. mailto:bj0rn@blox.se 15. ftp://sunsite.unc.edu/pub/Linux/kernel/v2.0 16. ftp://tsx-11.mit.edu/pub/linux/sources/system/v2.0 17. ftp://ftp.funet.fi/pub/OS/Linux/PEOPLE/Linus/v2.0 18. ftp://sunsite.unc.edu/pub/Linux/kernel/modules-2.0.0.tar.gz 19. ftp://tsx-11.mit.edu/pub/linux/sources/sbin/ 20. ftp://ftp.funet.fi/pub/OS/Linux/tools/ 21. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#2-1-problems 22. http://sunsite.unc.edu/mdw/HOWTO/Kernel-HOWTO.html 23. http://www.linux.org.tw/CLDP/Kernel-HOWTO.html 24. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#blockdev 25. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#chardev 26. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#binfmt 27. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#ldisc 28. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#fs 29. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#eth0 30. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#net-pf 31. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#CommonProblems 32. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#miscdevs 33. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#scsidevs 34. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#pre_post 35. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#scsidevs 36. file://localhost/home/ftp/pub/CLDP/howto-translations/mini/Kerneld.html#pre_post 37. mailto:linux-kernel@vger.rutgers.edu 38. ftp://tsx-11.mit.edu/pub/linux/filesystems/smbfs/ 39. ftp://ftp.redhat.com/pub/alphabits/ 40. ftp://tsx-11.mit.edu/pub/linux/packages/alphabits/ 41. http://www.dna.lth.se/~erics/diald.html
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -