カーネルへのパッチ当て:
パッチを当てて,`2.2.x' リリースからアップグレードします. `2.2.x' 向けにリリースされているそれぞれのパッチはバグ修正です. 新機能は開発版カーネルである `2.3.x' に追加されます. パッチを当ててインストールするには,現在のバージョンより新しい パッチファイルを全て入手し,以下のコマンドを実行します:
cd /usr/src
gzip -cd patchXX.gz | patch -p0
現在のソースツリーよりバージョン番号が大きいものを全て,XX に当てはめ ていきます.これは番号順に行います.
カーネルソースのデフォルトのディレクトリは `/usr/src/linux' です. ソースが別の場所にインストールされている場合は,`/usr/src/linux' からシンボリックリンクを張ることをお勧めします.
`util-linux' パッケージのコンパイルのために `MCONFIG' を編集します:
以下に示すのは,筆者が `util-linux' パッケージのコンパイルに使った `MCONFIG' ファイルです.これは筆者の設定(RedHat 5.2 をある程度ベースにしています) にかなり特化しているので注意してください. 確実に守るべき点は,`login', `getty', `passwd' といった重要なシステム ファイルを上書きしないことです.とりあえず,重要な行を以下に示します:
CPU=$(shell uname -m | sed s/I.86/intel/)
LOCALEDIR=/usr/share/locale
HAVE_PAM=no
HAVE_SHADOW=yes
HAVE_PASSWD=yes
REQUIRE_PASSWORD=yes
ONLY_LISTED_SHELLS=yes
HAVE_SYSVINIT=yes
HAVE_SYSVINIT_UTILS=yes
HAVE_GETTY=yes
USE_TTY_GROUP=yes
HAVE_RESET=yes
HAVE_SLN=yes
CC=gcc
お勧め:
8 つのループバックデバイス(`dev/loop0' から `/dev/loop7' まで)のどれを 使ってもよいことに注意してください.また,マウントポイントは目立た ないディレクトリにしましょう.筆者は,ホームディレクトリ以下に パーミッション 700 のディレクトリを作ることをお勧めします.同じことが データを入れるファイルにも言えます. 筆者は `/etc' フォルダ内に `sysfile' や `config.data' といったファイル 名で置いています.これは普通,見逃されます.
筆者は,1 コマンドでファイルシステムのマウントとアンマウントを行うため の,とても簡単な Perl スクリプトを書きました.以下の内容のファイルを作 り,これを実行可能にし(chmod u+x),パスが通った場所に置いてください.
#!/usr/bin/perl -w
#
#minimal utility to setup loopback encryption filesystem
#Copyright 1999 by Ryan T. Rhea
`losetup -e serpent /dev/loop0 /etc/cryptfile`;
`mount /mnt/crypt`;
上記のスクリプトを `loop' と名付けます. これを使うと,コマンド一つ(`loop')とパスワード入力でマウントを行えます.
#!/usr/bin/perl -w
#
#minimal utility to deactivate loopback encryption filesystem
#Copyright 1999 by Ryan T. Rhea
`umount /mount/crypt`;
`losetup -d /dev/loop0`;
2 つ目のスクリプトを `unloop' と名付けます.`unloop' を実行すると,す ぐにファイルシステムを非アクティブにできます.