root 在 sudo su user 之后撤销之前的更改

root undoing previous changes after sudo su user

我很难接受 root

每当我 运行 sudo su 然后 nano ~/.zshrc,编辑我的文件以添加 PATH 后跟 source ~/.zshrc,它工作得很好。

直到我 运行 sudo su myuser 回到我的默认用户。

当我这样做时,我之前在 root 上的所有设置都被撤消了,如果我返回并检查 ~/.zshrc 它没有配置路径并且没有按预期工作。

有谁知道为什么会这样?以及如何修复它?

您遇到的问题是 ~ 解析为当前用户的主目录。因此,当以 root 身份登录时,~ 指向 root 的主目录(通常在 /root),而对于 myuser, ~ 指向 myuser 的主目录(通常是 /home/myuser),所以你实际上是在编辑不同的文件。