概述

今天我在我的 AWS EC2 服务器上安装了 nodejs。没想到竟然这么麻烦,比在 windows 和 mac 上麻烦多了。所以我把心得记录下来,供以后开发时参考,相信对其他人也有用。

参考资料:

LINUX 安装NODEJS环境以及路径配置

选择包管理器

对于不同的服务器,需要选择不同的包管理器。比如 macOS 就建议用 homebrew。

我的服务器是 CentOS 系统,所以使用 yum。

在安装了 yum 之后,最好也安装一下 wget:

yum install wget

获取 nodejs 包

我们尝试用 yum install nodejs,但是提示包不存在。所以我们使用 wget 在线下载 nodejs 包。

我们打开nodejs 官方下载页,找到 Linux Binaries (x64) 这行,然后复制下载地址 https://nodejs.org/dist/v10.16.3/node-v10.16.3-linux-x64.tar.xz

注意:千万不要点 source code 那一行,就是 .tar.gz 结尾的那个。

然后我们使用 wget 下载:

wget https://nodejs.org/dist/v10.16.3/node-v10.16.3-linux-x64.tar.xz

安装并改名

我们下载下来的包一般会放在当前的文件夹,我当前的文件夹是 yangzhou 用户的主文件夹,路径是 /home/yangzhou,也可以用 pwd 查看当前目录的路径。

我们希望把 nodejs 放到** /usr/local **路径下面,所以我们执行下面操作:

cp node-v10.16.3-linux-x64.tar.xz /usr/local   ## 复制
xz -d node-v10.16.3-linux-x64.tar.xz ## 将tar.xz解压成tar文件
tar -xvf node-v10.16.3-linux-x64.tar ## 将tar文件解压成文件夹
mv node-v10.16.3-linux-x64 node ## 改名为 node rm -rf node-v10.16.3-linux-x64.tar ## 删除不必要的包
cd /home/yangzhou ## 切换回以前的文件夹
rm -rf node-v10.16.3-linux-x64.tar.xz ## 删除不必要的包
cd /usr/local ## 切换回来

检查 node 是否可以启动

我们执行下面的命令:

/usr/local/node/bin/node -v

如果能够正常输出版本号,则证明 node 可以正常启动。

配置软连接

我们需要 node 可以在全局启动,所以配置如下软连接:

ln -s /usr/local/node/bin/node /usr/bin/node  ## 将node源文件映射到usr/bin下的node文件
ln -s /usr/local/node/bin/npm /usr/bin/npm

然后我们检查是否可以全局启动:

node -v
npm -v

如果都能输出版本号则证明可以全局启动。

配置 node 的全局安装文件夹和缓存

我们给 node 设置全局安装文件夹和缓存

cd /usr/local/node
mkdir node_global
mkdir node_cache
npm config set prefix "node_global"
npm config set cache "node_cache"

以后全局安装的包都在 node_global 文件夹里面了。

安装 cnpm

有时我们需要使用** cnpm**,所以我们全局安装 cnpm:

npm install cnpm -g --registry=https://registry.npm.taobao.org

我们之前说过,全局安装的包都在 node_global 文件夹里,所以 cnpm 也在里面。我们查到它的路径,然后设置软连接,让 cnpm 全局也可以使用:

ln -s /usr/local/node/node_global/bin/cnpm /usr/bin/cnpm

这样就完成啦~~

