おめでとう!LFS システムのインストールは終了です。長い道のりだったかもしれませんが、それだけの価値があったと思います。できたばかりでピカピカの Linux システムをぜひお楽しみください。
ここまでくれば、LFS システムにあるバイナリ類からすべてのデバッグシンボルを取り除くことができます。 あなたがプログラマでなく、ソフトウェアのデバッグを行なわないなら、デバッグシンボルを取り除くことで、数十メガバイトを回収できるとわかれば幸せになれるでしょう。 この作業をすると、ソフトウェアをデバッグする事がまったくできなくなること以外は不便なことはなく、デバッグの方法を知らないなら、取り除いても問題はありません。
免責事項: 次に述べるコマンドを使う人の 98% は何の問題も経験しません。しかしこのコマンドを実行する前に LFS システムのバックアップを作っておいて下さい。 不測の結果となりお使いのシステムを使えないものにしてしまう(大半はお使いのカーネルモジュールと動的及び共有リンクを破壊することで)ほんのわずかな可能性があります。 これは使われるコマンドの問題というよりも、タイプミスによって引き起こされます。
すでに述べたように、取り除くために使う --strip-debug オプションは通常の状況では全く無害なものです。 ファイルから重要な物を取り除くことはしません。通常のプログラムに対して --strip-all を使うこともまたまったく安全ですが(ライブラリに対しては使ってはいけません。破壊されます)、 しかし同じように安全というわけではなく、それによって得られるスペースも大したことはありません。ほんのわずかなディスクスペースの余裕もない場合、どうするかは自分で決めて下さい。 その他に使える strip のオプションについては strip の man page を参照して下さい。 一般的な考えとしてはライブラリに対しては( --strip-debug以外の) strip を実行しないで、安全を取るということです。
続行して strip を行なうつもりなのであれば、実行中の bash シェルも含めた strip を受けるどんなバイナリも実行していないことを確かめるのに特別の注意が必要です。 それゆえ chroot 環境を抜けて、修正された chroot コマンドを使って再び環境に入る必要があります。
logout chroot $LFS /tools/bin/env -i \ HOME=/root TERM=$TERM PS1='\u:\w\$ ' \ PATH=/bin:/usr/bin:/sbin:/usr/sbin \ /tools/bin/bash --login |
さてそれでは以下のコマンドを実行しましょう。
/tools/bin/find /{,usr/,usr/local/}{bin,sbin,lib} -type f \ -exec /tools/bin/strip --strip-debug '{}' ';' |
非常に多くのファイルが、認識できないファイルフォーマットであると報告されるでしょう。これらの大半はバイナリではなくスクリプトです。これらの警告は無視しても差し支えありません。
/etc/lfs-release ファイルを作るというのは良い考えです。 このファイルがあると(何かあることに質問をする場合、質問を受ける我々にとっても)どのバージョンの LFS をシステムにインストールしたのかがすぐに分ります。 以下のコマンドを実行してこのファイルを作ります。
echo 5.0 > /etc/lfs-release |