ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Mac VMware Fusion安装CentOS系统:跨平台开发环境搭建与配置指南

Mac VMware Fusion安装CentOS系统:跨平台开发环境搭建与配置指南

1. 项目概述:为什么要在Mac上跑CentOS?

如果你和我一样,是个常年混迹在Mac和Linux两个世界里的开发者或运维,那这个场景你一定不陌生:手头的主力机是MacBook,但日常工作里总有些活儿离不开Linux环境。可能是要测试一个只在CentOS上跑得稳的服务,可能是要复现一个生产环境的Bug,又或者只是想有个干净、隔离的环境来折腾点新东西,不想污染了macOS本身。

这时候,虚拟机就成了最直接、最可靠的解决方案。而在Mac平台上,VMware Fusion无疑是这个领域的“老大哥”。它不像Parallels那样有时过于追求与macOS的“融合”而牺牲了虚拟化的纯粹性,也不像VirtualBox那样在性能和兼容性上偶尔会掉链子。Fusion在提供接近原生性能的同时,保持了极好的稳定性和对各类操作系统镜像的广泛支持,尤其对于服务器领域的常青树——CentOS,支持得相当到位。

所以,“Mac VMware Fusion 安装 Centos 系统”这个标题,背后解决的绝不仅仅是一个“安装”动作。它解决的是跨平台开发与测试的环境统一问题,是在个人电脑上安全构建服务器沙盒的需求,也是学习和熟悉企业级Linux环境的一条捷径。无论你是后端开发、DevOps工程师、学生,还是任何需要接触Linux的技术爱好者,这套组合都能给你提供一个强大且可控的练习场。

接下来,我就以最新的VMware Fusion 13(支持Apple Silicon和Intel芯片)和CentOS Stream 9(作为CentOS 8的后续演进版本,更贴近前沿)为例,带你走一遍从零开始的完整流程。我会把每个步骤背后的“为什么”讲清楚,并分享那些只有踩过坑才知道的细节和技巧。

2. 前期准备:镜像、工具与关键决策

工欲善其事,必先利其器。在点击“新建虚拟机”之前,有几件关键事情需要确定,这直接关系到后续安装的顺利程度和使用体验。

2.1 核心工具选型:VMware Fusion版本解析

首先得搞定VMware Fusion。目前主要分两个大版本:

  1. VMware Fusion 13(或更新版本):这是专为Apple Silicon(M1/M2/M3)芯片Mac设计的版本,使用ARM架构的虚拟化技术。它无法运行传统的x86_64架构的Linux系统,只能运行ARM版本。
  2. VMware Fusion 12(或更早的兼容版本):这是为Intel芯片Mac设计的版本,运行x86_64架构的虚拟机。

重要提示:你的Mac芯片类型决定了你能安装什么架构的CentOS。这是整个项目的第一步,也是最重要的一步,选错了后面全白费。

如何查看你的Mac芯片?点击屏幕左上角苹果菜单 -> “关于本机”。在“芯片”一项,如果显示“Apple M1”、“Apple M2”等,就是Apple Silicon;如果显示“Intel Core i5/i7/i9”等,就是Intel。

我的选择建议:

  • Apple Silicon Mac用户:你必须下载CentOS的ARM架构(aarch64)镜像。官方的CentOS Stream 9提供了aarch64版本。同时,确保安装VMware Fusion 13+。
  • Intel Mac用户:你可以选择传统的x86_64架构镜像,资源更丰富。VMware Fusion 12或13(for Intel)都行。

我个人使用的是M2 MacBook Air,因此后续演示将基于VMware Fusion 13CentOS Stream 9 aarch64镜像。Intel用户的操作流程几乎完全一致,只是选择的镜像文件不同。

2.2 系统镜像下载:CentOS Stream vs. 历史版本

CentOS Linux 8已在2021年底停止维护,CentOS 7也即将结束生命周期。红帽目前的重点是CentOS Stream,它作为RHEL的上游开发分支,更适合用于学习和前沿环境搭建。

镜像下载地址:访问 CentOS 官方站点或可靠的镜像站(如阿里云镜像、清华镜像)。搜索 “CentOS Stream 9” 并选择对应的架构(aarch64 或 x86_64)。通常我们下载 “DVD ISO” 或 “Minimal ISO”。

  • Minimal ISO:体积小(约1GB),只包含最基本系统,需要安装后手动配置很多内容,适合老手。
  • DVD ISO:体积大(约8-10GB),包含丰富的软件包,安装过程更友好,适合大多数用户。

