当我的主目录是符号链接时 Bash 提示

当我的主目录是符号链接时 Bash 提示

我将我的/host/Users/Kevin文件夹符号链接到/home/Kevin.我还将/etc/passwd文件编辑为/home/Kevin.我注销并重新登录,但是当我打开终端时,它是一个 bash 提示符,如下所示:

kevin@ubuntu:/host/Users/Kevin$

但是当我cdecho $HOME它改变为:

kevin@ubuntu:~$

或者当我echo $HOME打印时/home/Kevin。如何让它默认以这种格式打开?

答案1

你可以这样写:

cd $HOME

在 your .bash_profile、 Maybe 或 your .bashrc(后者针对每个 shell 执行,前者仅针对您的登录 shell 执行)。当然,问题是任何在文件系统中查找当前目录位置的内容都会找到/host/Users/Kevin folder to /home/Kevin而不是/home/Kevin.

除了符号链接之外,您还可以:

mkdir /home/Kevin
mount -o bind /host/Users/Kevin /home/Kevin

这将创建/home/Kevin一个“真正的”文件系统路径(而不是通过符号链接到达的路径)。/etc/fstab如果您愿意,可以将此安装添加到您的中。

答案2

我理解你是否正确,你总是希望它打印如下:

kevin@ubuntu:/host/Users/Kevin$

.bashrc这很简单:编辑主目录中的文件。通常你会发现这样的一行(或者可能不止一行):

PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

替换\w$PWD并保存。

相关内容