linux下安装pm2,pm2: command not found

对于一个linux新手来讲,真的是一大坑,看了网上好多例子,但没有一个能说明白的,我发现没有哪一个程序狗能把一个问题说的像我同样完美。不服来打死我,我不还手的。node

1:安装pm2linux

操做描述:docker

       你要在linux上安装pm2有不少方法,但我是用node的工具npm来完成安装的,因此在安装pm2以前须要先安装node。这里若是不会,就百度一个安装node,这个小事我就不作了,若是不服,你能够.加.技术群来骂我:458633781,做为男人要有亮剑精神,决不怂。npm

正题:windows

在你的任意目录输入命令:  npm install pm2 -g centos

[root@VM_165_102_centos /]# npm install pm2 -g

回车后...api

/usr/local/node-v8.9.3-linux-x64/bin/pm2 -> /usr/local/node-v8.9.3-linux-x64/lib/node_modules/pm2/bin/pm2
/usr/local/node-v8.9.3-linux-x64/bin/pm2-dev -> /usr/local/node-v8.9.3-linux-x64/lib/node_modules/pm2/bin/pm2-v
/usr/local/node-v8.9.3-linux-x64/bin/pm2-docker -> /usr/local/node-v8.9.3-linux-x64/lib/node_modules/pm2/bin/p-docker
/usr/local/node-v8.9.3-linux-x64/bin/pm2-runtime -> /usr/local/node-v8.9.3-linux-x64/lib/node_modules/pm2/bin/2-runtime
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 (node_modules/pm2/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","ch":"any"} (current: {"os":"linux","arch":"x64"})

+ pm2@2.10.2
added 221 packages from 206 contributors in 29.63s

有几个warn无论他,由于在代码界,warn不算什么,只要没有error。bash

这样安装完成后你执行命令:   pm2 list  app

[root@VM_165_102_centos /]# pm2 list

回车后:工具

-bash: pm2: command not found

说明,没有配制到全局,虽然安装到全局,不知道为毛,linux下不像windows下能自动创造一个环境变量去实现咱们的全局。因此咱们须要建立一个linux下的软链接。

2:建立软链接

操做描述:在linux上的设置软链接至关因而windows下的配制环境变量一个道理,只是这里用了命令完成的操做。这里咱们就开始为pm2建立软链接,这里首先要明确的是,咱们要知道谁和谁去链接,问题来了?知道是哪一个和哪一个链接吗?好了,答案是:咱们的linux下的全局$PATH和咱们pm2的安装路径。那么咱们如何知道他们的路径分别是哪里呢?

a:找到全局环境PATH路径

输入命令: echo $PATH  

[root@VM_165_102_centos /]# echo $PATH

回车后...

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

说明,也话你的路径和个人不同,但不要紧,你能够选择任何一个以:隔开的路径作为系统环境路径,我一般会选/usr/local/bin

b:找到pm2的安装路径

一般咱们在安装pm2的时间会有一个安装路径显示,以下代码

因而,这就是你的pm2的安装路径为:/usr/local/node-v8.9.3-linux-x64/bin/pm2

也许会有不同,但你能够在这里看到。若是不行,能够用whereis 或find 命令去查找。

好了都找到了,就重要的一步要开始了,睁大你的双眼。

命令为:  ln -s /usr/local/node-v8.9.3-linux-x64/bin/pm2 /usr/local/bin/  

[root@VM_165_102_centos /]# ln -s /usr/local/node-v8.9.3-linux-x64/bin/pm2 /usr/local/bin/

OK,搞定,接下来验证一把...

命令为:[root@VM_165_102_centos /]# pm2 list

[root@VM_165_102_centos /]# pm2 list

回车后...

[root@VM_165_102_centos /]# pm2 list

                        -------------

__/\\\\\\\\\\\\\____/\\\\____________/\\\\____/\\\\\\\\\_____
 _\/\\\/////////\\\_\/\\\\\\________/\\\\\\__/\\\///////\\\___
  _\/\\\_______\/\\\_\/\\\//\\\____/\\\//\\\_\///______\//\\\__
   _\/\\\\\\\\\\\\\/__\/\\\\///\\\/\\\/_\/\\\___________/\\\/___
    _\/\\\/////////____\/\\\__\///\\\/___\/\\\________/\\\//_____
     _\/\\\_____________\/\\\____\///_____\/\\\_____/\\\//________
      _\/\\\_____________\/\\\_____________\/\\\___/\\\/___________
       _\/\\\_____________\/\\\_____________\/\\\__/\\\\\\\\\\\\\\\_
        _\///______________\///______________\///__\///////////////__


                          Community Edition

            Production Process Manager for Node.js applications
                     with a built-in Load Balancer.


                Start and Daemonize any application:
                $ pm2 start app.js

                Load Balance 4 instances of api.js:
                $ pm2 start api.js -i 4

                Monitor in production:
                $ pm2 monitor

                Make pm2 auto-boot at server restart:
                $ pm2 startup

                To go further checkout:
                http://pm2.io/


                        -------------

[PM2] Spawning PM2 daemon with pm2_home=/root/.pm2
[PM2] PM2 Successfully daemonized
┌──────────┬────┬──────┬─────┬────────┬─────────┬────────┬─────┬─────┬──────┬──────────┐
│ App name │ id │ mode │ pid │ status │ restart │ uptime │ cpu │ mem │ user │ watching │
└──────────┴────┴──────┴─────┴────────┴─────────┴────────┴─────┴─────┴──────┴──────────┘
 Use `pm2 show <id|name>` to get more details about an app

说明安装成功,而且能够随处访问pm2

若是你这样没有成功,欢迎留言,一块儿讨论。

THE END!!!

相关文章
相关标签/搜索