CentOS 系统安装 nodejs 及相关配置的更多相关文章

  1. Linux centos系统安装后的基本配置,Linux命令

    一.centos系统安装后的基本配置 .常用软件安装 yum install -y bash-completion vim lrzsz wget expect net-tools nc nmap tr ...

  2. 笔记:修改centos的IP地址相关配置

    最近碰到不少认识的人问相关问题 索性做个笔记 图个方便 修改eth0的网卡配置vi /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0BOOTPR ...

  3. CentOS防火墙iptables-config的相关配置参数详解

    默认/etc/sysoncifg/iptables-config的配置内容: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 2 ...

  4. CentOS 6.5 服务器相关配置

    vi /etc/sysconfig/network-scripts/ifcfg-eth0 #配置网卡 ONBOOT=YES #静态IPBOOTPROTO=static #启用地址协议 --static ...

  5. 布衣之路(一):VMware虚拟机+CentOS系统安装

    前言:布衣博主乃苦逼的Java程序猿一枚,虽然工作中不会涉及系统运维,但是开发的项目总还是要部署到服务器做一些负载均衡.系统兼容性测试.系统集成等等骚操作,而这些测试性的操作不可能直接SSH远程运维的 ...

  6. 环境搭建系列-系统安装之centos 6.5安装与配置

    按照国际惯例,系列目录先奉上: 系列一:系统安装之centos 6.5安装与配置 系列二:准备工作之Java环境安装 系列三:数据为先之MySQL读写集群搭建 系列四:谈分布式之RabbitMQ集群搭 ...

  7. Linux centos VMware Nginx防盗链、Nginx访问控制、Nginx解析php相关配置、Nginx代理

    一.Nginx防盗链 配置如下,可以和上面的配置结合起来 location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|x ...

  8. vi代码智能提示功能及相关配置

    vim是一款支持插件.功能无比强大的编辑器,无论你的系统是linux.unix.mac还是windows,都能够选择他来编辑文件或是进行工程级别 的coding.如果能把vim用好了,不仅编程效率能得 ...

  9. Centos下MySQL主从同步配置

    说明:由于MySQL不同版本之间的(二进制日志)binlog格式可能会不一样, 因此最好的搭配组合是Master的MySQL版本和Slave的版本相同或者更低,Master的版本肯定不能高于Slave ...

随机推荐

  1. Object Pascal异常的种类

  2. nfs服务的配置

    nfs服务 nfs简介 Network file system 网络文件系统.NFS server可以看作是一个 file server.它可以让你的pc通过网络将远端的nfs server共享出来的 ...

  3. Centos7 初始化

    systemctl disable firewalld sed -ri '/^[^#]*SELINUX=/s#=.+$#=disabled#' /etc/selinux/config grubby - ...

  4. Intellij Idea如何导入spring源码

    一.读源码的目的 我们在开发过程中往往会运用一些市场上一些主流的框架,例如spring,hibernate ,strust 和mybaities 等. 我们往往可能有时候只知道运用,却不知道这些框架内 ...

  5. 斐波那契数列 Java 不同的实现方法所需要的时间比较

    # 首先我们直接看一个demo以及他的结果 public class QQ { public static void main(String[] args) throws ParseException ...

  6. oracle监听启动很慢

    TNS-12531: TNS:cannot allocate memory 首先查看内存,free -m 发现当前的空闲内存还有很多,那就不是内存不足的问题 想到之前重启过数据库服务器,查看主机名ho ...

  7. Django学习系列11:在服务器中处理POST请求

    之前的代码还没有为表单指定action=属性,因此提交表单默认返回之前渲染的页面,即“/”,这个由视图函数home_page处理.下面修改这个视图函数,让它能处理POST请求. 这意味着要为视图函数h ...

  8. Java I/O(三)各种Reader和Writer读写器、RandomAccessFile随机访问文件、序列化

    2019 01/01 八.Reader和Writer读写器 前面讲的输入输出流的基本单位都是字节,因此可以称为“字节流”,读写器是以字符为基本单位,可以称为“字符流”.它们的使用方法非常相似,因此我考 ...

  9. linux cp复制目录所有文件

    mkdir gpio cp -r build/ /home/yl/gpio 这样就把build目录及所有文件都拷贝到gpio文件夹中.

  10. 【JZOJ5428】【NOIP2017提高A组集训10.27】查询

    题目 给出一个长度为n的序列a[] 给出q组询问,每组询问形如\(<x,y>\),求a序列的所有区间中,数字x的出现次数与数字y的出现次数相同的区间有多少个. 分析 我们可以维护一个前缀和 ...