Linux环境下安装Node.js详细教程 npm环境变量配置方法【指南】

轻瑶吖_1356

轻瑶吖_1356

2026-04-28

521人浏览

原创

node.js未正确安装或环境变量未生效会导致node -v/npm -v报“command not found”。解决方法包括:一、包管理器安装(apt/dnf/yum);二、nodesource仓库安装lts版;三、nvm管理多版本;四、手动解压配软链或环境变量;五、自定义npm全局路径。

linux环境下安装node.js详细教程 npm环境变量配置方法【指南】

如果您在Linux系统中执行node -v或npm -v命令时提示“command not found”,则很可能是Node.js未正确安装,或安装后环境变量未生效。以下是多种可靠、可复现的Linux环境下安装Node.js及配置npm环境变量的方法:

一、使用包管理器安装(适用于Ubuntu/Debian与CentOS/RHEL)

该方法依赖系统官方仓库或扩展源,操作快捷,适合快速部署基础开发环境,但版本受发行版更新节奏限制。

1、Ubuntu或Debian系统:运行sudo apt update && sudo apt install nodejs npm,安装完成后系统自动配置/usr/bin/node和/usr/bin/npm路径。

2、CentOS 8+或RHEL 8+:执行sudo dnf module install nodejs,该命令启用模块流并安装默认LTS版本。

3、CentOS 7或RHEL 7:先启用EPEL源sudo yum install epel-release,再运行sudo yum install nodejs npm。

4、验证是否生效:执行which node与which npm,输出应为/usr/bin/node和/usr/bin/npm;若仍报错,请检查$PATH是否包含/usr/bin,可通过echo $PATH确认。

二、通过NodeSource仓库安装指定LTS版本(推荐稳定生产环境)

NodeSource提供经签名验证的二进制包,版本更新及时且兼容性经过测试,能绕过系统仓库陈旧版本问题。

1、Ubuntu/Debian LTS系统:下载并执行LTS源配置脚本curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -。

2、CentOS/RHEL系统:运行curl -sL https://rpm.nodesource.com/setup_lts.x | sudo bash -。

3、更新包索引并安装:Ubuntu/Debian执行sudo apt-get install -y nodejs;CentOS/RHEL执行sudo yum install -y nodejs。

4、安装后自动写入/usr/bin/node和/usr/bin/npm,无需手动配置PATH;但需注意:部分旧版CentOS可能将npm单独打包,如提示npm: command not found,请额外执行sudo yum install -y npm。

三、使用nvm管理多版本Node.js(适合开发者日常切换)

nvm在用户级隔离Node.js版本,不修改系统路径,所有文件存于~/.nvm,避免权限冲突与全局污染。

1、安装nvm:执行curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash。

2、重载shell配置:对bash用户运行source ~/.bashrc,对zsh用户运行source ~/.zshrc。

3、列出可用LTS版本:nvm list-remote --lts,输出类似v20.12.2、v18.20.4等。

Browser Js
Browser Js

轻量级CDP浏览器控制,适用于AI代理。相较于内置浏览器工具,token消耗降低3‑10倍,仅在浏览时使用。

下载

4、安装并设为默认:nvm install --lts后立即执行nvm alias default 'lts/*'。

5、验证:运行nvm use default,再执行node -v与npm -v;此时which node将指向~/.nvm/versions/node/vXX.X.X/bin/node,该路径已由nvm自动注入$PATH。

四、手动解压二进制包并配置环境变量(适用于离线或定制路径场景)

此方法完全控制安装位置,所有文件集中于自定义目录,适合容器化部署或严格权限管控环境。

1、下载对应架构的tar.xz包:例如wget https://nodejs.org/dist/v20.12.2/node-v20.12.2-linux-x64.tar.xz。

2、解压至/opt:sudo tar -xf node-v20.12.2-linux-x64.tar.xz -C /opt,生成目录/opt/node-v20.12.2-linux-x64。