对于新手,我强烈建议下载DVD ISO,避免安装后因缺少基础工具(如网络配置命令nmcli)而手足无措。

2.3 虚拟机创建前的关键配置预设

打开VMware Fusion,点击“新建”。不要急着下一步,有几个预设选项需要理解:

  • 从光盘或映像中安装:这是我们选择的方式,指向你下载好的.iso文件。
  • 操作系统选择:即使列表里没有明确的“CentOS Stream 9”,我们可以选择“Linux” -> “CentOS 8 64位”(对于Stream 9兼容性很好)。VMware会根据这个选择预配置虚拟硬件(如磁盘控制器类型、网卡型号),这对系统能否正确识别硬件至关重要。
  • 固件类型:对于CentOS 8/9,默认且应选择UEFI。这关系到系统启动方式和后续可能的分区方案。

3. 虚拟硬件配置详解:给CentOS一个合适的“家”

创建虚拟机时,Fusion会让我们配置虚拟硬件。这些参数不是越大越好,需要根据宿主Mac的资源和虚拟机用途来权衡。

3.1 处理器与内存:性能的基石

  • 处理器核心数:分配给虚拟机的CPU核心数量。建议设置为宿主Mac物理核心数的1/4到1/2。例如,我的M2有8核,我分配给虚拟机2个核心。分配太多会影响宿主机性能,太少则虚拟机卡顿。
    • 计算逻辑:如果你的工作负载主要是编译或并行任务,可以适当多给。如果只是跑跑服务、做做测试,2核足够。
  • 内存大小:这是影响虚拟机流畅度的最关键因素。CentOS Stream 9图形界面安装和运行,至少需要2GB(2048MB)。如果要运行数据库等应用,建议4GB起步。
    • 经验值:对于8GB内存的Mac,分2-3GB给虚拟机是安全的。对于16GB内存,分4-6GB可以获得很棒的体验。务必在宿主机“活动监视器”中留意内存压力,黄色或红色表示需要调整。

3.2 硬盘:类型、大小与分割策略

这是最容易出问题也最需要理解的地方。

  • 硬盘大小:默认的20GB对于只装基础系统的Minimal安装够用,但对于DVD安装和后续安装软件就显得捉襟见肘。我建议至少设置为40GB。不用担心,虚拟机磁盘文件是“稀疏磁盘”,不会立刻占用你Mac上40GB空间,而是随着虚拟机内文件增多而动态增长。
  • 虚拟磁盘类型:保持默认的“SCSI”或“NVMe”即可。CentOS 9能良好识别。
  • 分割磁盘为多个文件:这个选项对于需要在不同Mac间迁移虚拟机文件非常有用。分割成多个2GB的小文件,比单个几十GB的大文件更容易拷贝和备份。如果虚拟机只固定在一台Mac上使用,选择“单个磁盘”文件性能略好一点。

3.3 网络适配器:连通内外的桥梁

网络配置决定了你的CentOS虚拟机如何与外界通信。

  • 网络适配器类型:选择“桥接模式网络”是最常用、最方便的模式。
    • 桥接模式:虚拟机会从你的家庭/公司路由器获取一个独立的IP地址,就像一台真实的物理机接入网络一样。它可以和宿主机、局域网内其他设备、乃至互联网直接通信。这是最推荐给服务器环境模拟的模式。
    • 共享网络(NAT):虚拟机通过宿主机共享一个IP上网,外部网络无法直接访问虚拟机。适合只想让虚拟机上网,不想暴露其服务的场景。
    • 仅主机模式:虚拟机只和宿主机组成一个私有网络,与外界完全隔离。用于纯粹的封闭测试。

对于大多数学习和开发场景,选择“桥接模式”,这样你可以在Mac上用终端SSH连接到虚拟机的IP,操作起来和远程服务器一模一样。

4. CentOS系统安装实操全记录

现在,我们终于可以启动虚拟机并开始安装系统了。将虚拟机的光驱指向下载的ISO文件,开机。

4.1 安装引导与语言选择

虚拟机启动后,会进入CentOS安装引导界面。选择“Install CentOS Stream 9”。 第一个重要选择是语言。注意,这里选择的语言主要是安装界面的语言。我强烈建议选择“English - United States”。为什么?

  1. 绝大多数服务器和生产环境使用英文,避免因语言环境导致软件路径、日志格式出现意外问题。
  2. 当你在终端搜索错误信息时,英文报错信息在互联网上能找到的解决方案远远多于中文。
  3. 可以避免一些软件在中文环境下可能出现的乱码问题。

