使用 nvm(不破坏系统)Linux 上把 Node.js / npm 升级到你指定版本(Node v23.x、npm 10.x)

一、安装nvm

这是开发环境、服务器都最推荐的方式。

1️⃣ 安装 nvm

复制代码
curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

安装完成后,必须重新加载环境

复制代码
source ~/.bashrc
# 或
source ~/.zshrc

确认 nvm 可用:

复制代码
nvm -v

2️⃣ 安装需要的 Node 版本

复制代码
nvm install 23

或指定更精确版本:

复制代码
nvm install 23.11.0

3️⃣ 使用该版本(并设为默认)

复制代码
nvm use 23
nvm alias default 23

4️⃣ 验证版本

复制代码
node -v
# v23.11.0

npm -v
# 10.9.2(或更高)

注意:npm 会随 Node 自动安装

如果 npm 不是 10.x,可手动升级:

复制代码
npm install -g npm@10

二、如果不能用 nvm(比如最小系统、产线机)

方案 B:官方二进制包(手动安装)

1️⃣ 下载 Node 官方 Linux 包

复制代码
wget https://nodejs.org/dist/v23.11.0/node-v23.11.0-linux-x64.tar.xz

2️⃣ 解压并安装到 /usr/local

复制代码
sudo tar -xJf node-v23.11.0-linux-x64.tar.xz -C /usr/local/
sudo ln -sf /usr/local/node-v23.11.0-linux-x64 /usr/local/node

3️⃣ 配置环境变量

复制代码
echo 'export PATH=/usr/local/node/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

4️⃣ 验证

复制代码
node -v
npm -v

三、如果你现在系统里已经有旧 Node / npm

查看来源(很重要)

复制代码
which node
which npm

如果是:

  • /usr/bin/node → 系统包

  • ~/.nvm/... → nvm 管理


清理旧系统版本(可选,但推荐)

复制代码
sudo apt remove nodejs npm

⚠️ 不要删除 nvm 安装的版本


四、常见坑(你很可能会遇到)

❌ 升级后版本还是旧的

原因:PATH 顺序错误

解决:

复制代码
echo $PATH

确保:

复制代码
~/.nvm/versions/node/.../bin 在前面

❌ npm 版本没到 10.x

复制代码
npm install -g npm@10

❌ sudo npm 报错

不要 sudo npm(nvm 环境下)


五、快速确认清单(照着做就对)

复制代码
node -v    # v23.11.0
npm -v     # 10.9.2
which node # ~/.nvm/versions/node/...

六、建议(重要)

开发环境:用 nvm
系统服务:用官方二进制包
永远不要混用 apt + nvm

相关推荐
叮咚侠14 小时前
Ubuntu 24.04 安装zabbix-agent 5.0 服务
linux·ubuntu·zabbix·zabbix-agent
左手厨刀右手茼蒿16 小时前
数据仓库的架构演进:从MySQL到ClickHouse到数据湖的工程化实践
linux·嵌入式·系统内核
左手厨刀右手茼蒿17 小时前
创业团队技术选型:别用大厂架构解决小团队问题
linux·嵌入式·系统内核
bosins17 小时前
将 Hyper-V 上的 Ubuntu 虚拟机内容迁移到 WSL (Windows Subsystem for Linux) 中
linux·windows·ubuntu
我星期八休息18 小时前
扩展—DNS与ICMP
linux·服务器·网络
筝筝ba18 小时前
linux 查询当前登录的用户数量
linux·服务器·网络
woniu_buhui_fei19 小时前
日常工作常用的命令(Linux+JDK)
linux·运维·服务器
coward9119 小时前
全志T507 (sun50iw9p1)sunxi pinctrl 子系统实现分析
linux·嵌入式硬件
imaol119 小时前
文件编程--标准IO
linux·运维·算法
嘟嘟071720 小时前
从浏览器到 hello world:Docker + nginx 反向代理 + Node 最小服务器一次讲清
docker·容器·node.js