lubuntuを使ってLFS7.1に挑戦する(その4)

その3からの続き

5.34. Stripping

ここは省略しても言いようだが、ハードディスク節約のためにはやったほうがいいらしい。

デバッグシンボルを取り除く

ドキュメントを削除

5.35. Changing Ownership
ここからはrootでやる。$LFSに値が設定されているか確認すること。

ここでバックアップを取っておくといいらしい。一応VMWareのハードディスクごとコピーしておいた。バックアップを取るならtarしたソースやmakeしたオブジェクトは要らないと思うが、それは作業ディレクトリにあるという想定なのだろうか、いずれにしてもvmwareなので小さくするのは面倒なのでスルー。

Part III. Building the LFS System
ここから本格的なLFSシステムの構築が始まる。chrootでミニリナックスに入り、パッケージのインストールを行う。

6.2. Preparing Virtual Kernel File Systems
ある種のファイルはカーネル自身が通信するために使う。これらは実際のファイルではなくメモリ上に存在する。それらを作成する。

6.2.1. Creating Initial Device Nodes
カーネルがブートするときいくつかのデバイスノードを必要とする。consoleやnullデバイス。udevdが始まる前にこれらは存在しないとならない。

c はキャラクターデバイスをあらわす。キャラクターデバイスとはシークできないもの。キーボードや乱数がある。その後の番号はそのデバイスの種類を決めたものでカーネル作成者が決めている。詳しくは/usr/src/linux/Documentation/devices.txtにある。

–bindを使ってホストの/devを再マウントする。

6.4. Entering the Chroot Environment

これで$LFSがルートディレクトリになった。これからは$LFSは必要ない。
I have no name!と表示されるのは/etc/passwdがないからだそうだ。

ここから先はすべてここでの環境になる。ホストをリブートしたりしたときはまた、/devなどを作り直さないとならない。

標準的なディレクトリをつくる。

シンボリックリンクなどを作成

パスワードファイルとグループファイルを作成

udevなどのためにいろいろなグループがあるらしい。

“I have no name!”を変える。Glibcはインストールされ、/etc/passwd, /etc/groupはできたのでできるはず。

login, agetty, initがログをとるようにファイルを作る。ファイルがないとログをとらないらしい。

/var/run/utmpは現在ログインしているユーザの記録。/var/log/wtmpはすべてのログインログアウトの記録。/var/log/lastlogはユーザごとの最後のログインの記録。/var/log/btmpはbad loginの記録。

6.7. Linux-3.2.6 API Headers

なんか/bin/shがないとか言われたのでシンボリックリンクをつくって再トライ。

6.8. Man-pages-3.35

6.9. Glibc-2.14.1
現在のコンパイラのスペックは/toolsを指していて、これだとtestスクリプトが失敗する。コンパイラのスペックはGlibcができるまでは直せないので、このテストスクリプトをいじる。

コンフィグする。こんどは/usrになる。

ここでのGlibのテストは重要。
いつくかのテストが失敗しないようにコピーをとってやる。

とくにエラーはないみたいなので先に進む。

NISとRPC関連のヘッダをインストール

最小限のロカールをインストール。

EUCJPになってるので全部のロカールをインストール

Glibcのために/etc/nsswitch.confをつくる。

タイムゾーン設定

–remove-destinationをつけるのはシンボリックリンクだった場合に削除するため。
このファイルはシングルユーザモードのためにコピーしておくらしい

6.9.3. Configuring the Dynamic Loader

ダイナミックローダがライブラリを探すディレクトリの設定

もっと探せるようにする。

6.10. Re-adjusting the Toolchain

Cライブラリがインストールされたので、ツールチェインの調整をする。これにより新しくコンパイルされるプログラムは、新しいライブラリを見るようになる。

前のをとっておく。

gccのスペックファイルを編集して、あたらしいダイナミックリンカを指すようにする。

本当にできているか確認。

このように表示されるはず。

このように表示されるはず。

このように表示されるはず。

このように表示されるはず。

このように表示されるはず。

このように表示されるはず。


続く

Leave a Reply

Your email address will not be published. Required fields are marked *

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)