我正在从事 Linux From Scratch 项目,遇到了一个我无法弄清楚的非常基本的问题。
我被告知要使用su - lfs
切换到我的“lfs”用户。如果我的理解正确的话,中间的破折号意味着我应该切换用户和运行该用户的登录项,即.bashrc
和.bash_profile
。
但是当我在 Manjaro 上尝试时,我得到了这个:
$ su - lfs
Password:
Job 1, 'su - lfs' has stopped
$
我检查了我读过的所有显而易见的东西:lfs
有一个密码,一个shell(在/etc/passwd
)和一个主目录。
我可以做更简单的操作su lfs
并更改用户,但它不会处理那些登录文件,最终我会得到一些不正确的环境变量。
提前致谢。
[更新]
.bashrc
...
set +h
umask 022
LFS=/mnt/lfs
LC_ALL=POSIX
LFS_TGT=$(uname -m)-lfs-linux-gnu
PATH=/bin:/usr/bin
export LFS LC_ALL LFS_TGT PATH
export MAKEFLAGS='-j 6'
export EDITOR='nano'
... 并且.bash_profile
...
exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash
/etc/passwd/
... 以及来自... 的相关条目
lfs:x:1001:1001:lfs:/home/lfs:/bin/bash
答案1
我不知道为什么我没有早点尝试一下,但当我得到Job 1, 'su - lfs' has stopped
我所需要做的就是用 将它带到前台fg
。
我并不完全理解其中的“为什么”,但它确实有效......问题解决了。