要载入超过一个模组时:“post-install”项目
有时,只把模组载入不足以使设备运作 。例如,如果你把音效卡编译为模组,你也会希望调整至适当音量 。问题题你的设定在下次载入时便会失去 。这里是由 Ben Galliart (bgallia@luc.edu) 提供的秘诀:
最终的解决方法需要安装 setmix-0.1
( ftp://sunsite.unc.edu/pub/Linux/apps/sound/mixers/setmix-0.1.tar.gz )
之後把以下一行加到我的 /etc/conf.modules:
post-install sound /usr/local/bin/setmix -f /etc/volume.conf
这样,当音效的模组载入後,kerneld 会执行 "post-install sound" 项目的指令 。因此该模组会被 "/usr/local/bin/setmix -f /etc/volume.conf 指令设定好 。
这方法对其他模组也有用,例如 lp 模组可籍以下一句用 tunelp 程式设定好:
post-install lp tunelp
只有 1.3.69f 版或之後的 kerneld 才支援这些选项 。
注意: :此 mini-HOWTO 的较旧版本曾提及一个 "pre-remove" 选项,让你可在 kerneld 卸下一个模组时执行一个指令 。但这从未成功,因此并不鼓励使用 。这个选项多数会在未来版本的 kerneld 中消失 。所有有关模组 "设定" 的事情都在改变中,在你看到这文件时,可能已有所不同了 。
--------------------------------------------------------------------------------
侦察 kerneld
如果你什麽方法都已试过,但仍找不出核心在要在 kerneld 做什麽,你可用一个方法找出 kerneld 收到什麽要求,从而知道该加什麽到 /etc/conf.modules 。你需要 kdstat 程式 。
这个好用的程式已包括在 modules-package 中,但预定是不会编译及安装的 。你可用以下方法建立它:
cd /usr/src/modules-2.0.0/kerneld
make kdstat
之後,要使 kerneld 显示它正在做什麽,执行
kdstat debug
kerneld 便会开始在主控台印出其工作的资料 。当你执行所需的指令时,你会见到 kerneld 收到的要求 。这些要求可放到 /etc/conf.modules 中,加上所需模组的别名 (alias),便可使工作完成 。
要停止除错时,执行 "/sbin/kdstat nodebug" 。
--------------------------------------------------------------------------------
kerneld 的特殊用途
我知道你想问如何设定萤幕保护程式 (screensaver) 的模组…
modules-package 的 "kerneld/GOODIES" 目录中有一些和萤幕保护程式及主控台哔声支援有关的核心修补 (kernel patches) 。它们尚未在官方的核心出现 。所以你要自行修正及重新编译核心 。
要安装修补,你要用 "patch" 指令:
cd /usr/src/linux
patch -s -p1
推荐阅读
- Zip Drive Mini-HOWTO
- Soundblaster 16 PnP Mini-Howto 如何在Linux设定16位P
- 新闻 Leafsite mini-HOWTO
- 使用LILO做为Win95+WinNT+Linux多重开机 mini-HOWTO
- LINUX modules 模块安装 MINI-HOWTO
- Linux + NT OS Loader mini-HOWTO
- The RCS MINI-HOWTO
- Linux+FreeBSD mini-HOWTO
- The Linux+DOS+Win95 mini-HOWTO
- Large Disk mini-HOWTO 大硬盘