如何在VM虚拟机中搭建CentOS7并配置镜像仓库与网络

一、环境准备与VMware虚拟机创建

1.1 硬件与软件要求

在搭建CentOS 7虚拟机前,需确保物理机满足以下条件:

  • CPU:支持虚拟化的Intel/AMD处理器(开启VT-x/AMD-V)
  • 内存:建议分配4GB以上(基础开发环境)
  • 存储:预留至少20GB磁盘空间(推荐SSD)
  • 软件:VMware Workstation Pro/Player(版本15.5+)或ESXi

⚠️ 注意事项:若物理机内存不足,可通过动态内存分配(Dynamic Memory)优化资源占用,但需设置最小内存阈值(如2GB)。

1.2 创建虚拟机步骤

  1. 新建虚拟机:选择”典型”配置,引导类型选”稍后安装操作系统”
  2. 选择系统类型:Linux → CentOS 7 64位
  3. 命名与存储:建议命名格式为CentOS7-DevEnv-日期,存储路径避免系统盘
  4. 磁盘配置
    • 磁盘类型:SCSI(推荐)
    • 分配空间:20GB(单文件存储或分割多个文件)
    • 勾选”立即分配所有磁盘空间”可提升性能(需足够物理空间)
  5. 自定义硬件
    • 移除不必要的设备(如打印机、声卡)
    • 网络适配器选择”NAT模式”(后续可调整)

二、CentOS 7系统安装与基础配置

2.1 安装过程详解

  1. 启动安装程序:挂载CentOS 7 ISO镜像后,选择”Install CentOS 7”
  2. 语言选择:建议英文(避免本地化问题),时区选Asia/Shanghai
  3. 软件选择
    • 基础开发环境:勾选”Development and Creative Workstation”
    • 最小化安装:选择”Minimal Install”(需手动配置开发工具)
  4. 磁盘分区方案
    1. # 推荐分区表(LVM逻辑卷管理)
    2. /boot 1GB ext4
    3. / 15GB xfs
    4. /home 3GB ext4
    5. swap 2GB (内存≥8GB时可设为1GB
  5. 网络配置
    • 启用网卡:eth0(传统命名)或ens33(Predictable Network Interface Names)
    • 手动设置IP(可选):
      1. IPADDR=192.168.122.100
      2. NETMASK=255.255.255.0
      3. GATEWAY=192.168.122.1
      4. DNS1=8.8.8.8

2.2 安装后基础优化

  1. 更新系统
    1. sudo yum update -y
    2. sudo reboot
  2. 安装常用工具
    1. sudo yum install -y vim wget curl net-tools tree
  3. SSH服务配置
    • 修改/etc/ssh/sshd_config
      1. PermitRootLogin no
      2. PasswordAuthentication no
      3. Port 2222 # 修改默认SSH端口
    • 重启服务:sudo systemctl restart sshd

三、镜像仓库配置与优化

3.1 国内镜像源替换

CentOS官方源在国内访问较慢,推荐替换为阿里云/清华源:

  1. 备份原repo文件
    1. sudo mkdir /etc/yum.repos.d/backup
    2. sudo mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/
  2. 下载阿里云镜像配置
    1. sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
  3. 生成缓存
    1. sudo yum makecache fast

3.2 配置EPEL与第三方仓库

  1. 安装EPEL仓库
    1. sudo yum install -y epel-release
  2. 添加Nginx官方仓库(示例):
    1. sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
  3. 仓库优先级配置
    编辑/etc/yum/pluginconf.d/priorities.conf启用优先级,并在各repo文件中添加priority=N(数字越小优先级越高)。

四、网络配置进阶

4.1 静态IP配置(NAT模式)

  1. 修改网卡配置
    1. sudo vim /etc/sysconfig/network-scripts/ifcfg-ens33

    修改内容示例:

    1. BOOTPROTO=static
    2. ONBOOT=yes
    3. IPADDR=192.168.122.100
    4. NETMASK=255.255.255.0
    5. GATEWAY=192.168.122.1
    6. DNS1=223.5.5.5
    7. DNS2=223.6.6.6
  2. 重启网络服务
    1. sudo systemctl restart network

4.2 主机名与DNS解析

  1. 设置主机名
    1. sudo hostnamectl set-hostname centos7-dev
  2. 本地DNS解析
    编辑/etc/hosts添加:
    1. 192.168.122.100 centos7-dev

4.3 防火墙与SELinux配置

  1. 防火墙规则
    1. sudo firewall-cmd --permanent --add-service=http
    2. sudo firewall-cmd --permanent --add-port=2222/tcp
    3. sudo firewall-cmd --reload
  2. SELinux模式切换(开发环境推荐):
    1. sudo setenforce 0 # 临时关闭
    2. sudo vim /etc/selinux/config # 永久修改(SELINUX=permissive)

五、验证与故障排除

5.1 基础验证命令

  1. # 网络连通性测试
  2. ping -c 4 mirrors.aliyun.com
  3. # 仓库可用性检查
  4. yum repolist enabled
  5. # 服务状态检查
  6. systemctl status network firewalld

5.2 常见问题解决

  1. 网络不通
    • 检查VMware虚拟网络编辑器中的NAT规则
    • 确认物理机防火墙未拦截虚拟网络流量
  2. YUM更新失败
    • 检查/etc/resolv.conf的DNS配置
    • 验证镜像源是否可用(curl -I http://mirrors.aliyun.com
  3. SSH连接失败
    • 检查防火墙是否放行新端口
    • 确认sshd_config中的PortListenAddress设置

六、开发环境扩展建议

  1. 自动化部署:使用Ansible/Puppet批量管理多台虚拟机
  2. 容器化支持:安装Docker CE:
    1. sudo yum install -y yum-utils
    2. sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    3. sudo yum install -y docker-ce
  3. 性能监控:安装htopglances等工具

通过以上步骤,您可以在VMware中构建一个高效、稳定的CentOS 7开发环境,并通过镜像仓库优化和网络配置提升工作效率。实际部署时,建议根据项目需求调整资源配置,并定期备份重要数据。