LFS Book: Chapter4.Final Preparations
LFS Bookでは、次章からLFS構築の為の開発環境(以下、暫定環境と呼びます)の構築へと作業が移ります。ここでは、その最終準備として、$LFS/toolsディレクトリ、lfsユーザーの作成等を行います。
先ず、既に設定済だとは思いますが、環境変数LFSの設定値が/mnt/lfsであることを確認します。
# echo $LFS
/mnt/lfs
設定されていなければ、以下のコマンドで設定します。
# export LFS=/mnt/lfs
次にLFS Book5章で構築する暫定環境のインストール先であるディレクトリ$LFS/toolsを作成し、ルートディレクトリにシンボリックリンクを作成します。
# mkdir -v $LFS/tools
# ln -sv $LFS/tools /
次はlfsユーザーの作成です。以降の作業の中心となるソースのコンパイル作業はこのユーザーで実施します。
# groupadd lfs
# useradd -s /bin/bash -g lfs -m -k /dev/null lfs
# passwd lfs
現時点で$LFS/tools、$LFS/sourcesディレクトリはrootが所有者となっているので、これをlfsユーザーに変更し、lfsユーザーにsuします。なお、$LFS/sourcesディレクトリについては、その配下にあるサブディレクトリについても再帰的に所有者を変更しますのでオプション(-R)を付与します。
# chown -v lfs $LFS/tools
# chown -vR lfs $LFS/sources
# su - lfs
最終準備の最後として、lfsユーザーの環境設定を行います。
$ cat > ~/.bash_profile << "EOF"
>exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash
>EOF
上記の設定は、ホストOS(ここでは、LFS LiveCD)の余計な環境変数を引き継がないための設定です。次に、~/.bashrcの設定も行っておきます。
$ cat > ~/.bashrc << "EOF"
>set +h
>umask 022
>LFS=/mnt/lfs
>LC_ALL=POSIX
>PATH=/tools/bin:/bin:/usr/bin
>export LFS LC_ALL PATH
>EOF
あとは、~/.bash_profileを読み込んで、環境変数をLFS用に設定しておきます。envコマンドで確認して下記の通りになっていれば、ホストOS側の環境は引き継いでいないと言えるでしょう(プロンプトの表示も場合によっては変わるはずです)。
$ source ~/.bash_profile
lfs:~$ env
TERM=xterm
LC_ALL=POSIX
LFS=/mnt/lfs
PATH=/tools/bin:/bin:/usr/bin
PWD=/home/lfs
PS1=\u:\w\$
SHLVL=1
HOME=/home/lfs
_=/usr/bin/env
コメントする