Ubuntu 系统(包括 WSL 中的 Ubuntu)安装 Node.js、npm 和 Yarn

Ubuntu 系统(包括 WSL 中的 Ubuntu)安装 Node.js、npm 和 Yarn

以下是在 Ubuntu 系统(包括 WSL 中的 Ubuntu)安装 Node.jsnpmYarn 的完整步骤,涵盖多种安装方式及常见问题解决方案:


一、安装 Node.js 和 npm

方法 1:通过 NodeSource 安装(推荐,版本新)
    • 如果需要其他版本(如 18.x),替换链接中的 20.x

验证安装

node -v # 应输出 v20.x.xnpm -v # 应输出对应版本

安装 Node.js 和 npm

sudoaptinstall -y nodejs 

添加 NodeSource 仓库(以 Node.js 20.x 为例):

curl -fsSL https://deb.nodesource.com/setup_20.x |sudo -E bash - 

方法 2:使用 nvm(灵活管理多版本)

验证安装

node -v npm -v 

安装指定版本的 Node.js(自动包含 npm):

nvm install --lts # 安装最新 LTS 版本# 或指定版本 nvm install20.5.0 

安装完成后,重启终端或运行:

source ~/.bashrc 

安装 nvm(Node Version Manager)

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh |bash

方法 3:通过 Ubuntu 官方仓库(版本较旧,不推荐)
sudoapt update sudoaptinstall nodejs npm

二、安装 Yarn

方法 1:通过 npm 安装(推荐)

验证安装

yarn --version 

全局安装 Yarn

npminstall -g yarn

方法 2:通过 Yarn 官方仓库

安装 Yarn

sudoapt update sudoaptinstallyarn

添加 GPG 密钥和仓库

curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg |sudo apt-key add - echo"deb https://dl.yarnpkg.com/debian/ stable main"|sudotee /etc/apt/sources.list.d/yarn.list 

三、配置镜像源(加速下载)

1. 配置 npm 镜像源
npm config set registry https://registry.npmmirror.com 
2. 配置 Yarn 镜像源
yarn config set registry https://registry.npmmirror.com 

四、解决全局安装权限问题

如果安装全局包时出现 EACCES 权限错误,按以下步骤修复:

将路径添加到环境变量

echo'export PATH=~/.npm-global/bin:$PATH'>> ~/.bashrc source ~/.bashrc 

配置 npm 全局安装目录

mkdir ~/.npm-global npm config set prefix ~/.npm-global 

五、常见问题解决

