温馨提示×

CentOS下Node.js版本如何升级

小樊
42
2025-10-01 02:19:41
栏目: 编程语言

CentOS下升级Node.js版本的常用方法

方法一:使用NodeSource Repository(推荐,适合系统级全局升级)

NodeSource是Node.js官方推荐的第三方软件源,提供最新稳定版本的Node.js二进制包,适合需要全局使用统一版本的用户。

  1. 卸载旧版本(可选但建议):避免版本冲突,先移除系统中已有的Node.js。
    sudo yum remove -y nodejs 
  2. 安装开发工具依赖:编译Node.js原生模块时需要这些工具。
    sudo yum groupinstall -y "Development Tools" 
  3. 添加NodeSource仓库:替换setup_XX.x中的XX.x为目标版本(如18.x对应Node.js 18,20.x对应Node.js 20)。
    curl -sL https://rpm.nodesource.com/setup_18.x | sudo bash - 
  4. 安装Node.js:通过yum从NodeSource仓库安装最新版本。
    sudo yum install -y nodejs 
  5. 验证安装:检查版本号确认升级成功。
    node -v # 输出类似 v18.x.x npm -v # 输出对应npm版本 

方法二:使用NVM(Node Version Manager,适合多版本灵活切换)

NVM是命令行工具,允许在同一台机器上安装、切换多个Node.js版本,适合需要同时维护多个项目的用户。

  1. 卸载旧版本(可选)
    sudo yum remove -y nodejs 
  2. 安装NVM:通过curl下载并运行安装脚本(选择最新版本,如v0.39.7)。
    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash 
  3. 激活NVM:让当前终端会话识别NVM命令(需重启终端或运行以下命令)。
    source ~/.bashrc 
  4. 验证NVM安装
    nvm --version # 输出NVM版本号 
  5. 安装指定版本Node.js
    • 安装最新LTS版本(长期支持,稳定):
      nvm install --lts 
    • 安装特定版本(如16.20.2):
      nvm install 16.20.2 
  6. 切换版本
    nvm use --lts # 切换到最新LTS版本 nvm use 16.20.2 # 切换到指定版本 
  7. 设置默认版本(可选):让新终端默认使用某版本。
    nvm alias default 16.20.2 
  8. 验证安装
    node -v # 输出当前使用的版本 npm -v 

方法三:手动编译安装(适合需要完全自定义的场景)

手动编译安装可获得最新版本,但过程较复杂,适合有Linux系统管理经验的用户。

  1. 安装编译依赖
    sudo yum install -y gcc-c++ make 
  2. 下载源码包:从Node.js官网选择最新版本(如v18.17.1),替换URL中的版本号。
    wget https://nodejs.org/dist/v18.17.1/node-v18.17.1-linux-x64.tar.gz 
  3. 解压并安装
    tar -xzf node-v18.17.1-linux-x64.tar.gz sudo mv node-v18.17.1-linux-x64 /usr/local/nodejs 
  4. 配置环境变量:将Node.js路径添加到PATH中(编辑~/.bashrc~/.bash_profile)。
    echo 'export PATH=/usr/local/nodejs/bin:$PATH' >> ~/.bashrc source ~/.bashrc 
  5. 验证安装
    node -v # 输出 v18.17.1 npm -v 

注意事项

  • 版本兼容性:CentOS 7默认GLIBC版本较低(约2.17),可能不兼容Node.js 16及以上版本,需提前升级GLIBC(谨慎操作,可能影响系统稳定性)或选择兼容版本(如Node.js 14)。
  • 权限问题:手动编译安装时使用sudo,但建议避免将Node.js安装到系统目录(如/usr/local),可使用用户目录(如~/nodejs)并配置环境变量。
  • NVM优势:若需频繁切换版本,优先选择NVM,其管理更方便且不会影响系统其他用户。

0