sudo pm2 提示 找不到命令
一共有 3 台 staging 环境服务器,5 台生产环境服务器,centos7系统。前阵子刚给所有研发配置了自己的账号,今天有小伙伴说,在其中两台服务器上 sudo pm2 list 提示:
sudo:pm2:找不到命令
经过一番查找,原因是这样的:
在运行 sudo 命令时,系统会按照 sudo visudo 中的配置去设置 secure_path (安全路径),以限制用户行为。默认的安全路径如下:
Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin
其他正常的服务器的 node 是安装在 /usr/bin 目录下,命令可以正常运行。这两台服务器是后来配置的,node 的安装路径是在
/usr/local/node/vx.xx/bin/
因此提示找不到命令。
网上常见的解决方法是取消 env_reset,并在 bashrc 中用别名重新设置 sudo 命令使用的 PATH 变量。
但是考虑到安全限制以及这个特定的问题,在 /usr/bin 中创建了 pm2 和 node 这两个软连接,分别指向 node 安装目录的对应命令:
ln -s /usr/local/node/vx.xx/bin/node node
ln -s /usr/local/node/vx.xx/bin/pm2 pm2
sudo pm2 提示 找不到命令的更多相关文章
- 使用sudo执行命令的时候提示找不到命令
事出有因, 源自使用源码编译 nginx , 在 /usr/local/sbin/ 目录下创建了nginx 启动的符号链接 , 执行 sudo nginx 的时候提示找不到命令, 但是使用普通用户身份 ...
- lspci查看硬件信息时提示找不到命令
系统环境:centos 6.3 X64 错误信息:[root@localhost ~]# lspci-bash: lspci: command not found 问题原因:这是因为没有安装pciut ...
- Jenkins_构建任务提示找不到命令的处理方法
问题现象 部署pytest环境后,在linux上能执行命令,但是使用jenkins构建就提示找不到命令. 问题分析 可能是...jenkins中执行时,默认使用的是linux中的jenkins用户权限 ...
- jenkins执行shell命令提示找不到命令解决办法
用jenkins执行shell脚本,执行一条命令: #唤醒休眠手机 adb shell input keyevent 提示: [adb] $ /bin/sh -xe /Users/xxxxx/tool ...
- 远程ssh执行命令时提示找不到命令
最开始的时候碰到这种问题,是在hadoop003上配置了jdk1.8, 在hadoop002上执行ssh hadoop003 java -version提示没有命令,先ssh hadoop003然后执 ...
- Appium命令行启动,提示找不到命令,本地没有appium.cmd文件
安装appium时,直接从github上下载的appium-desktop-windows版本,安装后,从打开桌面端Server,能启动服务,appium-doctor也能正常运行. 但奇怪的地方来了 ...
- ubuntu sudo: pip:找不到命令
编辑文件 /etc/sudoers sudo vi /etc/sudoers 将Defaults env_reset ,改为 Defaults !env_reset 编辑文件-/.bashers ...
- Linux sudo 找不到命令
普通用户执行需要root权限的命令,提示"找不到命令",但是root用户执行该命令不报错,可能是由于该命令未处在sudo搜索的路径. 本文以sudo easy_install 为例 ...
- sudo source /etc/profile 提示找不到source命令
今天修改了/etc/profile,需要用source一下,于是写入命令 sudo source /etc/profile 提示找不到source命令 改成 sudo . /etc/profil ...
随机推荐
- Linux下Redis集群环境的搭建
一.安装redis(使用redis3.0版本) 1.需要gcc环境,如果没有执行命令安装gcc yum install gcc-c++ 2.下载redis3.0的源码包并上传至服务器 3.解压源码包 ...
- Android英文文档翻译系列(1)——AlarmManager
原文:个人翻译,水平有限,欢迎看官指正. public class Ala ...
- Shell主要逻辑源码级分析 (2)——SHELL作业控制
版权声明:本文由李航原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/110 来源:腾云阁 https://www.qclou ...
- C# MVC跳转
MVC方式: 显示提示框,并返回上一页 return Content("<script>alert('暂时没有实践作业!');history.go(-1);</script ...
- OneThink友情链接插件使用!
OneThink友情链接插件使用: 直接安装插件就好,查看数据库会有:onethink_links 这个表: 写 links 标签,调用友情链接: <?php namespace Common\ ...
- Linux登录失败处理功能
本文要实现的功能:如果有人恶意尝试破解你的服务器密码,那么这个功能就能帮你起到一定的作用,当尝试密码错误超过设定的次数后,就会锁定该账户多长时间(自行设定),时间过后即可自行解锁,这样可以增加攻击者 ...
- 【转】jQuery.ajax向后台传递数组问题
$.ajax({ url: "/xxx", type: "GET", data: { "boxIds": boxIds, "box ...
- PHP通过curl模拟POST上传文件,5.5之前和之后的区别
首先先要着重提一下,只要是做和项目有关的开发,首先按把环境中各个服务的版本保持一致,否则出些莫名其妙的错我,让你百爪挠心却不知哪里的问题.这里就要说下curl_setopt($ch, CURLOPT_ ...
- kubernetes实战(十):k8s使用Helm安装harbor
1.基本概念 对于复杂的应用中间件,需要设置镜像运行的需求.环境变量,并且需要定制存储.网络等设置,最后设计和编写Deployment.Configmap.Service及Ingress等相关yaml ...
- matplotlib-折线图、散点图
(一)折线图小结 1.设置图片大小(想要一个高清无码大图) # 图大小 plt.figure(figsize=(20, 8), dpi=80) 2.保存到本地 # 设置图片大小 plt.figure( ...