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)。

相关推荐
LYFlied1 天前
Vue版本演进:Vue3、Vue2.7与Vue2全面对比
前端·javascript·vue.js
PieroPC1 天前
Nicegui 组件放在页面中间
前端·后端
Airene1 天前
Vite 8 发布 beta 版本了,升级体验一下 Rolldown
前端·vite
冰暮流星1 天前
css3如何引入外部字体
前端·css·css3
ByteCraze1 天前
从零到一:构建一个实时语音翻译应用(Vue3 + Web Speech API)
前端·开源·github
名字被你们想完了1 天前
Flutter 实现一个容器内部元素可平移、缩放和旋转等功能(三)
前端·flutter
用户12039112947261 天前
从零掌握 React JSX:为什么它让前端开发像搭积木一样简单?
前端·react.js·面试
Jonathan Star1 天前
git commit --amend 是 Git 中用于修改最后一次提交的核心命令
前端·chrome·git
在掘金801101 天前
RequireJS 详解
前端·javascript
你真的可爱呀1 天前
3.MySQL 数据库集成
mysql·node.js·express