前言

接触 MacOS 系统后,也是有许多不太习惯的地方,其中安装 Linux 虚拟机并设置静态 IP 的过程也是出现了小波折,因此在本文将该过程进行记录。本文使用 CentOS 7 ,是一个企业级的 Linux 发行版本。

为什么需要使用到静态 IP 呢?因为使用动态 IP 会造成虚拟机每次开机 IP 会发生变化,造成 ssh 连接需要经常性修改,会造成诸多不便。

注:该日期恰好 CentOS 停止更新后不久,我在完成联网后一直在 yum 源上出现问题,官方源报错 Cannot find a valid baseurl for repo,换成阿里云源也是连接失败,花了挺长时间也无法解决,也不清楚具体是什么情况。总之,随着 CentOS 的停更,其热度也会逐渐下降,之后我会去学习 Ubuntu 的使用了,这篇文章也就当作留念吧。

又注:虚拟机 Ubuntu 的安装过程可以参考 Bilibili 的这篇教程:macOS 使用 VMware Fusion 安装 Ubuntu 桌面版。这篇教程很详细,我就不再开新文章记录我自己的过程了,安装后使用 ITerm 2 进行 ssh 连接的过程也是可以类比的。

虚拟机安装

不得不说,MacOS 系统 VMware Fusion 用起来不如 Windows 系统 VMware Workstation 用起来舒服,相关教程也少一些,但总归还是有的吧!只要有前人指路,就不会太难搞定!

VMware Fusion 可以通过官网下载并安装,CentOS 7 的镜像文件可以使用 CSDN 上这篇博客所提供的,感谢这位博主!如果自己寻找镜像文件,需要注意使用 Mac 芯片的镜像文件,因为 MacOS 与 Windows 虚拟机使用的镜像文件是不同的。

将 VMware Fusion 和镜像文件都加载完毕后,打开 VMware Fusion,选择从光盘或映像中安装。

从映像文件安装系统

操作系统建议选择「其他 Linux 6.x 内核 64 位 ARM」,在为虚拟机确定名字后,会进入 CentOS 7 系统安装界面。

选择操作系统

如果按照其他博主的推荐去选择「其他 64 位 ARM」,会在安装开始时一直卡在 Install CentOS 7 界面处,选择完后还是会回到该界面。经测试,操作系统选择「其他 Linux 6.x 内核 64 位 ARM」是不会卡在这里的,但是不管这里有没有卡住,后面进行设置的步骤都是必须的。

卡在 Install 界面

如果你不幸遇到上述情况,需要关闭虚拟机,进入「设置」,修改处理器为「2 个处理器内核」即可解决,内存可以适当多增加一些,修改完成后点击「显示全部」自动保存,后面需要再修改一下硬盘容量。

修改虚拟机处理器和内存

硬盘容量调整至 50GB 基本足够使用,修改完后点击「应用」。

调整虚拟机硬盘容量

再次打开虚拟机,可以很容易地到达如下界面,后面几步网络教程很多,也很简单,不在此赘述。

进入熟悉的页面

修改网络配置

查看物理机 IP

MacOS 可以通过终端命令 ifconfig 获取 IP 地址,如果连接的无线网络的话,那么 en0: 中在 inet 后的一串数字便是目前的 IP 地址。

在本文中,假设我的 IP 地址为 192.168.10.127

VMware 网络设置

进入 VMware Fusion 后,左上角点击 VMware Fusion,选择设置,进入设置界面。

进入设置页面

进入设置界面的网络设置,需要先点击左下方的锁图标来解锁「自定」的添加,点击 + 来进行自定义网络设置。

虚拟机 IP 地址的前两部分一定要和物理机 IP 地址相同,为了便于记忆,我只在最后一部分进行了改变。端口号设置为 23,子网 IP 要与设置的虚拟机 IP 前三部分相同,最后一部分为 0。子网掩码要设置为 255.255.255.0。修改完成后记得点击「应用」。

由于物理机 IP 地址为 192.168.10.127,为了方便记忆,可设置虚拟机 IP 地址为 192.168.10.128

设置网络

之后需要在虚拟机设置中将网络适配器换成自定义的网络设置。网络适配器的设置与处理器和硬盘等设置在同一个界面。

完成以上操作后,进入虚拟机的终端,进入 /etc/sysconfig/network-scripts 文件夹下,可以发现有 ifcfg-ens160 的文件(也可能文件名为 ifcfg-ens33),进入该文件进行修改,也可直接在根目录下使用以下命令进入该文件:

1
$ vi /etc/sysconfig/network-scripts/ifcfg-ens160

进入文件后按 i 键进行修改,主要修改六个位置:

  • BOOTPROTO 改成 static
  • ONBOOT 改成 yes
  • 添加 IPADDR、NETMASK、DNS1、GATEWAY
    • IPADDR 即之前所设置的虚拟机 IP 地址
    • NETMASK 子网掩码固定 255.255.255.0
    • GATEWAY 前三部分与 IPADDR 一致,最后一部分固定为 2
    • DNS1 与 GATEWAY 相同,或者 114.114.114.114

修改网络配置文件

修改后按 esc 键,并输入 :wq 保存并退出,注意需要输入指令 systemctl restart network 重启网络使网络配置的修改生效。

此时,可以输入 ping www.baidu.com 查看是否能够成功连接网络,如果收到回复,证明网络连接成功!

网络连接正常

使用 iTerm 2 远程连接

是否觉得 VMware 中虚拟机操作起来有诸多不便?我们可以通过一些工具比如 iTerm 2 来在物理机上直接操作 Linux 系统的终端。

打开 iTerm 2 之后,可直接在终端输入 ssh root@ip 来与虚拟机进行连接,此处我们输入 ssh [email protected],稍等后输入密码即可将其作虚拟机的终端使用。

iTerm2 运行终端

或者可以通过快捷键 command + o 进入 Profiles 界面,新增 Profiles 并将指令填入。

Profiles 设置

在该方法中,之后需要建立连接时通过快捷键进入 Profiles 界面,双击所创建的 Profiles 即可开始连接。

参考文章

CSDN - M系列 Mac如何安装CentOS7虚拟机(附安装包下载链接)

CSDN - Centos7配置静态IP地址