4.3. 添加 LFS 用户
最后更新于:2022-04-01 22:47:30
# 4.3\. 添加 LFS 用户
以 _root_ 用户登录的时候,犯一个错误就足以损坏甚至摧毁系统,因此,本章我们推荐使用一个无特权的用户来编译和安装软件包。您可以使用您自己的用户名,不过为了建立一个干净的工作环境,建议您新建一个名为 _lfs_ 的组,并在其中添加一个名为 _lfs_ 的用户,我们将在安装过程中使用这个用户。以 _root_ 用户运行下列命令来添加新用户:
```
groupadd lfs
useradd -s /bin/bash -g lfs -m -k /dev/null lfs
```
**命令行选项的含义:**
_`-s /bin/bash`_
指定 `bash` 作为 _lfs_ 用户的默认 shell
_`-g lfs`_
将 _lfs_ 用户添加到 _lfs_ 组
_`-m`_
为 _lfs_ 用户创建 home 目录
_`-k /dev/null`_
这个参数通过修改输入位置为特殊的空设备来防止从框架目录(默认为 `/etc/skel`)拷贝文件
_`lfs`_
这是所创建的组和用户的实际名字
为了可以使用 `lfs` 用户登录(与从 `root` 用户切换到 `lfs` 用户不同,这种切换不需要 `lfs` 用户有一个密码),必须先为 `lfs` 用户设置一个密码:
```
passwd lfs
```
通过把 `lfs` 用户设置为 `$LFS/tools` 目录的所有者来授予 _lfs_ 用户对该目录的完全访问权限:
```
chown -v lfs $LFS/tools
```
如果您依照建议创建了独立的工作目录,请将该目录的所有权赋予 `lfs` 用户:
```
chown -v lfs $LFS/sources
```
接下来,以 `lfs` 用户登录。您可以通过一个虚拟控制台,或者通过显示管理器,或者用下面的切换用户命令:
```
su - lfs
```
"_`-`_" 参数指示 `su` 开启一个登陆Shell(login shell)而不是非登陆Shell(non-login shell),这两种 shell 的不同之处请参考 `bash(1)` 和 `info bash` 。
';