无法使用登录 shell `su` 切换到另一个用户

无法使用登录 shell `su` 切换到另一个用户

我正在从事 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

我并不完全理解其中的“为什么”,但它确实有效......问题解决了。

相关内容