次のページ 前のページ 目次へ

3. 手順

3.1 カーネルソースの削除

カーネルソースは 20MB 以上もありますから、削除したくなるところでしょう。 そうとなったら、ご自分のマシンに合った新しいカーネルをコンパイルしてし まい、しかるのちにソースを処分することです。ただし、作業は慎重にどうぞ。

マシンの設定がきちんとできているかどうか心もとないのなら、カーネルソースの 削除は決してお勧めできません。また、カーネルのインクルードファイルは C のプ ログラムをコンパイルする際に欠かせません。事前にじっくり考えましょう!

削除することにした場合も、以後そのマシンでアプリケーションをコンパイルする 可能性がゼロでなければ、include/linux 以下のディレクトリツリーはぜひ残して おきましょう。

3.2 アプリケーションの整理

さて、どうしても必要なアプリケーションを選別してください。考えてみれば余計な ものもあるはずです。たとえば、本当に Emacs なしではやっていけませんか? 代わ りに jed を使う手もありますよ。

どれを残すべきか判断するのはあなた自身です。以下は一般論になります。

3.3 バイナリのシェイプアップ

ここではバイナリファイルのサイズを縮小していきましょう。/usr/bin に移動してから、

# strip *

とコマンドを入力すれば、バイナリに埋めこまれているシンボルが除去されます。 /usr/X11R6/bin/ など、実行ファイルが置いてあるディレクトリで同じ作業をく りかえしてください( TeX と gcc のバイナリも抜かりなく探しだしましょう)。 ただし、ご自分のシステムが大事なら、絶対に /sbin や /bin 、/usr/sbin/ で 実行してはいけませんよ!

3.4 upx による圧縮

まずは upx をインストールして、付属の文書に目を通します。それから /usr/bin に 移動し、upx * を実行します。これで実行ファイルはすべて、それも( tcx とは違って) suid されたものまで圧縮できるはずです。この作業も前述の各ディレクトリでくりか えしてください。

新たにパッケージをインストールするときは、各種実行ファイルの圧縮をお忘れなく!

3.5 かたっぱしから gzip

圧縮してしまえるファイルはまだまだあります。まずは /usr/doc/ に取りかかりましょう。 このディレクトリに移動したら、次のコマンドを入力してください。

# find . -type f -exec gzip -9 {} \; 2> /dev/null

新たにパッケージをインストールするときは、各種文書ファイルの圧縮をお忘れなく!

この作業は TeX の関連文書があるディレクトリ(筆者の場合は /usr/lib/texmf/texmf/doc/) でもくりかえします。また、本当にかまわないと言い切れる方は、こうしたディレクトリを すっかり削除してください。

さて、つづいては zlibc のインストールとコンパイルです。お使いのシステムが筆者の環境 と似通っているなら、コンパイラは(static な)libc がないという趣旨のメッセージを出し、 途中で止まってしまうでしょう。それでも心配はいりません。uncompress.o という 名のファイルがありますね? 必要なのはこいつです。これを /usr/local/lib/ に移動し てやり、/etc/profile に次の一行を追記してください。

export LD_ELF_PRELOAD=/usr/local/lib/uncompress.o

さあ、これで文書ファイルばかりか、データファイルも gzip で圧縮できるようになりました。 アプリケーションが利用するデータファイルは、今や圧縮されていても利用できるのです。 この裏技は、理屈の上ではたいていのアプリケーションに通用するはずですが、実際の成果は まちまちでしょう。筆者の場合は今ひとつでした。


次のページ 前のページ 目次へ