linux 下以二进制的方式安装 nodejs


Posted in NodeJs onFebruary 12, 2020

在一些linux环境下,安装最新的nodejs比较麻烦,因为受到linux源的影响,往往直接通过yum/apt安装的都不是想要的版本,因此,必须自己去选择 对应的版本 来安装。但是,nodejs官方又不会为所有的操作系统打包,而编译安装常常又会遇到依赖问题。所以在一些情况下,我们需要在linux机器上,直接下载官方构建好的产出结果来运行。

例如,我们现在需要安装v10.x版本,我们通过wget下载对应的-linux-x64.tar.gz文件,然后通过tar命令将其解压到~/.lib/目录下。(注意,这里,我只需要我自己当前这个账号可以使用该node包。)然后修改~/.bashrc文件,在其末尾增加:

export PATH="$PATH:~/.lib/node-v10.9.0/bin"

然后执行:

source .bashrc

这样就可以让node生效了。这个操作很好理解,就是将node的bin路径加入到环境变量PATH中。

而如果要让登陆这台linux的所有用户都可以使用这个node的话,则需要将解压出来的文件夹放到一个公共的位置,一般会考虑放到/usr/local/lib目录下面,当然,位置不是最重要的,重要的是,你需要在/etc/profile这个文件中添加上面的 export 语句。而且里面指向的路径需要用绝对路径,这样就可以让其他用户享受nodejs的快乐。

以下是Shell代码:

#!/bin/sh
#
# 安装NodeJS
#
# Yepo 2016-07-28
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
clear
printf "
#######################Install NodeJS######################
"
#下载NodeJS二进制包
nodeVersion=v0.12.15
wget https://nodejs.org/download/release/$nodeVersion/node-$nodeVersion-linux-x64.tar.gz
#移动到指定目录
srcDir=/usr/local/src
#转移包
mv node-$nodeVersion-linux-x64.tar.gz $srcDir
#转到该目录
cd $srcDir
#解押包
tar xzf $srcDir/node-$nodeVersion-linux-x64.tar.gz
#更名,这个看喜好啦
mv node-$nodeVersion-linux-x64/ node/
#放到指定目录
mv node ../
#把可执行的两个程序放到/usr/local/bin
cd /usr/local/node/bin
mv node /usr/local/bin
#删除这个软连接
rm -rf npm
#转到/usr/local/bin创建npm的软连接
cd /usr/local/bin
ln -s /usr/local/node/lib/node_modules/npm/cli.js npm
#检查安装
isCompleted=0
node -v > /dev/null 2>&1
isCompleted=$?
npm help > /dev/null 2>&1
isCompleted=$?
if [ "$isCompleted" == "0" ];then
    echo "OK"
else
    echo "Error"
fi

总结

以上所述是小编给大家介绍的linux 下以二进制的方式安装 nodejs,希望对大家有所帮助!

NodeJs 相关文章推荐
nodeJs爬虫获取数据简单实现代码
Mar 29 NodeJs
nodejs实现发出蜂鸣声音(系统报警声)的方法
Jan 18 NodeJs
NodeJs测试框架Mocha的安装与使用
Mar 28 NodeJs
使用nodejs爬取前程无忧前端技能排行
May 06 NodeJs
NodeJs使用Mysql模块实现事务处理实例
May 31 NodeJs
详解Nodejs之npm&package.json
Jun 15 NodeJs
nodejs async异步常用函数总结(推荐)
Nov 17 NodeJs
NodeJS简单实现WebSocket功能示例
Feb 10 NodeJs
解决nodejs的npm命令无反应的问题
May 17 NodeJs
nodejs基础之常用工具模块util用法分析
Dec 26 NodeJs
NodeJs入门教程之定时器和队列
Mar 08 NodeJs
5分钟教你用nodeJS手写一个mock数据服务器的方法
Sep 10 NodeJs
nodejs实现百度舆情接口应用示例
Feb 07 #NodeJs
使用nodeJS中的fs模块对文件及目录进行读写,删除,追加,等操作详解
Feb 06 #NodeJs
nodejs nedb 封装库与使用方法示例
Feb 06 #NodeJs
nodejs实现的http、https 请求封装操作示例
Feb 06 #NodeJs
Nodejs + Websocket 指定发送及群聊的实现
Jan 09 #NodeJs
nodeJs的安装与npm全局环境变量的配置详解
Jan 06 #NodeJs
Nodejs封装类似express框架的路由实例详解
Jan 05 #NodeJs
You might like
php完全过滤HTML,JS,CSS等标签
2009/01/16 PHP
php读取图片内容并输出到浏览器的实现代码
2013/08/08 PHP
Laravel 5.0 发布 新版本特性详解
2015/02/10 PHP
ThinkPHP实现转换数据库查询结果数据到对应类型的方法
2017/11/16 PHP
PHP获取真实IP及IP模拟方法解析
2020/11/24 PHP
Javascript 生成指定范围数值随机数
2009/01/09 Javascript
jquery的ajaxSubmit()异步上传图片并保存表单数据演示代码
2013/06/04 Javascript
深入了解Node.js中的一些特性
2014/09/25 Javascript
jQuery对象与DOM对象之间的相互转换
2015/03/03 Javascript
简单实现IONIC购物车功能
2017/01/10 Javascript
js制作简单的音乐播放器的示例代码
2017/08/28 Javascript
详解vue-cli脚手架build目录中的dev-server.js配置文件
2017/11/24 Javascript
three.js实现3D影院的原理的代码分析
2017/12/18 Javascript
AngularJS与BootStrap模仿百度分页的示例代码
2018/05/23 Javascript
JS实现的贪吃蛇游戏完整实例
2019/01/18 Javascript
Vue实现浏览器打印功能的代码
2020/04/17 Javascript
使用 Jest 和 Supertest 进行接口端点测试实例详解
2020/04/25 Javascript
[04:19]DOTA2亚洲邀请赛 现场花絮
2015/03/11 DOTA
python提取字典key列表的方法
2015/07/11 Python
python opencv 直方图反向投影的方法
2018/02/24 Python
python实现简易通讯录修改版
2018/03/13 Python
python 制作自定义包并安装到系统目录的方法
2018/10/27 Python
Python中一个for循环循环多个变量的示例
2019/07/16 Python
Python random模块制作简易的四位数验证码
2020/02/01 Python
Python的in,is和id函数代码实例
2020/04/18 Python
关于tensorflow softmax函数用法解析
2020/06/30 Python
10行Python代码实现Web自动化管控的示例代码
2020/08/14 Python
Django跨域请求原理及实现代码
2020/11/14 Python
美国领先的汽车轮胎和轮毂供应商:TireBuyer
2016/07/21 全球购物
自我鉴定范文
2013/11/10 职场文书
二手房购房意向书范本
2014/04/01 职场文书
2014年三万活动总结
2014/04/26 职场文书
2014旅游局领导班子四风问题对照检查材料思想汇报
2014/09/19 职场文书
2015年企业新年寄语
2014/12/08 职场文书
贫困生证明范文
2015/06/16 职场文书
golang正则之命名分组方式
2021/04/25 Golang