jk *_*ica 0 bug-reporting environment 22.04
我遇到这个问题是因为我想通过在 /etc/environment 中的 PATH 末尾添加另一个目录来扩展所有用户的 PATH 变量。
打开新的 shell 或新的登录都没有显示扩展的路径。
我发现 /etc/environment 上的保护设置为
-rw-r--r-- 1 root root 588 May 13 12:08 /etc/environment
Run Code Online (Sandbox Code Playgroud)
将 /etc/environment 设置为可执行文件为我解决了这个问题。
文件/etc/environment并不打算作为程序执行,而是读取或获取源,因此它不需要可执行权限,也不应该拥有可执行权限。
对于交互式 shell,该文件通常应由 PAM 系统读取。例如,在 WSL2 中的 Ubuntu 22.04 上,它应该由login和读取sshd。检查文件/etc/pam.d/。如果您没有在文本控制台或通过 SSH 测试登录,请进行测试。
更改所有用户的环境变量的更好方法是将.sh文件添加到/etc/profile.d/. 通过这种方式,您可以将配置与发行版的系统文件分开,并防止升级过程中可能出现的问题。
这个问题中有更多详细信息:Setting PATH variable in /etc/environment vs .profile
| 归档时间: |
|
| 查看次数: |
3911 次 |
| 最近记录: |