【问题标题】:changed sudo path, command continues not being found更改了 sudo 路径,仍然找不到命令
【发布时间】:2010-04-26 21:30:23
【问题描述】:

我加了

export PATH="/home/deltrem/Pedro - Arquivos/play/ps1/linux/pSX:$PATH"

到

/root/.bashrc

,但是

sudo pSX

回声

command not found.

【问题讨论】:

    标签: linux ubuntu-9.10 sudo


    【解决方案1】:

    您是否以 root 身份登录?如果是这样,那么您就不需要sudo。

    如果不是,那么/root/.bashrc 的内容将无关紧要,因为sudo 命令从它运行的环境中获取它的路径。换句话说,它复制了您的用户级路径。相反,请编辑您用户的 .bashrc 中的路径。

    【讨论】:

    • 我以 deltrem 身份登录,但需要临时 root 访问权限。
    • 这就是sudo 命令的作用。但是,它不会运行 /root/.bashrc 脚本或 root 主目录中的任何其他脚本。基本上,在运行sudo 之前,路径需要包含 pSX 目录。最简单的方法是编辑用户的.bashrc 文件,然后运行. ~/.bashrc(或注销并重新登录)。
    • 您是否尝试过为 sudo 提供 pSX 可执行文件的完整路径?
    • pSX(文​​件)的完整路径有效。 . ~/.bashrc,然后sudo pSX 不起作用,sudo . ~/.bashrc,然后sudo pSX 不起作用。
    • 您是否将帖子中的export PATH 行添加到用户的.bashrc 中?
    【解决方案2】:

    pSX 是一个目录、一个文件还是两者兼有(一个名为 pSX 的目录包含一个名为 pSX 的文件)?如果是目录,则需要输入实际的命令名称。如果是文件(但不是目录),则需要从 PATH 变量中删除 /pSX。

    pSX 是否设置了可执行位?操作系统可能不知道pSX 是一个命令。

    【讨论】:

    • 一个目录 (pSX) 包含一个文件(pSX 也是)并且 pSX(该文件)设置了可执行位
    【解决方案3】:

    在过去一个小时把我的头撞在墙上之后,我终于想出了如何做到这一点。它与 bashrc、配置文件或环境无关。而是打开 /etc/sudoers 并更改 secure_path。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-06
      • 1970-01-01
      • 1970-01-01
      • 2014-01-22
      • 2018-09-24
      • 2012-01-22
      相关资源
      最近更新 更多