Linux情况下安装nmp(Centos情况)保姆级教学 一步到位

[复制链接]
发表于 2026-10-3 11:47:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×

先把逻辑理清楚:npm 离不开 Node.js

npm 是 Node.js 自带的包管理器,它不是独立能装的东西——Node.js 装完 npm 就在 node_modules/npm 里跟着有了。所以在 Linux(以 CentOS 为例)上装 npm,本质是装 Node.js,然后按需把 npm 的下载源换到国内镜像加速。

一、更新系统软件包

装之前先更新一下,避免依赖版本打架:

sudo yum update -y
sudo yum install -y gcc-c++ make

gcc-c++ 和 make 是后面编译原生模块的必备工具,很多 Node 包(如 node-sass、bcrypt)安装时要现场编译,缺这两样会直接报 make: command not found。

二、加 NodeSource 的 Yum 源

CentOS 默认源里的 Node 版本很老,想装新版本得挂第三方源。NodeSource 是最常用的:

curl -sL https://rpm.nodesource.com/setup_20.x | sudo -E bash -

URL 里的 20.x 决定装哪个大版本,14.x、16.x、18.x 也都有,按项目要求选。跑完这条命令,/etc/yum.repos.d/ 下会多一个 nodesource 的 repo 文件。

三、安装 Node.js

sudo yum install -y nodejs

过程中有 Is this ok [y/N] 就一路 y。

四、验证

node --version
npm --version

两条都能打印出版本号就成功了。只看 node -v 不够——npm 经常因为装完没重建命令链接而报 npm: command not found,这种情况下执行 sudo yum reinstall nodejs 重建一下即可。

五、换 npm 镜像源(国内加速)

默认源在境外,npm install 动辄卡几分钟。换淘宝(现已更名为 npmmirror)镜像:

npm config set registry https://registry.npmmirror.com

# 验证是否生效
npm config get registry

输出是 npmmirror 的地址就对了。临时单次用的话可以加参数:

npm install 包名 --registry=https://registry.npmmirror.com

六、CentOS 7 的两个特别提醒

  • CentOS 7 已停止维护,默认源还指向 vault.centos.org,yum update 可能很慢或报错。先换 vault 镜像或 docker-ce 阿里云源再装。
  • Node 版本选择:Node 18+ 在 CentOS 7 上能跑,但更高版本(20+ 某些补丁版)对新 glibc 有隐性要求;容器里跑最省事。老项目锁 Node 14 的话,把第二步的 setup_20.x 换成 setup_14.x 即可,其余不变。
  • 装完先看路径:which node、which npm 应该在 /usr/bin 或 /usr/local/bin,不在 PATH 里的话 export PATH=$PATH(dirname $(which node))。

七、常见报错速查

  • E: Unable to find package nodejs 类错误源没生效 → 先 yum clean all && yum makecache。
  • node: command not found → 安装中断了,看 yum history 回滚后重试,或 reinstall nodejs。
  • npm ERR! gyp ERR! stack Error: not found: make → 补 yum install -y gcc-c++ make python3。
  • SSL error 拉包失败 → 镜像源没切成功,或者系统 CA 太旧,yum update ca-certificates。

小结

记一条主线:yum 更新 → 挂 NodeSource 源 → yum install nodejs(npm 自带)→ 验证两个版本号 → npm config set registry 换国内镜像。任何时候 npm 报「找不到」先 node -v 确认 Node 真的装上了——绝大多数 npm 问题根本不是 npm 的问题。

qidao123.com企服评测-应用市场 编辑提示

回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表