7.14. 一時的システムのクリーンアップと保存

7.14.1. クリーンアップ

はじめに、現在インストールされているドキュメントは削除します。 これを最終的なシステムに持ち込みません。 これによって 35 MB を節約します。

rm -rf /usr/share/{info,man,doc}/*

libtool の .la ファイルはスタティックライブラリにリンクするときだけ使います。 これらはダイナミック共有ライブラリを用いるとき、そして特に autotools 以外のビルドシステムを利用するときには不要であり、潜在的には支障を及ぼします。 したがって chroot の中で、不要なファイルは削除します。

find /usr/{lib,libexec} -name \*.la -delete

現在のシステムサイズは、およそ 3 GB になりました。 そして /tools ディレクトリは、もう必要がありません。 ディスク容量は 1 GB 近くを占めています。 ここで削除します。

rm -rf /tools

7.14.2. バックアップ

[注記]

注記

本節の残りの作業は必須ではありません。 ただし 第 8 章 においてパッケージのインストールを始めていくと、一時的ツールは上書きされていきます。 そこで以下に示すように、現時点でのシステムのバックアップをとっておくのが良いでしょう。

以下の手順は chroot 環境の外から実施します。 これはつまり chroot 環境から抜け出してから手順を進めていくということです。 こうする理由は、バックアップアーカイブの保存や読み込みをするなら、ファイルシステムへのアクセスは chroot 環境の外部から行うべきであって、安全のため $LFS ディレクトリ階層の内部において行うべきではないからです。

[重要]

重要

以降の手順はすべて root ユーザーにより実施します。 特にコマンド実行は、よく注意しながら行ってください。 誤ったことをすると、ホストシステムを書き換えてしまうことになります。 環境変数 LFS はデフォルトで lfs ユーザーにおいて設定していましたが、root ユーザーにおいては設定していないかもしれません。 root ユーザーによりコマンド実行する際にも、変数 LFS を設定してください。 このことは 「変数 $LFS の設定」 において説明済です。

バックアップ取得を行っている場合は、chroot 環境からログアウトします。

exit

ここまでに、基本的なプログラムやライブラリはすべて作り終えました。 現在のシステムは良好な状態にあります。 後々の再利用を考慮して、バックアップをとっておくべきかもしれません。 この後に続く章において何か致命的な失敗を起こしたとしたら、すべてを取り消して最初から(今度こそ慎重に)やり直すのが、一番良いことです。 ただしそうしてしまうと、一時的ツールもすべて失ってしまうことになります。 せっかく正常にビルドできたものを、また時間をかけて作り直すというのは避けたいところです。 ですからバックアップをとることにしましょう。

root ユーザーのホームディレクトリにおいて、未使用のディスク容量が最低でも 1 GB はあることを確認してください。 (ソース tarball もバックアップアーカイブに含めることにしています。)

バックアップを取る前に、仮想ファイルシステムをアンマウントします。

umount $LFS/dev{/pts,}
umount $LFS/{sys,proc,run}

バックアップアーカイブを生成するために、以下のコマンドを実行します。

[注記]

注記

バックアップアーカイブは圧縮するので、かなりの高速なシステムを利用していても、比較的長い時間 (10 分以上) を要します。

ここでも root ユーザーに対して、環境変数 LFS を設定していることを確認してください。

cd $LFS
tar -cJpf $HOME/lfs-temp-tools-11.0.tar.xz .

root ユーザーのホームディレクトリにバックアップを生成したくない場合は、$HOME の内容を適切に書き換えてください。

7.14.3. 復元

誤操作をしてしまい、初めからやり直す必要が出てきたとします。 そんなときは上のバックアップを復元し、すばやく回復させることにしましょう。 $LFS 配下にソースも配置することにしているので、バックアップアーカイブ内にはそれらも含まれています。 したがって再度ダウンロードする必要はありません。 $LFS が適切に設定されていることを再度確認した上で、バックアップの復元を行うための以下のコマンドを実行します。

[警告]

警告

以下に示すコマンドは相当に危険です。 root ユーザーになって rm -rf ./* を実行する際に、$LFS ディレクトリに移動していない、あるいは環境変数 LFS を設定していないとしたら、システム全体を破壊することになります。 厳に警告しておきます。

cd $LFS
rm -rf ./*
tar -xpf $HOME/lfs-temp-tools-11.0.tar.xz

環境変数が適切に設定されていることを再度確認の上、ここから続くシステムビルドに進んでいきます。

[重要]

重要

chroot 環境から抜け出して、バックアップの生成を行った場合、あるいはビルド作業を再開する場合は、「仮想カーネルファイルシステムの準備」 において説明している、カーネル仮想ファイルシステムがマウントされていることを確認してください (findmnt | grep $LFS)。 もしマウントされていなかったら、マウントを行ってから、再び chroot 環境に入るようにしてください(「Chroot 環境への移行」 参照)。