[ 前のページ ] [ 目次 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ A ] [ 次のページ ]
Debian には独自の kernel と関連モジュールの再構築方法があります。 Debian と kernel, 第 2.7 節 をご覧ください。
最新の Linux kernel をコンパイルする場合、Debian unstable から、
gcc
、binituls
と module-init-tools
をインストールして使用すると役に立つかもしれません。
公式の情報を得るには、/usr/share/doc/kernel-package/README.gz
、特に最後尾を
ご覧ください。
常に変更が発生しているので、kernel のコンパイルは最も称賛される開発者 でさえも混乱を招きかねない難しい事項です。
--initrd は Debian のみ cramfs パッチを必要とする。
間違っている。CRAMFS 以外のファイルシステムを使うならば
/etc/mkinitrd/mkinitrd.conf
に MKIMAGE を必ず設定する必要がある。
注意して、常に Manoj と Kent による
/usr/share/doc/kernel-package/README.gz
や http://kernel-handbook.alioth.debian.org/
に頼ってください。 最新版の kernel をコンパイルしようとしている場合、 最新の
unstable 版の kernel-package
パッケージを
確実にインストールしてください。
1 台のマシンのためにしか kernel をコンパイルする必要がないなら、
initrd は必要ありません。kernel-image パッケージにより供給される
kernel とほとんど同じにしたいため、私は initrd を用います。 もし
initrd を使用するなら、initrd(8)
と
mkinitrd.conf(5)
をご覧ください。
オリジナルソースを以下から取得してください。
Linux: http://www.kernel.org/
pcmcia-cs: http://pcmcia-cs.sourceforge.net/
又は Debian での 同等の kernel source を用いて次の手順を実行してください。
# cd /usr/src # tar xfvz linux-whatever.tar.gz # rm -rf linux # ln -s linux-whatever linux # tar xfvz pcmcia-cs-whatever.tar.gz # ln -s pcmcia-cs-whatever pcmcia # cd linux # make menuconfig ... 設定を行う # make dep # make bzImage ... lilo / grub の設定 ... ... /usr/src/linux/arch/i386/boot/bzImage を boot に移動... ... /sbin/lilo 又は grub のための好みの方法を実行 # make modules; make modules_install # cd ../pcmcia # make config # make all # make install ... 必要なモジュール名を /etc/modules に追加 # shutdown -r now ... 新しい kernel を boot
ほとんどの "normal" なプログラムには kernel
ヘッダは必要なく、実際直接
使用した場合動かなくなるかもしれません。その代わり、glibc
を構築するのに使った ヘッダに対してコンパイルすべきです。それらは
Debian システムの /usr/include/linux
と
/usr/include/asm
にあるバージョンのものです。
それゆえ、いくつかの古びたドキュメントが推奨しているように
/usr/include/linux
および /usr/include/asm
から
/usr/src/linux
にあるディレクトリに symlink を張らないでください。
カーネル特有のアプリケーションプログラムに特定の kernel ヘッダが
必要 ならば、include path が
dir-of-particular-kernel-headers/include/linux
と
dir-of-particular-kernel-headers/include/asm
を
指すように makefile を変更してください。
Linux kernel の挙動は、proc ファイルシステムを用いるとオンザフライで変更できます。
/proc
ファイルシステムを通して kernel パラメータを変更すること
に関する基本的な情報は Linux source の Documentation/sysctl/*
をご覧ください。
/etc/init.d/networking
と いくつかのウェブサイトにアクセスした時の奇妙な挙動,
第 3.8.5 節 には、 kernel パラメータの操作方法の例がいくつかあります。
通常、/etc/rcS.d/S30procps.sh
から起動される
/etc/init.d/procps.sh
を用いて /proc
ファイルシステム経由でブート時に kernel を設定する手順については、
sysctl.conf(5)
をご覧ください。
Linux kernel が "Too many open files" とエラーを出力することがあります。 これは file-max の標準値が小さい (8096) ためです。 この問題を解決するには、root で次のコマンドを実行してください。
# echo "65536" > /proc/sys/fs/file-max # 2.2 と 2.4 kernel の両方で有効 # echo "131072" > /proc/sys/fs/inode-max # 2.2 kernel のみ
変更をずっと有効にしたい場合は、/etc/sysctl.conf
に次の行を追加してください。
file-max=65536 # 2.2 と 2.4 kernel の両方で有効 inode-max=131072 # 2.2 kernel のみ
proc ファイルシステムを通じて disk flush 間隔を変更できます。 次のコマンドにより、間隔をデフォルトの 5 秒 から 1 秒 に変更されます。
# echo "40 0 0 0 100 30000 60 0 0" > /proc/sys/vm/bdflush
本変更はファイル I/O 性能にほんの少し悪影響を与えるかもしれません。しかし、 本変更により、デフォルトの 5 秒より短い最後の 1 秒の間を除き、ファイル内容を 安全に保たれます。
古い少メモリ容量マシンの場合、proc ファイルシステムを通じて メモリの over-commit を有効にするとまだ役に立つかもしれません。
# echo 1 > /proc/sys/vm/overcommit_memory
udev は /dev/
のダイナミックな置き換えです。
デバイス名は非常に短い物にもできます。 2.4 カーネルで使われた devfs
は今や過去の物となりました。
udev
パッケージを kernel-image-2.6.NN
で提供される新たな Debian 2.6 カーネルとともにインストールすると、
本機能が実現します。
[ 前のページ ] [ 目次 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ A ] [ 次のページ ]
Debian リファレンス
CVS, 2007年 1月 18日 木曜日 11時54分01秒 UTC時間osamu#at#debian.org
tsuno#at#ngy.1st.ne.jp