当然,你可以在系统安装完成后,再在系统设置里添加中文输入法和支持。

4.2 安装信息摘要:最关键配置环节

这是安装的核心步骤,所有配置都在这里完成。

1. 键盘布局保持“English (US)”即可。

2. 时间和日期在这里设置时区。点击地图上上海区域,或从列表中选择“Asia/Shanghai”。务必取消“网络时间”选项(如果虚拟机网络尚未配置,开启会导致安装过程长时间等待或失败)。时间可以在系统装好后用chronyd服务同步。

3. 安装来源因为我们从ISO安装,这里保持默认的“本地介质”即可。

4. 软件选择这是决定你安装完成后得到一个什么系统的关键。

  • Minimal Install:最小化安装,只有一个命令行界面。适合做容器宿主机或极度精简的服务器。
  • Server with GUI:带图形界面(GNOME)的服务器安装。这是我最推荐给新手的选项。它包含了图形桌面和大部分基础的服务器管理工具,你既可以用图形界面熟悉操作,也可以在终端里执行命令。后续如果觉得图形界面占资源,可以禁用图形登录,切换到纯命令行。
  • Workstation:包含更多开发工具和桌面应用,更接近个人桌面系统。

选择“Server with GUI”,然后点击右侧的“附加选项”,我建议勾选“开发工具”,这会安装GCC、Make等编译工具链,以后安装一些源码软件时会省事很多。

5. 安装目的地(磁盘分区)点击进入,你会看到我们之前分配的虚拟磁盘(例如40GB)。这里有两种主要方式:

  • 自动配置分区:最简单。安装程序会自动创建/boot/(根分区)和swap(交换分区)。对于新手和大多数场景,直接点击“完成”使用自动分区是最佳选择
  • 手动配置分区:如果你有特殊需求,比如需要单独挂载/home/var/opt,可以选择手动。但请注意,在UEFI模式下,手动分区必须创建一个EFI系统分区(ESP),格式为vfat,大小至少100MB(建议260MB),挂载点为/boot/efi。这是很多手动分区失败的原因。

6. 网络和主机名这是安装后能否上网的关键!点击进入,你应该能看到一个网络连接(如ens160),默认是关闭的。将其滑块拨到“打开”位置。你可以在下方主机名处,给你的虚拟机起个名字,比如centos-dev。然后点击“应用”。打开后,安装程序通常会自动通过DHCP获取IP地址(桥接模式下),你就能看到分配的IP了。记下这个IP,后面要用它来SSH连接。

7. 根密码与用户创建

  • 根密码(Root Password):必须设置。设置一个强密码,并点击两次“完成”确认。
  • 用户创建(User Creation):强烈建议创建一个日常使用的普通用户。填写用户名(如devuser),设置密码。务必勾选“将此用户设为管理员”,这会将用户加入wheel组,之后可以通过sudo命令获得管理员权限。日常使用应避免直接以root登录,这是一个基本的安全实践。

所有带感叹号的红色项目都配置完成后,右下角的“开始安装”按钮会亮起。点击它,系统就开始安装了。安装过程大约需要10-30分钟,取决于你的Mac硬盘速度和选择的软件包数量。

5. 安装后首次配置与优化

安装完成,重启系统。你会看到GRUB引导界面,进入系统。

5.1 初始设置与许可证接受

首次启动,可能会有一个初始设置向导。对于服务器环境,大部分可以跳过。但有一个关键步骤:许可证信息。你需要进入“许可证”选项,勾选同意许可条款,才能完成配置并进入系统。

5.2 关键的第一步:终端、网络与更新

无论你是否使用图形界面,打开“终端”(Terminal)都是你要做的第一件事。

1. 检查网络在终端输入:

ip addr show

nmcli connection show

查看网络是否已正常连接,并确认IP地址(之前安装时记下的那个)。

2. 测试网络连通性

ping -c 4 8.8.8.8

如果能通,说明虚拟机可以访问互联网。如果不通,回到图形界面的“设置”->“网络”中检查,或在终端尝试:

sudo nmcli networking on

3. 更新系统这是保证系统安全稳定的重要步骤。

sudo dnf update -y

dnf是CentOS 8/9中取代yum的包管理器。-y参数表示自动确认所有询问。这个过程会下载并安装所有可用的更新,可能需要一些时间。

5.3 安装必备增强工具:VMware Tools