1. 安装后命令未找到(如 nodeyarn
  • 原因:环境变量未生效。

解决

source ~/.bashrc # 重新加载配置echo$PATH# 检查路径是否包含正确目录
2. 版本冲突

如果通过 aptnvm 同时安装了 Node.js,优先使用 nvm 版本:

nvm use --lts # 切换到 nvm 管理的版本
3. 彻底卸载重装
  • 重新按上述步骤安装。

卸载 Node.js 和 npm

sudoapt purge --auto-remove nodejs npmrm -rf ~/.npm ~/.nvm 

六、验证环境

node -v # 输出 Node.js 版本npm -v # 输出 npm 版本yarn -v # 输出 Yarn 版本

附:完整流程示例(推荐使用 nvm)

# 1. 安装 nvmcurl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh |bashsource ~/.bashrc # 2. 安装 Node.js 和 npm nvm install --lts # 3. 安装 Yarnnpminstall -g yarn# 4. 配置镜像源npm config set registry https://registry.npmmirror.com yarn config set registry https://registry.npmmirror.com 

如有其他问题,请提供以下信息:

  1. 终端执行命令的具体报错内容。
  2. 运行 node -vnpm -vyarn -v 的输出结果。

Read more

AI如何帮你优化前端存储方案选择?

快速体验 1. 打开 InsCode(快马)平台 https://www.inscode.net 2. 输入框内输入如下内容: 创建一个AI辅助工具,能够根据用户输入的项目需求(如数据大小、有效期、安全性要求等),自动推荐最适合的浏览器存储方案(localStorage/sessionStorage/cookie)。要求提供对比分析报告,并生成相应的JavaScript代码示例。包含设置、获取、删除操作的完整实现,以及安全性注意事项。 1. 点击'项目生成'按钮,等待项目生成完整后预览效果 AI如何帮你优化前端存储方案选择? 在前端开发中,数据存储方案的选择往往让人头疼。localStorage、sessionStorage和cookie各有特点,但新手开发者经常难以判断哪种更适合当前项目。最近我发现,借助AI工具可以快速解决这个难题。 三种存储方式的特性对比 1. localStorage:持久化存储,数据会一直保留在浏览器中,除非手动清除。适合存储不敏感的用户偏好设置等数据,容量大约5MB。

By Ne0inhk

零基础手把手教程:用gpt-oss-20b-WEBUI快速搭建本地AI对话系统

零基础手把手教程:用gpt-oss-20b-WEBUI快速搭建本地AI对话系统 1. 为什么选这个镜像?小白也能跑起来的“真开源”体验 你可能已经看到过不少“本地大模型”教程,但真正能让你在普通电脑上点开浏览器就聊天、不用折腾CUDA版本、不报错、不卡死的方案,其实不多。gpt-oss-20b-WEBUI这个镜像,就是为“不想装环境、只想用模型”的人准备的。 它不是包装精美的黑盒应用,也不是需要你手动编译vLLM的硬核项目——它是OpenAI官方开源权重(gpt-oss)+ vLLM高速推理引擎 + 预置WebUI的完整组合包,所有依赖都已打包好,部署完就能直接打开网页对话。 重点来了: * 不用装Python、不用配CUDA、不用改配置文件; * 不依赖Ollama、不依赖Docker Desktop(Windows用户尤其友好); * 双卡RTX 4090D可跑20B模型,单卡3090/4080也能稳推,甚至A10G云显卡实测可用; * 界面就是ChatGPT风格,输入即响应,支持多轮对话、历史保存、导出记录。 如果你试过其他方案却卡在“pip install

By Ne0inhk

VibeThinker-1.5B-WEBUI快速入门:三步完成数学解题部署

VibeThinker-1.5B-WEBUI快速入门:三步完成数学解题部署 1. 这是什么模型?专为数学和编程而生的小钢炮 你可能已经用过不少大模型,动辄几十亿参数、需要高端显卡、推理慢还费电。但今天要介绍的这个模型有点不一样——它只有15亿参数,训练成本不到8000美元,却能在数学竞赛题和算法编程题上,打得过参数量是它400倍的前辈模型。 它叫 VibeThinker-1.5B,由微博团队开源,定位非常清晰:不追求全能,只专注把两件事做到极致——数学推理和代码生成。不是泛泛而谈的“能做数学”,而是实打实跑在AIME(美国数学邀请赛)、HMMT(哈佛-麻省理工数学锦标赛)这类高难度竞赛题上的硬核表现;也不是简单写个Hello World,而是在LiveCodeBench这种面向真实工程场景的编程评测中,分数超过Magistral Medium等知名中型模型。 更关键的是,它轻量、易部署、响应快。你不需要租GPU云服务器,也不用折腾conda环境或编译依赖——只要一个支持Docker的Linux机器,三步就能让它跑起来,打开网页就能开始解题。 它不是另一个“玩具模型”,而是一

By Ne0inhk
Flutter for OpenHarmony: Flutter 三方库 jaspr 为鸿蒙端开启极速渲染的现代 Web 开发新范式(Dart Web 框架首选)

Flutter for OpenHarmony: Flutter 三方库 jaspr 为鸿蒙端开启极速渲染的现代 Web 开发新范式(Dart Web 框架首选)

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net 前言 在进行 OpenHarmony 开发时,我们偶尔需要跳出原生的 HAP 容器,寻找更轻量、更适合在移动端 Web 加载的方案。虽然 Flutter Web 极其强大,但其生成的 Canvas/Wasm 产物体积巨大,在鸿蒙系统加载较慢。是否存在一种方案,既能使用 Dart 的声明式开发体验,又能产出纯正、轻量的 HTML/CSS/JS 节点? jaspr 就是这个问题的终极答案。它是一个模仿 Flutter 语法、但专注于渲染原生 Web DOM 的现代框架。通过 Jaspr,鸿蒙开发者可以利用熟悉的 Widget、Component 和生命周期,

By Ne0inhk