当前位置: 首页 > 面试题库 >

在EC2上:找不到sudo node命令,但是没有sudo的节点可以

洪经义
2023-03-14
问题内容

我刚刚在新的EC2微型实例上安装了nodejs

我通常安装它,./configure-> make-> sudo make install。

问题: 当我在ec2-user下运行“ node”时,它运行正常。当我运行“ sudo节点”时,它失败。

我发现该节点位于:

[ec2-user@XXXX ~]$ whereis node
node: /usr/local/bin/node /usr/local/lib/node

而当前路径是

[ec2-user@XXXX ~]$ echo $PATH
/usr/local/bin:/bin:/usr/bin:/opt/aws/bin:/home/ec2-user/bin

但是,sudo路径是

[root@ip-10-112-222-32 ~]# echo $PATH
/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/aws/bin:/root/bin

然后我尝试编辑根PATH以包含到节点的路径,因此当我以root身份登录时,“ node”会运行-但是当我以ec2-user身份登录并运行“ sudo
node”时,它仍然无法使用。

我需要安装npmproperfly。关于如何在运行“ sudo节点”时包括节点路径的任何想法?


问题答案:

是的,这有点烦人,但是您可以通过一些链接来修复它:

sudo ln -s /usr/local/bin/node /usr/bin/node
sudo ln -s /usr/local/lib/node /usr/lib/node
sudo ln -s /usr/local/bin/npm /usr/bin/npm
sudo ln -s /usr/local/bin/node-waf /usr/bin/node-waf

可能还有更多,但这是到目前为止我所遇到的全部。缺少节点Waf将导致某些npm安装失败,并显示一条相当隐秘的错误消息



 类似资料:
  • 问题内容: 构建外壳为: 结果是: 为什么找不到node命令? 我正在使用docker官方jenkins映像运行它。 编辑:詹金斯:2.46.1-高山 问题答案: 根据问题JENKINS-34815(NodeJS插件无法安装全局NPM软件包)中的建议,检查您 看到这个评论: 使用当前的docker jenkins:2.32.1-alpine和插件nodejs:1.0时,在使用节点7.4时会再次发生

  • 问题内容: 我的主文件夹中有一个脚本。 当我导航到该文件夹​​并输入时,我得到 。 当我使用时,我得到 。 为什么会发生这种情况,我该如何解决? 问题答案: 没有权限 为了运行脚本,文件必须 设置可执行权限 。 为了完全理解Linux 文件权限,您可以学习命令的文档。chmod是 change mode 的缩写,是用于更改文件的权限设置的命令。 要阅读本地系统的chmod文档,请运行或从命令行运行

  • 我运行以下命令来安装Composer: 之后,当我运行时,我看到它正在工作。但是,每当运行时,总是收到 未找到命令。

  • 问题内容: 我很难使npm命令正常工作,但是不幸的是,我对Unix的了解不足以独自解决这个问题。我所做的只是,并且出现以下错误: 当我型我得到 进一步研究此问题,我发现此堆栈溢出答案: 在zsh中安装npm后找不到命令 按照其建议,我尝试将其添加到我的.zshrc文件中。键入时仍然出现相同的错误 我可以确认这是在收益率中 我还可以确认节点已安装率 有任何想法吗?我很困惑 问题答案: 不是答案,而是

  • 问题内容: 我正在使用gradlew进行Java项目。我使用Ubuntu Linux作为操作系统。当我运行“ gradle”时,它将运行并提供信息。但是,当我运行“ gradlew”时,其输出为“未找到命令’gradlew’,您的意思是:软件包’gradle’(universe)gradlew中的命令’gradle’:未找到命令” 我做了研究,有了jdk,并且做了sudo apt-get inst

  • 我安装了gulp,但我不能使用“gulp”命令,因为它会给我“-bash:gulp:command not found”错误。当我使用“NPX GULP”,然后它的工作,但我不知道为什么。