VMware Tools是一套由VMware提供的驱动和实用程序,能极大提升虚拟机的体验,包括:

  • 图形界面分辨率自适应(无需手动设置)。
  • 宿主机与虚拟机间共享文件夹(非常实用!)。
  • 时间同步
  • 更好的鼠标集成和复制粘贴

在CentOS Stream 9中,安装非常简单:

sudo dnf install -y open-vm-tools open-vm-tools-desktop

安装完成后,重启虚拟机

sudo reboot

重启后,你会发现鼠标可以在宿主机和虚拟机间无缝移动,屏幕分辨率也能自动调整了。

5.4 配置共享文件夹(可选但强烈推荐)

共享文件夹允许你在Mac和CentOS虚拟机之间轻松传递文件。

  1. 在VMware Fusion菜单中,选择“虚拟机” -> “设置” -> “共享”。
  2. 添加一个你Mac上的文件夹(例如~/Shared)到共享列表。
  3. 在CentOS虚拟机中,共享文件夹通常自动挂载在/mnt/hgfs/目录下。你可以创建一个软链接方便访问:
    sudo ln -s /mnt/hgfs/Shared ~/Desktop/Shared_From_Mac
    这样,你在Mac上放入~/Shared的文件,在Centos桌面的快捷方式里就能看到了。

6. 常见问题与故障排查实录

即使按照步骤操作,也可能会遇到一些问题。这里记录了几个我亲自遇到过的高频问题及其解决方案。

6.1 安装过程中找不到磁盘或无法分区

  • 现象:在“安装目的地”步骤,看不到可用的磁盘,或提示“未选择任何磁盘”。
  • 排查
    1. 检查虚拟机设置中的硬盘是否已添加且大小合理。
    2. 最重要的一点:检查在创建虚拟机时选择的操作系统类型是否正确。如果为CentOS 9选择了过老的操作系统类型(如其他Linux 3.x内核),可能会导致磁盘控制器驱动不匹配。确保选择“Linux” -> “CentOS 8 64位”或类似较新的版本
    3. 如果使用手动分区并启用了UEFI,确认是否创建了/boot/efi分区。

6.2 系统安装后无法启动(黑屏或卡在GRUB)

  • 现象:安装完成重启后,屏幕黑屏或一直停留在GRUB命令行。
  • 排查
    1. 显卡驱动问题(多见于GUI安装):在GRUB菜单(启动时按shift键可调出)中,选择要启动的内核,按e键编辑启动参数。找到以linux开头的一行,在行末添加nomodeset(禁用内核模式设置)。然后按Ctrl+X启动。如果能进入系统,则需要安装正确的显卡驱动或调整显示设置。
    2. 文件系统损坏:在GRUB命令行尝试检查磁盘:ls查看分区,尝试ls (hd0,gpt1)/等查看文件。如果不行,可能需要用安装ISO进入救援模式修复。

6.3 网络无法连接(桥接模式无效)

  • 现象:在CentOS中ip addr显示没有IP地址(只有127.0.0.1),或者有IP但无法ping通外网。
  • 排查步骤
    1. 检查宿主机网络:确保你的Mac本身是通过有线或Wi-Fi正常联网的。桥接模式依赖于宿主机物理网卡的状态。
    2. 检查VMware Fusion网络设置:在Fusion的菜单栏,点击“虚拟机” -> “网络适配器”,确认已连接且模式为“桥接模式”。有时需要在下拉菜单中选择具体的物理网卡(如Wi-Fi或以太网)。
    3. 检查CentOS网络服务
      sudo systemctl status NetworkManager
      确保NetworkManager服务是active (running)的。
    4. 重启网络
      sudo nmcli networking off && sudo nmcli networking on
      或者重启NetworkManager服务:
      sudo systemctl restart NetworkManager
    5. 检查防火墙(初期可暂时关闭排查)
      sudo systemctl stop firewalld sudo systemctl disable firewalld # 永久关闭,生产环境请谨慎操作
      关闭防火墙后测试网络。如果通了,说明是防火墙规则问题,需要配置放行策略。

6.4 共享文件夹不显示或无法访问

  • 现象:在CentOS的/mnt/hgfs/目录下是空的。
  • 排查
    1. 确认VMware Tools已安装:运行vmware-toolbox-cmd -v检查。
    2. 检查共享文件夹设置:在Fusion设置中确认文件夹已共享,并且路径无误。
    3. 手动挂载:有时需要手动挂载HGFS文件系统:
      sudo vmhgfs-fuse .host:/ /mnt/hgfs -o subtype=vmhgfs-fuse,allow_other
      可以将此命令添加到/etc/rc.local(需先创建并赋予执行权限)以实现开机自动挂载。
    4. 权限问题:检查/mnt/hgfs目录的权限,确保你的用户有读取权限。

