root
ユーザーでログインしていると、ちょっとした誤操作がもとで、システムを破壊する重大な事態につながることがあります。
そこでパッケージのビルドにあたっては通常のユーザー権限にて作業することにします。
あなた自身のユーザーを利用するのでも構いませんが、全く新しいユーザー環境として lfs
というユーザーを作成するのが分かりやすいでしょう。 所属するグループも
lfs
という名で作成します。
ビルド作業においてはこのユーザーを利用していきます。 そこで root
ユーザーになって、新たなユーザーを追加する以下のコマンドを実行します。
groupadd lfs useradd -s /bin/bash -g lfs -m -k /dev/null lfs
コマンドラインオプションの意味:
-s
/bin/bash
lfs
ユーザーが利用するデフォルトのシェルを
bash にします。
-g
lfs
lfs
ユーザーのグループを lfs
とします。
-m
lfs
ユーザーのホームディレクトリを生成します。
-k
/dev/null
このパラメータは、ディレクトリ名をヌルデバイス (null device) に指定しています。
こうすることでスケルトンディレクトリ (デフォルトは /etc/skel
) からのファイル群のコピーを無効とします。
lfs
生成するグループおよびユーザーの名称を与えます。
lfs
ユーザーとしてログインするために lfs
に対するパスワードを設定します。 (root
ユーザーでログインしている時に lfs
へのユーザー切り替えを行なう場合には lfs
ユーザーのパスワードは設定しておく必要はありません。)
passwd lfs
$LFS/tools
ディレクトリの所有者を lfs
ユーザーとすることで、このディレクトリへのフルアクセス権を設定します。
chown -v lfs $LFS/tools
前述したような作業ディレクトリを作成している場合は、そのディレクトリに対しても lfs
ユーザーを所有者とします。
chown -v lfs $LFS/sources
lfs
でログインします。
これはディスプレイマネージャを通じて仮想端末を用いることができます。 また以下のコマンドを実行するのでも構いません。
su - lfs
パラメータ 「-
」 は su コマンドの実行において、非ログイン (non-login)
シェルではなく、ログインシェルを起動することを指示します。 ログインシェルとそうでないシェルの違いについては bash(1)
や info
bash を参照してください。