概述

今天我在我的 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. hadoop工作流程

    一)任务流程 1)Mapreduce程序启动一个Jobclient实例,开启整个mapreduce作业 2)Jobclient通过getnewjobld()j接口向Jobtarker发出请求,以获得一 ...

  2. 【CERC 2014 E】2048

    题意 2048曾经是一款风靡全球的小游戏. 今天,我们换一种方式来玩这个小游戏. 你有一个双端队列,你只能把元素从左端或从右端放入双端队列中.一旦放入就不得取出.放入后,若队列中有连续两个相同的元素, ...

  3. django RBAC类

    # -*- coding: utf-8 -*- ''' @author: Swain @contact: 624420781@qq.com @file: middlewares.py @time: 2 ...

  4. jdbc.properties不能加载到tomcat项目下面

    javaweb项目的一个坑,每次重启tomcat都不能将项目中的jdbc.properties文件加载到tomcat项目对应的classes目录下面,得手动粘贴到该目录下.

  5. python 继承:重写、拓展(六)

    1.继承:父类有的子类也有 2.多继承:若继承多个父类有相同的函数,则继承前面的函数,传递参数的个数也与继承的函数位置有关 3.超继承:针对继承一个父类使用,不仅有父类的特写同时也有自己的新特性  s ...

  6. oracle 数据库安装及jdbc的连接

    今天,我在oracle的官网下载了数据库并进行安装,其中遇到一些问题,在此进行记录. 1.下载,之后,按照网上的教程进行安装,开始遇到 下载之后出现11g 出现ins13001环境不满足最低要求 这个 ...

  7. 【leetcode】1253. Reconstruct a 2-Row Binary Matrix

    题目如下: Given the following details of a matrix with n columns and 2 rows : The matrix is a binary mat ...

  8. 在CentOS/Windows下配置Nginx(以及踩坑)

    在CentOS/Windows下配置Nginx(以及踩坑) 1. 序言 因为这类文章网上比较多,实际操作起来也大同小异,所以我并不会着重于详细配置方面,而是将我配置时踩的坑写出来. 2. CentOS ...

  9. Spring 动态多数据源

    spring springmvc mybatis 多数据源配置时的重点: 1. 注意事务拦截器的配置 Spring中的事务管理与数据源是绑定的,一旦程序执行到Service层(事务管理)的话,由于在进 ...

  10. 51 Nod N的阶乘的长度 (斯特林近似)

    1058 N的阶乘的长度  基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题  收藏  关注 输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3. Inp ...