VMware 安装 CentOS 7.x
1 下载镜像
在 CentOS 的官网 https://wiki.centos.org/Download 可以下载 CentOS 各个版本的镜像文件。
包括已经不在维护的各个版本:
也可以去阿里的镜像仓库去下载 mirrors.aliyun.com/centos。
2 安装 CentOS 7.9
下载完 CentOS-7-x86_64-Minimal-2009 就可以安装了,这里用的是 Minimal 版本,安装完成后,系统中只有最基本的组件,方便学习。
命名虚拟机并选择系统文件保存路径:
如果物理机支持大与 4GB 以上的单文件,可以选择“将虚拟磁盘存储为单个文件”
由于服务器用不到声卡,USB 控制器,打印机这些设备,可以将这些设备移除:
可以不用勾选「创建后开启此虚拟机选项」:
点击 INSTALLATION DESTINATION
INSTALLATION DESTINATION 默认值不用改,直接点 Done
如果想要创建带桌面的虚拟机,可以在 SOFTWARE SELECTION 中选择 GNOME Desktop:
设置 ROOT 密码和创建用户
等待安装任务
重启完成登录
3 网络配置
一般新装的最小化的 CentOS 7.x 系统是没有网络配置的,而安装命令就是联网下载软件,所以网络配置是必须的。
CentOS 7.x 的默认网卡是 essxx,我们可以在配置文件 /etc/syconfig/network-scripts
中看到:
可以先把 ifcfg-ensxx 这个文件备份下,然后修改 onboot
参数从 no 修改为 yes ,保存,重启机器。
重启完后就可以 ping 通网络了:
4 ifconfig command not found
安装 net-tools 工具
yum install -y net-tools
5 修改网卡为 eth0
CentOS 7.x 的网卡不是 eth0 而是 ensxx,这是 CentOS 7.x 的一致性网络设备命名导致的,可以使用以下方式,将网卡名称回到 eth0 格式。
修改配置
vim /etc/default/grub
中添加
biosdevname=0 net.ifnames=0
执行命令
grub2-mkconfig -o /boot/grub2/grub.cfg
reboot
重启机器
6 设置静态 IP
NAT 模式是 VMware 虚拟机默认使用的模式,其最大的优势就是虚拟机接入网络非常简单,只要物理机可以访问网络,虚拟机就可以访问网络。网络结构如下图:
所谓的静态 ip ,就是设置后固定不变的,因为在真实环境中,需要为所有的服务器配置静态 ip,从而确保通过一个 ip 地址只能找到一台服务器。
6.1 设置
在修改配置文件之前,为了防止配置出错,建议提前备份配置文件 ifcfg-eth0
。我把原来的 ifcfg-ens32 重命名为了 ifcfg-eth0。
cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0.bak
我们需要把 ifcfg-eth0
配置文件中的 BOOTPROTO
的值设置为 static
,将 IPADDR
(IP 地址)的值设置为其所在的子网中正确的,无冲突的 ip 地址即可。
在 NAT 模式中,我们需要找到 4 个地址才能确定我们的无冲突的 ip 到底是哪些。
- 子网 ip
- VMnet8 虚拟网卡 ip
- NAT 网关 ip
- DHCP 地址池
接下来找这几个参数:
点击【NAT设置】查看子网掩码和网关 IP。点击【DHCP 设置】查看起始 IP 地址和结束 IP 地址。
打开物理机的 cmd 输入 ipconfig
命令:
如果发现物理机的 VMnet8 跟虚拟机的不在一个网段,可以在「虚拟网络适配器」中「还原默认设置」:
所以,除去这几个地址,192.168.48.3
~ 192.168.48.127
范围内的 ip 都可以作为静态 ip 使用。
vi ifcfg-eth0
需要修改的地方为:
- 将
ONBOOT
改为yes
BOOTPROTO
由dhcp
改为static
- 增加
IPADDR
(ip 地址) - 增加
NETMASK
(子网掩码) - 增加
GATEWAY
(网关) - 增加
DNS1
(首选域名服务器)
其中,网关不设置,虚拟机只能在局域网内访问,无法访问外部网络。DNS 不设置则无法解析域名。 DNS 可以设置成跟网关一样的地址。
设置完成后执行:systemctl restart network
命令使配置生效。
6.2 访问测试
6.3 物理机测试
在物理机中 ping 虚拟机 ip 地址:
物理机共向 ip 地址 192.168.48.8
发送了 4 次 ping 请求,4 次都是成功的,发送的数据包为 32 字节,TTL(生存时间值)为 64,其中 TTL 在发送时的默认值为 64,每经过一个路由则减 1 ,此次显示最终结果为 64 说明中间没有经过路由。
6.4 虚拟机测试
6.5 说明
因为我把默认网卡从 ensxx 改成了 eth0 所以在修改静态 ip 是把配置文件也改成了 ifcfg-eth0
7 FAQ
- ❓重启网卡问题
loaded (/etc/rc.d/init.d/network; bad; vendor preset: disabled)
☝️ 以上这个问题可以参考centos7重启网卡提示错误的解决方法这篇文章。