centos7.4安装node和npm

直接安装会出现:你的 CentOS 7 系统无法连接到默认的 yum 仓库(网络/DNS 问题或镜像源失效)

问题原因

  1. ​DNS 解析失败​
    • 系统无法解析 mirrorlist.centos.org(提示 Could not resolve host
  2. ​网络连接问题或镜像源失效​
    • 官方仓库可能已不再维护(CentOS 7 已结束生命周期)

解决方案

第一步:修复 DNS 解析
复制代码
# 临时配置 DNS(使用 Google 公共 DNS)
echo "nameserver 8.8.8.8" >> /etc/resolv.conf
第二步:更换国内镜像源(如阿里云)
  1. 备份原仓库配置

    复制代码
    mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
  2. 下载阿里云镜像源

    复制代码
    curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
  3. 清理缓存并更新

    复制代码
    yum clean all
    yum makecache
第三步:安装 Node.js 和 npm
复制代码
# 安装 EPEL 仓库(Extra Packages for Enterprise Linux)
yum install epel-release -y

# 安装 Node.js 和 npm
yum install nodejs npm -y

备选方案(如果镜像源仍不可用)

方法一:手动安装 Node.js
  1. 从 NodeSource 安装最新版本

    复制代码
    curl -fsSL https://rpm.nodesource.com/setup_18.x | bash -
    yum install nodejs -y
方法二:下载二进制包
  1. 访问 Node.js 官网 下载 Linux 二进制包(如 node-v18.17.1-linux-x64.tar.xz

  2. 解压并配置环境变量

    复制代码
    tar -xvf node-v18.17.1-linux-x64.tar.xz
    mv node-v18.17.1-linux-x64 /usr/local/node
    echo 'export PATH=$PATH:/usr/local/node/bin' >> /etc/profile
    source /etc/profile

验证安装

复制代码
node -v  # 应输出版本号(如 v18.17.1)
npm -v   # 应输出版本号(如 9.6.7)

美美部署vue

复制代码
npm install --unsafe-perm
​​npm install​​
基础命令,用于安装当前项目的所有依赖包(基于 package.json 或 package-lock.json)。
​​--unsafe-perm​​
特殊权限参数,用于解决以下问题:
当非 root 用户执行 npm install 时,允许以 root 权限执行某些操作(如写入系统目录)
避免因权限降级(常见于 Docker 容器)导致的安装失败
npm run build:prod
打包生产环境,dist目录是打包后成品

注意事项

  • 如果系统时间不正确,可能导致 HTTPS 证书错误,同步时间:

    复制代码
    yum install ntpdate -y
    ntpdate ntp.aliyun.com
  • CentOS 7 已停止维护,建议升级到 CentOS Stream 8/9 或迁移到其他系统(如 Ubuntu 22.04)。

相关推荐
why技术7 小时前
AI 写的文章,可能都带着手敲一遍都去不掉的“隐形水印”。
前端·人工智能·后端
愚公搬代码7 小时前
【愚公系列】《Android应用案例开发大全》016-LBS类应用掌上杭州(辅助工具类的开发)
android·前端
CodeSheep7 小时前
又一个华为天才少年,离职了!
前端·后端·程序员
kyriewen7 小时前
面试官说"打开你的AI工具"——我才发现,他考的根本不是写代码
前端·人工智能·面试
IT_陈寒8 小时前
Vue的双向绑定把我坑惨了,原来这个场景不能用
前端·人工智能·后端
hunterandroid9 小时前
[Android 从零到一] Compose LazyColumn 性能优化:key、稳定性与重组治理
android·前端
烬羽9 小时前
从 nest new 到 Hello World:一个最小 NestJS 项目,讲透工厂 + 装饰器 + 模块化
设计模式·node.js·nestjs
lichenyang4539 小时前
从一次团队邀请开始:用 React、NestJS 与 Socket.IO 做可靠的实时通知
前端
vtian9 小时前
一篇文章吃透 Monorepo:pnpm + Turborepo + Changesets 全流程实战(含 8 个踩坑)
前端
默_笙9 小时前
❗ 点击计数按钮,为什么"峨眉队"也跟着重新渲染?React.memo 说:我记住了
前端·javascript