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!!!

相關文章
相關標籤/搜索