Ubuntu 22 安装 NVM 详细步骤及常见问题解决方案

一、安装 NVM 的详细步骤

1. 安装先决条件

在开始安装 NVM 之前,确保您的 Ubuntu 22.04 系统已经更新到最新,并安装了必要的软件包:

复制代码
sudo apt update
sudo apt upgrade
sudo apt install curl gnupg2 -y

2. 下载并执行 NVM 安装脚本

使用以下命令下载并执行 NVM 的安装脚本:

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

或者,如果您偏好使用 wget

复制代码
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash

请确保使用的是最新版本的 nvm,可以在 nvm GitHub 仓库 nvm GitHub 中找到最新版本。

3. 加载 NVM 环境变量

安装完成后,您需要将 nvm 加载到您的 shell 中。可以通过添加以下内容到您的 ~/.bashrc~/.zshrc 文件中来实现:

复制代码
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm

然后运行以下命令使更改生效:

复制代码
source ~/.bashrc

或者如果您使用的是 zsh:

复制代码
source ~/.zshrc

4. 验证 NVM 是否安装成功

执行以下命令查看是否安装完成:

复制代码
command -v nvm

如果回显 nvm,则说明安装成功。

5. 使用 NVM 安装 Node.js

现在,您可以使用 NVM 命令行将任何 Node.js 版本安装到您的系统。例如,要安装最新版本的 Node.js,请运行以下命令:

复制代码
nvm install node

二、可能遇到的问题及解决方案

1. GitHub 域名解析被污染

如果在安装过程中出现连接到 raw.githubusercontent.com 失败的错误,可以尝试修改 host 文件:

复制代码
sudo vim /etc/hosts

填入以下内容:

复制代码
199.232.96.133 raw.githubusercontent.com

退出并保存后再次执行安装命令即可 。

2. nvm 命令未找到

如果安装后终端提示 nvm 命令未找到,可能是环境变量未正确设置或未刷新。请确保您已将 nvm 的环境变量添加到 ~/.bashrc~/.zshrc,并执行了 source ~/.bashrcsource ~/.zshrc 来刷新配置文件 。

3. NVM 版本不更新

如果您发现 NVM 版本不是最新的,可以尝试手动更新 NVM:

复制代码
cd ~/.nvm
git pull origin master

这将更新您的 NVM 到最新版本 。

通过以上步骤,您应该能够在 Ubuntu 22.04 上成功安装并使用 NVM 来管理 Node.js 的多个版本。如果在安装过程中遇到任何问题,可以参考上述解决方案或查看 NVM 的官方文档以获得更多帮助。

相关推荐
无奈笑天下14 小时前
银河麒麟桌面OS使用分区编辑器将/backup分区删除并扩容至根分区参考教程
linux·数据库·经验分享·编辑器
秋刀鱼 ..14 小时前
第七届国际科技创新学术交流大会暨机械工程与自动化国际学术会议(MEA 2025)
运维·人工智能·python·科技·机器人·自动化
CheungChunChiu21 小时前
Linux 内核设备模型与驱动框架解析 ——以 rk-pcie 为例
linux·运维·ubuntu
姚不倒21 小时前
负载均衡的概念、策略以及两个核心组件 Nginx 和 Kube-proxy 的对比。
运维·nginx·云原生·kubernetes
列逍21 小时前
Linux进程(三)
linux·运维·服务器·环境变量·命令行参数
水天需0101 天前
VS Code Ctrl+Shift+V 预览 Markdown 无效的解决方案
linux
赖small强1 天前
【Linux C/C++开发】Linux 平台 Stack Protector 机制深度解析
linux·c语言·c++·stack protector·stack-protector·金丝雀机制
陌路201 天前
Linux42 守护进程
linux
liteblue1 天前
DEB包解包与打包笔记
linux·笔记
minji...1 天前
Linux 基础IO(一) (C语言文件接口、系统调用文件调用接口open,write,close、文件fd)
linux·运维·服务器·网络·数据结构·c++