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 相关文章推荐
Google官方支持的NodeJS访问API,提供后台登录授权
Jul 29 NodeJs
Nodejs极简入门教程(二):定时器
Oct 25 NodeJs
nodejs中实现路由功能
Dec 29 NodeJs
基于html5和nodejs相结合实现websocket即使通讯
Nov 19 NodeJs
NodeJS和BootStrap分页效果的实现代码
Nov 07 NodeJs
进阶之初探nodeJS
Jan 24 NodeJs
详解nodejs中express搭建权限管理系统
Sep 15 NodeJs
Nodejs异步回调之异常处理实例分析
Jun 22 NodeJs
NodeJS 中Stream 的基本使用
Jul 30 NodeJs
nodejs异步编程基础之回调函数用法分析
Dec 26 NodeJs
nodejs npm错误Error:UNKNOWN:unknown error,mkdir 'D:\Develop\nodejs\node_global'at Error
Mar 02 NodeJs
浅谈使用nodejs搭建web服务器的过程
Jul 20 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学习笔记之二 php入门知识
2011/01/12 PHP
免费手机号码归属地API查询接口和PHP使用实例分享
2014/04/10 PHP
PHP中Closure类的使用方法及详解
2015/10/09 PHP
利用js实现遮罩以及弹出可移动登录窗口
2013/07/08 Javascript
jQuery Mobile的loading对话框显示/隐藏方法分享
2013/11/26 Javascript
JS验证邮件地址格式方法小结
2015/12/01 Javascript
JavaScript中rem布局在react中的应用
2015/12/09 Javascript
Nodejs进阶:核心模块net入门学习与实例讲解
2016/11/21 NodeJs
node.js请求HTTPS报错:UNABLE_TO_VERIFY_LEAF_SIGNATURE\的解决方法
2016/12/18 Javascript
jQuery弹出窗口打开链接的实现代码
2016/12/24 Javascript
js实现产品缩略图效果
2017/03/10 Javascript
JavaScript实现时间表动态效果
2017/07/15 Javascript
vue2.0的虚拟DOM渲染思路分析
2018/08/09 Javascript
JS/HTML5游戏常用算法之碰撞检测 包围盒检测算法详解【凹多边形的分离轴检测算法】
2018/12/13 Javascript
微信小程序实现下拉框功能
2019/07/16 Javascript
小程序最新获取用户昵称和头像的方法总结
2019/09/23 Javascript
JS实现炫酷轮播图
2020/11/15 Javascript
vant-ui框架的一个bug(解决切换后onload不触发)
2020/11/11 Javascript
[32:17]完美世界DOTA2联赛循环赛LBZS vs Forest第二场 10月30日
2020/10/31 DOTA
跟老齐学Python之Python安装
2014/09/12 Python
Python编程中time模块的一些关键用法解析
2016/01/19 Python
Python中的数学运算操作符使用进阶
2016/06/20 Python
Python中sort和sorted函数代码解析
2018/01/25 Python
Python中面向对象你应该知道的一下知识
2019/07/10 Python
wxpython绘制音频效果
2019/11/18 Python
3种python调用其他脚本的方法
2020/01/06 Python
Selenium元素定位的30种方式(史上最全)
2020/05/11 Python
美国本地交易和折扣网站:LocalFlavor.com
2017/10/26 全球购物
一个J2EE项目团队的主要人员组成是什么
2012/06/04 面试题
工作的心得体会
2013/12/31 职场文书
浪漫婚礼主持词
2014/03/14 职场文书
公司员工活动策划方案
2014/08/20 职场文书
2014年设计师工作总结
2014/11/25 职场文书
圣诞晚会主持词开场白
2015/05/28 职场文书
入党积极分子半年考察意见
2015/06/02 职场文书
素质拓展训练感想
2015/08/07 职场文书