WSL终端执行Node.js安装命令无响应,如何通过PPA安装?
手动添加Nodesource PPA安装Node.js 18(适配WSL Ubuntu)
1. 先处理Ubuntu源连接问题(必做)
因为你连不上Ubuntu官方服务器,先把系统源换成国内镜像(以清华源为例):
- 备份原有源文件:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak - 编辑源文件:
sudo nano /etc/apt/sources.list - 删除原有内容,粘贴对应Ubuntu版本的源(比如Ubuntu 22.04用
jammy,20.04用focal):deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse - 按
Ctrl+O保存,Ctrl+X退出,然后执行:sudo apt update
2. 手动导入Nodesource GPG密钥
跳过curl脚本,直接导入密钥:
sudo apt install -y gnupg wget -qO- https://mirrors.tuna.tsinghua.edu.cn/nodesource/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/nodesource.gpg
如果wget也连不上,就手动创建密钥文件:
- 打开密钥地址复制所有内容,在WSL里执行:
sudo nano /usr/share/keyrings/nodesource.gpg - 粘贴内容后保存退出,再设置权限:
sudo chmod 644 /usr/share/keyrings/nodesource.gpg
3. 添加Node.js 18的PPA源(用国内镜像)
执行命令添加适配国内网络的源:
echo "deb [signed-by=/usr/share/keyrings/nodesource.gpg] https://mirrors.tuna.tsinghua.edu.cn/nodesource/deb/node_18.x/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/nodesource.list echo "deb-src [signed-by=/usr/share/keyrings/nodesource.gpg] https://mirrors.tuna.tsinghua.edu.cn/nodesource/deb/node_18.x/ $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/nodesource.list
4. 安装Node.js
执行更新并安装:
sudo apt update sudo apt install -y nodejs
5. 验证安装
输入以下命令确认版本:
node -v npm -v
内容的提问来源于stack exchange,提问作者Bond James
相关产品推荐
相关产品推荐