6.5 系统更新失败(Yum/DNF报错)

  • 现象:执行sudo dnf update时出现Could not resolve hostFailed to synchronize cache等错误。
  • 排查
    1. 网络问题:首先用ping命令测试网络连通性。
    2. 镜像源问题:CentOS的默认镜像源可能在国外。替换为国内镜像源能极大提升速度。
      • 备份原repo文件:sudo mv /etc/yum.repos.d/CentOS-Stream-AppStream.repo /etc/yum.repos.d/CentOS-Stream-AppStream.repo.backup
      • 使用阿里云镜像(以CentOS Stream 9为例):
        sudo curl -o /etc/yum.repos.d/CentOS-Stream-AppStream.repo https://mirrors.aliyun.com/repo/CentOS-Stream-AppStream.repo sudo curl -o /etc/yum.repos.d/CentOS-Stream-Base.repo https://mirrors.aliyun.com/repo/CentOS-Stream-Base.repo sudo curl -o /etc/yum.repos.d/CentOS-Stream-Extras.repo https://mirrors.aliyun.com/repo/CentOS-Stream-Extras.repo
    3. 清理缓存并重试
      sudo dnf clean all sudo dnf makecache sudo dnf update -y

7. 进阶配置与生产环境准备

一个基础的CentOS虚拟机已经就绪。但如果你想把它当作一个更接近生产环境的服务器来用,还需要进行一些加固和优化。

7.1 安全加固第一步:SSH配置

我们通常通过SSH从Mac终端连接虚拟机,比在图形界面里操作更高效。

  1. 在CentOS上安装并启动SSH服务
    sudo dnf install -y openssh-server sudo systemctl enable --now sshd
  2. 从Mac连接:打开Mac的“终端”,输入:
    ssh 你的用户名@虚拟机的IP地址
    例如:ssh devuser@192.168.1.105,输入密码即可登录。
  3. 关键安全配置(编辑/etc/ssh/sshd_config
    • 禁用root登录:找到PermitRootLogin,将其改为no
    • 使用密钥认证:这是比密码更安全的方式。在Mac上生成密钥对:ssh-keygen -t rsa,然后将公钥(~/.ssh/id_rsa.pub)的内容,复制到CentOS虚拟机的~/.ssh/authorized_keys文件中。然后在sshd_config中设置PasswordAuthentication no(禁用密码登录)。注意:在设置此项前,务必确认密钥登录已成功!
    • 修改后重启服务:sudo systemctl restart sshd

7.2 性能调优建议

  • 关闭不必要的服务:例如,如果不用图形界面,可以将其设置为默认启动到命令行:
    sudo systemctl set-default multi-user.target
    重启后就是纯命令行界面了。想启动图形界面可以运行startx
  • 调整交换分区策略:对于内存较大的虚拟机,可以降低swappiness值,减少系统使用交换分区的倾向。
    echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf sudo sysctl -p
  • 定期更新与清理:设置一个定时任务,定期更新系统和清理旧内核、缓存包。
    # 编辑定时任务 sudo crontab -e # 添加一行,例如每周日凌晨2点执行 0 2 * * 0 /usr/bin/dnf update -y && /usr/bin/dnf autoremove -y

7.3 快照与克隆:高效的环境管理

这是虚拟机的巨大优势。

  • 创建快照:在系统配置到一个稳定、干净的状态时(例如刚安装好所有基础软件),在VMware Fusion中点击“虚拟机” -> “快照” -> “拍摄快照”。给它起个名字,如“Base_Clean_Install”。以后无论怎么折腾,都可以一键回到这个干净的状态。
  • 克隆虚拟机:当你需要创建一个和当前虚拟机一模一样的新环境时,不要重新安装,使用“克隆”功能。这非常适合需要创建多个相同测试环境的场景。在Fusion中,选择“虚拟机” -> “管理” -> “克隆”。可以选择创建完整克隆(独立副本)或链接克隆(依赖父虚拟机,节省空间)。

经过以上步骤,你应该已经拥有了一个在Mac上通过VMware Fusion运行的、功能完善且性能不错的CentOS Stream 9虚拟机。它不再是一个简单的演示环境,而是一个可以用于真实开发、测试和学习的强大工具。记住,虚拟机的魅力在于它的可重置性,大胆地去尝试各种配置和软件吧,玩坏了,一个快照就能让你满血复活。

返回列表