3、创建软链接统一入口:sudo ln -s /opt/node-v20.12.2-linux-x64/bin/node /usr/local/bin/node,同理链接npm:sudo ln -s /opt/node-v20.12.2-linux-x64/bin/npm /usr/local/bin/npm。

4、若需全局生效且不依赖软链接,可编辑/etc/profile(系统级)或~/.bashrc(用户级),追加以下两行:
export NODE_HOME=/opt/node-v20.12.2-linux-x64
export PATH=$NODE_HOME/bin:$PATH

5、使配置生效:source /etc/profile或source ~/.bashrc;验证echo $NODE_HOME应输出路径,node -v应返回版本号。

五、npm全局目录与缓存路径自定义配置

默认npm全局安装路径为~/.npm-global或/usr/lib/node_modules,易引发权限错误;建议显式设置prefix与cache,避免sudo安装。

1、创建专用目录:mkdir -p $HOME/node_global $HOME/node_cache。

2、配置.npmrc文件:执行echo "prefix=$HOME/node_global" >> ~/.npmrc与echo "cache=$HOME/node_cache" >> ~/.npmrc。

3、将全局bin目录加入PATH:在~/.bashrc末尾添加export PATH=$HOME/node_global/bin:$PATH,再执行source ~/.bashrc。

4、验证配置:运行npm config get prefix应返回/home/[username]/node_global;安装全局包如npm install -g http-server后,执行http-server -v应可直接调用。

5、关键提示:务必确保$HOME/node_global/bin位于$PATH最前端,否则旧版全局命令可能优先被调用。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
node.js调试
node.js调试

node.js调试可以使用console.log()输出调试信息、断点调试和第三方调试工具。详细介绍:1、console.log()输出调试信息,通过在代码中插入console.log()语句,开发人员可以在控制台输出变量的值、函数的执行结果等信息,以便观察代码的执行流程和状态;2、断点调试,可以在代码中设置断点,以便在特定位置暂停代码的执行,观察变量的值和执行流程等。

2023.09.19

9949

8

JavaScript 全栈开发基础(Node.js + 前端)
JavaScript 全栈开发基础(Node.js + 前端)

本专题系统介绍 JavaScript 在全栈开发中的核心知识结构,涵盖 Node.js 基础、Express/Koa 接口构建、前端交互设计、模块化与包管理、数据库连接、前后端数据通信与部署流程。通过完整项目示例,帮助学习者掌握从浏览器到服务器的一体化开发能力,实现真正意义上的全栈入门。

2025.11.26

414

14

Node.js后端开发与Express框架实践
Node.js后端开发与Express框架实践

本专题针对初中级 Node.js 开发者,系统讲解如何使用 Express 框架搭建高性能后端服务。内容包括路由设计、中间件开发、数据库集成、API 安全与异常处理,以及 RESTful API 的设计与优化。通过实际项目演示,帮助开发者快速掌握 Node.js 后端开发流程。

2026.02.10

761

17

JavaScript Node.js流处理与高效数据管道构建实践
JavaScript Node.js流处理与高效数据管道构建实践

本专题聚焦 Node.js 在大规模数据处理场景中的应用,系统讲解 Stream 流机制、背压控制、管道(Pipe)处理以及文件与网络数据流的高效传输方式。内容包括可读流、可写流、双工流与转换流的实现原理,并结合实际案例构建高性能数据处理管道,帮助开发者提升数据处理效率与系统吞吐能力。

2026.04.07

304

13

TypeScript Node.js 全栈工程化与Monorepo架构实践
TypeScript Node.js 全栈工程化与Monorepo架构实践

本专题围绕 TypeScript 在 Node.js 全栈开发中的工程化实践展开,系统讲解 Monorepo 架构设计、包管理策略、模块复用机制以及服务端与前端统一类型系统的构建方法。通过真实项目案例,帮助开发者提升大型全栈项目的可维护性与协作效率。

2026.06.16

538

8

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

3910

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3353

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

2493

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

6030

7

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习