4.3. LFS ユーザーの追加

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 を参照してください。