当我在命令行上运行 su 并输入 root 密码时,出现如下错误:
命令‘lesspipe’可在以下位置使用
/bin/lesspipe
/usr/bin/lesspipe
无法找到该命令,因为 PATH 环境变量中不包含“/usr/bin:/bin”。
lesspipe:未找到命令
命令“dircolors”在“/usr/bin/dircolors”中可用
无法找到该命令,因为 PATH 环境变量中不包含“/usr/bin”。
我必须手动导出以前默认工作的 PATH 变量。
然后我在 bashrc 中设置 PATH 变量
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
现在,每当我运行 su 时,我都会得到这个:
bash:组:未找到命令。
但是,我可以使用 tab 组命令,并且 PATH 变量也已设置。有谁知道应该在哪里设置 PATH 变量,以便将其导出给所有用户?(之前它运行良好,没有任何错误)
答案1
这个对我有用:
reut@HP-EliteBook-8470p:~$ which lesspipe
/usr/bin/lesspipe
无论如何该如何修复?
简短回答-确保以下行在/etc/environment
:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/your/specific/folder"
注意最后一个文件夹是您要添加的特定文件夹。您提到的文件夹是实际上是PATH
默认的一部分(除非你改变了它)。
如果你想延长你的PATH
:
# extend perserving old path (locations are prioritized by order)
PATH=$PATH:/some/folder
export PATH
您可以添加此代码, ~/.bashrc
以便专门供您使用。
您还可以添加/some/folder
我提到的行,/etc/environment
以使其可供所有人使用,因此您最终会得到:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/some/folder"