[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-devel:00541] Debian FAQ Ch.10



笹井@サーフライン西湘です。Debian FAQ 10章の翻訳の改訂版です。
校正よろしくお願いします。

--

10.  Debian とカーネル


10.1.  カスタムカーネルを構築するために、Debian にはどんなツールがある
のですか?

カスタムカーネルを構築したい (あるいは、しなければならない) ユーザは 
kernel-package_VVV_all.deb パッケージ (これは Debian FTP アーカイブの 
misc セクションにあります) をダウンロードして下さい。このパッケージに
はカーネルパッケージを構築するためのスクリプトが含まれています。カーネ
ルのソースのトップディレクトリで、コマンド make-kpkg kernel_image を実
行するだけで、Debian の kernel-image パッケージを作成してくれます。詳
しい説明はコマンド make-kpkg --help を実行するか、make-kpkg(8) のマニュ
アルページを見て下さい。また、これとは別に、お気に入りの Linux アーカ
イブから最新のカーネル (あるいは、お好みのカーネル) のソースコードをダ
ウンロードしておいて下さい。カスタムカーネルを構築するには、gcc,
libc5-dev, bin86, binutils, gawk, make, gzip, grep といったパッケージ
もインストールしておく必要があります。

コマンド dpkg --install kernel-package_VVV_all.deb を実行するとディレ
クトリ /usr/src/linux-VVV/ が作成されます。また、カーネルのソースを含
むディレクトリ /usr/src/linux-VVV/ を指すリンク /usr/src/linux も作成
されます。このパッケージを利用する際の詳しい手順はファイル 
/usr/doc/kernel-package/README を見てください。簡単に述べると次のよう
になります。

o カーネルのソースを展開して、新しく作成されたディレクトリに移動して下
さい。

o 以下のコマンドのどれかを使ってカーネルの設定を修正して下さい。
   -- make config (tty ベース)
   -- make menuconfig (ncurses ベースのメニュー形式インタフェース)
      この方法を使うには、ncurses3.0-dev パッケージがインストール
      されている必要があります。
   -- make xconfig (X11 インタフェース)
      この方法を使うには、適切な X パッケージ群がインストールされてい
      る必要があります。

どのやり方でも、カーネルのソースのトップディレクトリに新しい .config 
が作成されます。

o 次のコマンドを実行して下さい。
     make-kpkg -r Custom.N kernel_image
ここで N はユーザが割り当てるリビジョンナンバーです。このようにして作っ
た新しい Debian アーカイブはリビジョン Custom.1 になります。例えば、
Linux kernel 2.0.27 に対して、kernel-image-2.0.27-Custom.1.deb が作成
されます。

o 作成したパッケージをインストールして下さい。
   -- カーネルをインストールするために 
      dpkg --install /usr/src/kernel-image_VVV-Custom.N.deb 
      を実行して下さい。インストールスクリプトは以下のことをします。
       *  もし LILO がインストールされていれば、ブートローダ LILO を走
          らせる。
       *  /boot/vmlinuz_VVV-Custom.N にカスタムカーネルをインストール
          して、最も新しいバージョンのカーネルに適切なシンボリックリン
          クを作成する。
       *  ユーザにブートフロッピーを作るかどうかを尋ねる。
          このブートフロッピーは raw カーネルだけを含みます。詳しくは
          カスタムブートフロッピーを作るための項目 (10.2) を見て下さい。

   -- 2次的なブートローダ (例えば、loadlin) を使うには、このイメージ
      を別の場所 (例えば、MS-DOS のパーティション) にコピーして下さい。


10.2.  カスタムブートフロッピーはどうすれば作ることができるのですか?

この作業には、通常 Debian FTP アーカイブの binary/devel セクションにあ
る Debian パッケージ boot-floppies_VVV-RRR.deb がとても役に立ちます。
このパッケージの中のシェルスクリプトは SYSLINUX 形式でブートフロッピー
を作成します。これはマスターブートレコードが変更された MS-DOS 形式のフ
ロッピーであり、直接 Linux (あるいは、フロッピー中のファイル 
syslinux.cfg で設定した別の OS) をブートします。また、このパッケージに
は、非常用のルートディスクを作成したり、ベースディスクを作成したりする
スクリプトも含まれています。

boot-floppies パッケージをインストールすると、/usr/src/boot-floppies/ 
にファイルが作成されます。ここには bootdisk.sh, rootdisk.sh,
basedisk.sh という3つのスクリプトがあります。これらのスクリプトを使う
際には、そのスクリプトの中身を読んで、適切にカスタマイズして下さい。特
に、bootdisk.sh スクリプトを実行する時には、あなた自身が選んだカーネル
を含むように設定しなければいけません。またこの時、カーネルは
CONFIG_RAMDISK=y, CONFIG_INITRD=y のオプションでコンパイルされている必
要があります。さもないと、ルートディスクを RAMDISK にロードできないの
で注意して下さい。

kernel-image-2.0.27 パッケージを A: ドライブの 1.44MByte のディスクに
書き込むには、次のコマンドを実行して下さい。

   ./bootdisk.sh /usr/src/kernel-image-2.0.27_1.00.deb /dev/fd0 1440

./rootdisk.sh を使ってカスタムルートディスクを構築する時には、お気に入
りのエディターやその他のツールが入っているか確認して下さい。

ブートディスクとルートディスクは非常用のフロッピーとして役立ちます。


10.3.  Debianにはモジュールを扱うための何か特別な決まりがあるのですか?

Debian の modconf パッケージには、モジュールの設定をカスタマイズするシェ
ルスクリプト (/usr/sbin/modconf) が入っています。このスクリプトはメニュー
ベースのインタフェースを持ち、ユーザはシステムのローダブルデバイスドラ
イバの詳細な設定を行うことができます。これを使うと、ファイル 
/etc/conf.modules (エイリアスや様々なモジュール間の結合に必要な引数を
記入) と /etc/modules (ブート時にロードするモジュールを記入) をカスタ
マイズすることができます。

カスタムカーネルの構築時には、(新しい) Configure.help ファイルがサポー
トしてくれますが、今ではmodconf パッケージにも、個々のモジュールに関す
る適切な引数の詳しい情報を教えてくれるヘルプファイル
(/usr/lib/modules_help/ の中にあります) が付属しています。


10.4.  古いカーネルを安全に消去することはできますか? もしできるならど
うすればいいのですか?

はい、できます。kernel-image-NNN.prerm スクリプトは、現在動いているカー
ネルが、消去しようとしているカーネルと同じかどうかを調べてくれます。次
のコマンドを使えば、不要なカーネルイメージパッケージを消去することがで
きます。

    dpkg --purge --force-remove-essential kernel-image-NNN

-- ここまで
---
笹井 崇司 (Takashi Sasai)
	Email:	sasai@xxxxxxxxxxxxxxxxxx