はじめに
lfs は linux from scratch の略。よく arch linux と比較される。どんなものかはググってください。20年くらい lfs を使ってきたが、どうしても動かないプログラムがあって arch で環境を作っている。結論としては好きな方をやってみれば良いし、どちらの経験も役に立つと想う
共通している部分
どちらも、インストール、lfs の場合は lfs ブックの最終章まで、は最低限の環境で終わり。wifi にも繋がらないし、もちろん gui なアプリなんてひとつもない。そこから自分で、どんな環境にしていくのかを考えながらいろんなソフトウェアをインストールして試行錯誤していく。
なので、結論としては、自分の専用 os を作りたければどちらでも良い。
lfs ならではのこと
lfs はソフトウェアのビルド方法のみが書いてある。もちろんコピペで従っても良いが、選択自由な依存ソフトウェアをどこまでインストールしておくか、コンパイラの最適化オプションをどうするか、インストールフォルダをどこにするかなどは完全に自由である。
自分勝手にいろいろやってると、ビルド設定や、コンパイルでいろいろつまづくので、その度にビルドに必要なソフトウェアを拾ってきたり、ググってコンパイラオプションを変えたりと、いろいろ経験値を詰むことになる。
カーネルも自分で設定してコンパイルしなくてはならない。カーネルパニックが出るたびに、どこで止まってるのか写真を取っていろいろ試すことになる。そうこうしているうちに、自分のpcのためだけの小さなカーネルをビルドできるようになる。
そのため、lfs, blfs を通して、それなりに動く環境が出来上がる頃には、大抵のエラーは怖く無くなる。これこそ lfs で得られる最高のメリットだと思う。
arch ならではのこと
arch はコンパイル済みのパッケージと、依存性などを一気に解決するパッケージ管理ソフトがある。lfs ブックで 一週間ちまちまビルドしていたものが、一時間くらいで終わる。ただそれは、自分でコンパイルするのが好きか嫌いかだけの違いで本質ではない。
archはパッケージ管理ソフトでインストールしても、ほとんどそれに対して何も設定しない。特にユーザー設定を書き換えてしまう事など一切ない。archwiki や bbs とにらめっこしながら、自力で環境を設定していくことになる。
これこそが arch の真骨頂で、とにかく設定に強くなれる。実際、lfs, blfs は設定にはほぼ何も触れないので、archwiki ばかり読むことになる。lfs ユーザーはパッケージ管理ソフトを使わない arch ユーザーと言えるだろう。
どちらをやるのが良いか
私の回答は、両方やろう、だ。arch はコンパイル済みのバイナリがあるからと言って、自分が欲しい機能が有効化されてるとは限らない。そんな時は、lfs の経験が大いに生きる。逆に arch をやってれば、ソフトウェア、システムの設定方法の調べ方に強くなる。両方できなければ、自分にとっての使える os は作れないのだから、両方やろう。比重はどうでも良い。
Linux の魅力は自分の手で自分のためだけの自分os を作れる事だ。なので Linux を使ってみたいなら、誰かが作った、その誰かにとって素晴らしい linux ではなくて、lfs や arch を始めてみよう。
ただ、初めのうちは全く実用的なものにならないだろうから、いつでも Windows を使える環境にはしておこう。
コメント