操作系统为centos6.10,在安装nodejs最新版本的时候报错,依赖glibc的高版本和gcc高版本,还要安装python2.7,操作系统上已经跑了很多应用,升级gcc风险过大,采用相对保守的方法:
安装npm并安装n,然后通过n这个工具安装低版本node(比默认yum安装的版本要高)

root@server1 [/home/yt_opsadmin/node-v12.13.0-linux-x64]# bin/node -v
bin/node: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by bin/node)
bin/node: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by bin/node)
bin/node: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.5' not found (required by bin/node)
bin/node: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by bin/node)
bin/node: /lib64/libc.so.6: version `GLIBC_2.16' not found (required by bin/node)
bin/node: /lib64/libc.so.6: version `GLIBC_2.17' not found (required by bin/node)
bin/node: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by bin/node)

1.安装epel的yum源
# yum install -y epel-release

2.安装低版本的nodejs和npm

yum install nodejs npm -y

root@server1 [//home/mindmaster0807]# npm --version
1.3.6
root@server1 [//home/mindmaster0807]# node --version
v0.10.48

3.安装n这个管理nodejs的工具
# 需要关闭ssl否则会报错
npm config set strict-ssl false
npm install -g n

# 使用n 这个工具安装node8.2.1版本
n 8.2.1

# 默认版本
root@server1 [/home/yt_opsadmin]# node -v
v0.10.48

# 查看n管理下的所有node版本
root@server1 [/home/mindmaster0807/_coopSocket]# n ls
node/8.2.1
# 查看8.2.1版本所在安装目录
root@server1 [/home/mindmaster0807/_coopSocket]# n which 8.2.1
/usr/local/n/versions/node/8.2.1/bin/node

# 使用软链和替换默认node版本为新版本
root@server1 [/home/yt_opsadmin]# mv /usr/bin/node /usr/bin/node.old
root@server1 [/home/yt_opsadmin]# mv /usr/local/bin/node /usr/local/bin/node.old
root@server1 [/home/yt_opsadmin]# cp /usr/local/n/versions/node/8.2.1/bin/node /usr/bin
root@server1 [/home/yt_opsadmin]# cp /usr/local/n/versions/node/8.2.1/bin/node /usr/local/bin/
root@server1 [/home/yt_opsadmin]# node -v
v8.2.1

# 替换 npm 为新版本
root@server1 [/home/yt_opsadmin]# npm -v
1.3.6

root@server1 [/home/yt_opsadmin]# mv /usr/bin/npm /usr/bin/npm.old
root@server1 [/home/yt_opsadmin]# mv /usr/local/bin/npm /usr/local/bin/npm.old
root@server1 [/home/yt_opsadmin]# ln -s /usr/local/n/versions/node/8.2.1/bin/npm /usr/bin/npm
root@server1 [/home/yt_opsadmin]# ln -s /usr/local/n/versions/node/8.2.1/bin/npm /usr/local/bin/npm
root@server1 [/home/yt_opsadmin]# /usr/local/n/versions/node/8.2.1/bin/npm -v
5.3.0

升级glibc到2.17

1.原先的系统glibc库的版本是2.12,需要升级到2.17版本
root@server1 [/home/yt_opsadmin/node-v12.13.0-linux-x64]# strings /lib64/libc.so.6 | grep GLIBC
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_PRIVATE

wget http://ftp.gnu.org/gnu/glibc/glibc-2.17.tar.gz

2.编译
# 编译时间较长,开启screen避免编译中断
# screen -S glibc
# tar -xf glibc-2.17.tar.gz
# cd glibc-2.17
# mkdir build
# cd build
# 预编译
# ../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
# 多线程编译,加快编译速度
# make -j 4
# make  install
[root@:~]# strings /lib64/libc.so.6 | grep GLIBC
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_2.13
GLIBC_2.14
GLIBC_2.15
GLIBC_2.16
GLIBC_2.17
GLIBC_PRIVATE

[root@spyzie-DB1:~]# ldd --version
ldd (GNU libc) 2.17
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.

centos6.10环境安装nodejs8.2.1的更多相关文章

  1. Windows 10环境安装VIM代码补全插件YouCompleteMe

    Windows 10环境安装VIM代码补全插件YouCompleteMe 折腾一周也没搞定Windows下安装VIM代码补全插件YouCompleteMe,今天在家折腾一天总算搞定了.关键问题是在于P ...

  2. CentOS6.10下安装MongoDB和Redis

    安装mongodb 首先考虑离线安装,但是安装过程中在启动服务的时候出现了问题,centOS出于稳定原因考虑,系统自带的glibc版本过低, 而编译需要使用较高版本,这个问题我查询了一下,需要升级gl ...

  3. CentOS6.8环境安装oracle 11G

    本节所讲内容: oracle11g基础环境配置 数据库的三种安装方式(图形.静默.克隆) http://db-engines.com REDHAT6.5安装oracle11.2.4 ORACLE11G ...

  4. VM12及CentOS-6.10的安装

    VM12的安装破解步骤 1:打开VMware 12安装界面后,点击[下一步]2:勾选[我接受许可协议中的条款]安装VMware Workstation 12 ,然后点击[下一步]3:修改默认安装路径, ...

  5. Centos6.10编译安装php-7.1.12并安装redis模块

    1.服务器初始化 yum update -yyum install epel-release -yyum install gcc gcc-c++ wget lsof lrzsz telnet -y 2 ...

  6. Django1.10环境安装

    在Ubuntu14上 一 安装脚本 wget https://github.com/django/django/archive/master.tar.gz apt-get install python ...

  7. centos6.5环境 安装php5.5.30的redis扩展 介绍

    1.下载软件包 wget http://pecl.php.net/get/redis-2.2.5.tgz       2.解压 tar zxvf redis-2.2.5.tgz        3.进入 ...

  8. CentOS6.5 环境安装配置

    一.GO环境配置 1.运行命令进入/usr/local/src目录:cd /usr/local/src 2.下载安装包:运行wget --no-check-certificate https://st ...

  9. centos6.10环境下启动多个redis实例

    # 启动redis端口6379的配置 [root@newcms:/usr/local/nginx/conf]# /etc/redis.conf daemonize yes pidfile /usr/l ...

随机推荐

  1. NAT实验

    实验内容 实验拓扑   实验编址 实验步骤1.基础配置根据编址表配置,检测ping 2.配置静态NAT在公司网关路由器R1上配置访问外网的默认路由 由于内网使用的都是私有IP地址,员工无法直接访问公网 ...

  2. beta版本——第二次冲刺

    第二次冲刺 (1)SCRUM部分☁️ 成员描述: 姓名 唐财伟 完成了哪个任务 搭建Nginx 花了多少时间 3h 还剩余多少时间 0h 遇到什么困难 解决端口冲突,启动报错等问题 这两天解决的进度 ...

  3. Parity game(带权并查集+离散化)

    题目链接  //kuangbin 题意: 现在你和你的朋友正在玩一种游戏. 你的朋友写下一串0和1的序列,然后你选择其中一串子序列(如[3,5])并且问他这个序列是包含奇数个1还是偶数个1(和是奇数还 ...

  4. 云服务器CentOS7.4下搭建GitLab

    一.Git.GitHub.GitLab的区别 Git是版本控制系统,Github是在线的基于Git的代码托管服务. GitHub是2008年由Ruby on Rails编写而成.GitHub同时提供付 ...

  5. Redis.Memcache和MongoDB区别?

    Memcached的优势: Memcached可以利用多核优势,单吞吐量极高,可以达到几十万QPS(取决于Key.value的字节大小以及服务器硬件性能,日常环境中QPS高峰大约在4-6w左右.)适用 ...

  6. discuz x3.4 开启tags聚合标签及伪静态配置方法

    因为SEO的需要,要做tags聚合到一个页面,做到伪静态. 例如: misc.php?mod=tag >>> /tag/ misc.php?mod=tag&id=47 > ...

  7. 微信程序开发之-WeixinJSBridge调用

    微信的WeixinJSBridge还是很厉害的,虽然官方文档只公布了3个功能,但是还内置的很多功能没公布,但是存在.今天就好好和大家聊聊 功能1------发送给好友     代码如下: functi ...

  8. oracle 将与本端(name)联系的人取出

    本人与其他所有人认识的SQL: 首先新建测试表 create table DIM_IA_TEST6 ( NAME ), OTHERNAME ) ) 插入数据 --如果没有重复的记录,则不用去重使用un ...

  9. 使用Apache commons-maths3-3.6.1.jar包进行简单的数据统计分析(java)

    使用maths3函数进行简单的数据统计性描述: 使用场景:本地,直接运行就可以: 具体后面有个性化的需求,可以再修改~ package com; import org.apache.commons.l ...

  10. 1.zookeeper是干什么的?

    Zookeeper是Hadoop的一个子项目,虽然源自hadoop,但是我发现zookeeper脱离hadoop的范畴开发分布式框架的运用越来越多.今天我想谈谈zookeeper,本文不谈如何使用zo ...