sudo:当我进入服务器时找不到命令

时间:2017-06-08 18:35:59

标签: linux ssh server laravel-5.2 sudo

我是服务器处理和Linux的新手。我正在尝试在我的服务器上安装composer,以便我可以在Ultimate Guide: Deploy Laravel 5.3 App on LEMP Stack的教程中提到我的Laravel项目。我 ssh 进入服务器,在我运行sudo mv composer.phar /usr/local/bin/composer后安装作曲家后,我在终端收到一条消息:

-bash: sudo: command not found

我迫切需要一些刻意的帮助

3 个答案:

答案 0 :(得分:4)

可能没有在你的路径中安装Sudo

  1. 检查您是否root在这种情况下,除非您尝试冒充其他用户,否则不需要sudo。只需在没有sudo mv composer.phar /usr/local/bin/composer

  2. 的情况下运行您的命令
  3. 运行which sudoecho $PATH,查看sudo是否为您的路径。如果sudo不在您的路径中,您的路径变量可能会被破坏。您可以尝试通过执行sudo /usr/bin/sudo的公共位置或运行locate sudo | grep bin来尝试查找其位置来对此进行测试。

  4. 如果你知道安装了sudo,或者你的路径看起来坏了,请尝试修复你的路径。检查您的发行版的env文件(ubuntu中的/ etc / environment)以确保其格式正确(脚本命令在此文件中是非法的)

  5. 如果您不是root并且想要使用root prvileges运行命令,则必须安装sudo。但是如果你没有sudo并且你不是root,那么就无法安装它。在这种情况下,我建议使用su

  6. 切换到root用户
  7. 如果您没有root密码并拥有该计算机,则可以使用https://askubuntu.com/questions/24006/how-do-i-reset-a-lost-administrative-password

  8. 等教程重置root密码
  9. 因为您使用的是Ubuntu,所以在设置以apt-get update; apt-get install sudo为根安装sudo登录后。

  10. 使用visudo验证您的sudoers组的名称,并根据需要修改您的sudoers文件。 https://www.digitalocean.com/community/tutorials/how-to-edit-the-sudoers-file-on-ubuntu-and-centos

  11. 如果您有现有的sudoers组,或者您创建了一个,则可以将自己添加到该组中。例如,如果你的sudoers组被称为sudo run usermod -aG sudo myuser。默认情况下,基于Ubuntu的Linux中的sudoers组是sudo。 sudoers组条目如下所示:%sudo ALL=(ALL:ALL) ALL

答案 1 :(得分:2)

根据此post的建议,您可能必须在服务器中安装sudo。

为此,请使用以下命令以root身份登录:su -。然后在您的软件包管理器中安装sudo(如果您使用的是Ubuntu:apt-get install sudo)。

然后将您的用户添加到sudo群组:usermod -aG sudo <username>

最后输入exit以退出root帐户并返回给您的用户。

答案 2 :(得分:1)

首先以root身份登录(su - )尝试安装sudo,然后尝试安装** apt-get或yum sudo **。确保设置了路径变量,以便能够获得二进制文件。

哪个sudo

echo $ PATH