VMware Workstation 17与CentOS 7.9虚拟化环境搭建指南
1. 项目概述作为一名长期使用虚拟化技术的开发者我经常需要在本地搭建Linux测试环境。VMware Workstation作为业界领先的虚拟化平台配合CentOS 7.9这个企业级Linux发行版能够完美满足开发测试需求。本文将分享我从零开始搭建这个环境的完整过程包含2023年最新的配置技巧和避坑指南。2. 环境准备2.1 硬件与软件需求建议使用至少16GB内存的PC或笔记本因为VMware需要分配足够资源给虚拟机。我的测试机配置如下CPU: Intel i7-10700 (8核16线程)内存: 32GB DDR4存储: 512GB NVMe SSD主机系统: Windows 10 Pro 21H2软件方面需要准备VMware Workstation Pro 17当前最新稳定版CentOS 7.9 Minimal ISO镜像约1.2GB注意CentOS 7.9将于2024年6月停止维护如需长期使用建议考虑CentOS Stream或Rocky Linux等替代方案2.2 下载与安装VMware从VMware官网下载Workstation Pro 17安装包约600MB。安装过程有几个关键选项需要注意选择增强型键盘驱动程序提升键盘输入体验勾选将VMware Workstation控制台工具添加到系统PATH方便命令行操作安装后建议重启主机系统安装完成后需要输入许可证密钥。VMware提供30天试用期足够完成本项目的测试需求。3. 创建CentOS虚拟机3.1 新建虚拟机向导打开VMware Workstation点击创建新的虚拟机选择自定义高级配置硬件兼容性选择Workstation 17.x选择稍后安装操作系统客户机操作系统选择Linux版本选CentOS 7 64位虚拟机名称建议包含CentOS 7.9和日期标识处理器配置2核开发测试足够内存分配4096MB根据主机内存调整网络类型NAT最方便的上网方式I/O控制器类型LSI Logic兼容性最好磁盘类型SCSI创建新虚拟磁盘容量建议40GB选择将虚拟磁盘拆分成多个文件更灵活磁盘文件命名保持默认3.2 虚拟机硬件调整创建完成后还需要进行几项关键配置右键虚拟机 → 设置 → CD/DVD → 使用ISO镜像文件选择下载的CentOS 7.9镜像显示 → 指定监视器设置 → 分辨率1920x1080选项 → 高级 → 固件类型选择BIOSCentOS 7对UEFI支持不如BIOS稳定添加一个串行端口方便调试4. 安装CentOS 7.94.1 启动安装程序开启虚拟机电源快速按ESC键进入启动菜单选择从CD-ROM启动。看到安装界面后选择Install CentOS 7语言选择English避免中文路径问题时区选择Asia/Shanghai安装源验证通过后自动进入下一步4.2 磁盘分区方案这是最关键也最容易出错的步骤。建议采用以下分区方案/boot 1GB (标准分区) swap 4GB (标准分区与内存等大) / 剩余全部空间 (LVM便于后期扩容)具体操作选择我要配置分区 → 点击完成进入手动分区点击添加/boot分区1GB文件系统xfs添加swap分区4GB添加/分区选择LVM容量选择剩余所有空间点击完成并接受更改重要提示如果看到警告没有定义根文件系统说明忘记设置挂载点需要返回检查4.3 网络与主机名配置打开网络和主机名启用以太网连接会自动获取IP主机名设置为centos79.localdomain可自定义点击应用4.4 软件选择与安装软件选择 → Minimal Install基础环境节省资源勾选兼容性程序库和开发工具方便后续开发开始安装设置root密码建议复杂密码创建普通用户建议与主机用户名一致安装过程约10-15分钟取决于硬件性能完成后点击重启。5. 初始配置与优化5.1 首次启动设置接受许可证协议不启用Kdump开发环境不需要完成初始化设置5.2 基础软件安装登录后首先更新系统sudo yum update -y sudo yum install -y epel-release sudo yum install -y vim wget curl net-tools git5.3 VMware Tools安装这是提升虚拟机性能的关键步骤在VMware菜单选择 虚拟机 → 安装VMware Tools挂载光盘mkdir /mnt/cdrom mount /dev/cdrom /mnt/cdrom解压并安装tar -xzvf /mnt/cdrom/VMwareTools-*.tar.gz -C /tmp/ cd /tmp/vmware-tools-distrib/ sudo ./vmware-install.pl -d重启生效6. 网络配置详解6.1 NAT网络原理VMware默认使用NAT模式相当于虚拟机通过主机共享上网。关键配置文件/etc/sysconfig/network-scripts/ifcfg-ens33主网卡/etc/resolv.confDNS配置6.2 静态IP配置可选如需固定IP修改ifcfg-ens33BOOTPROTOstatic IPADDR192.168.10.100 NETMASK255.255.255.0 GATEWAY192.168.10.2 DNS1114.114.114.114然后重启网络sudo systemctl restart network7. 常见问题解决7.1 无法联网排查检查VMware虚拟网络编辑器中的NAT设置确认主机服务VMware NAT Service正在运行在虚拟机中测试ping 192.168.10.2 # 网关 ping 114.114.114.114 # DNS7.2 分辨率调整如果界面显示不全安装VMware Tools见5.3节修改grub配置sudo vim /etc/default/grub # 在GRUB_CMDLINE_LINUX添加 videohyperv_fb:1920x1080 sudo grub2-mkconfig -o /boot/grub2/grub.cfg7.3 磁盘空间不足使用LVM分区的优势此时显现在VMware中扩展虚拟磁盘大小在虚拟机中执行sudo fdisk /dev/sda # 创建新分区 sudo pvcreate /dev/sda3 sudo vgextend centos /dev/sda3 sudo lvextend -l 100%FREE /dev/centos/root sudo xfs_growfs /dev/centos/root8. 开发环境配置8.1 SSH远程连接安装openssh-serversudo yum install -y openssh-server sudo systemctl start sshd sudo systemctl enable sshd在主机使用Xshell或MobaXterm连接8.2 防火墙设置CentOS 7默认使用firewalldsudo firewall-cmd --permanent --add-servicessh sudo firewall-cmd --permanent --add-port8080/tcp sudo firewall-cmd --reload8.3 开发工具链安装常用开发组件sudo yum groupinstall -y Development Tools sudo yum install -y java-11-openjdk-devel python3-devel9. 性能优化技巧9.1 内存分配策略在.vmx配置文件中添加mainMem.useNamedFile FALSE prefvmx.useRecommendedLockedMemSize TRUE9.2 磁盘IO优化使用独立虚拟磁盘存放数据库文件在VMware设置中启用独立-持久磁盘模式在CentOS中启用deadline调度器echo deadline /sys/block/sda/queue/scheduler9.3 CPU资源分配对于多核主机可以分配更多虚拟CPU核心设置CPU亲和性processor0.use TRUE processor1.use TRUE10. 备份与快照管理10.1 VMware快照使用关机状态下创建纯净环境快照重要操作前创建临时快照避免创建过多快照影响性能10.2 虚拟机克隆右键虚拟机 → 管理 → 克隆创建完整克隆独立副本克隆后修改主机名和IP避免冲突10.3 物理备份方案直接复制整个虚拟机文件夹使用OVF导出标准格式文件 → 导出为OVF经过以上步骤你已经获得了一个高性能、可扩展的CentOS 7.9开发环境。我在实际使用中发现定期清理yum缓存和日志文件可以保持系统清爽sudo yum clean all sudo journalctl --vacuum-time7d

相关新闻

鲅鱼圈精致洗车适合哪些车辆状态与使用场景?

鲅鱼圈精致洗车适合哪些车辆状态与使用场景?

选精致洗车,核心不是看“洗得多细”这一句话,而是先判断车辆污染类型、漆面状态、内饰使用情况和后续用车场景。本文只输出选型方法,不做门店推荐、不做排名评分,也不把任何一种清洁项目说成适合所有车辆。一、通用选型标准&#…

2026/9/26 16:15:11 阅读更多 →
从日志到可观测性:政策快报平台的监控体系演进

从日志到可观测性:政策快报平台的监控体系演进

政策快报平台上线第一年,监控系统几乎为零。出问题了,靠用户投诉才知道。哪里慢了,靠用户反馈才发觉。某个接口挂了,可能过了几个小时才有人发现。后来我们花了三年时间,逐步建立了一套完整的可观测性体系:…

2026/9/28 15:37:18 阅读更多 →
单片机开发进阶技巧:(三)生产者-消费者模型

单片机开发进阶技巧:(三)生产者-消费者模型

上一篇下一篇如何判断一个浮点型运算结果是否为整数 目 录 生产者-消费者模型1)定义2)核心同步问题3)实现方式3.1)基于信号量的经典方案3.2)在 RTOS 中(如 FreeRTOS) 4)实际工作中常…

2026/10/13 7:53:10 阅读更多 →

最新新闻

GongBU模型评估详解:如何用BERTScore、BLEU和Distinct-n指标科学判断微调效果

GongBU模型评估详解:如何用BERTScore、BLEU和Distinct-n指标科学判断微调效果

【免费下载链接】GongBU Paper accepted by CIKM 2024. Codes of GongBU, a LLM fine-tuning platform for domain-specific adaptation. 项目地址: https://gitcode.com/gh_mirrors/go/GongBU 点击查看 免费下载 微调完成之后,最让人头疼的问题往往是&…

2026/10/13 12:49:58 阅读更多 →
Context Hub 多版本 API 文档机制详解:从 versioned-api 目录结构到 chub 版本解析原理

Context Hub 多版本 API 文档机制详解:从 versioned-api 目录结构到 chub 版本解析原理

【免费下载链接】context-hub 项目地址: https://gitcode.com/gh_mirrors/co/context-hub 点击查看 免费下载 本文以 Context Hub 仓库中的多版本文档测试样例 v1/DOC.md 为线索,系统讲解 Context Hub(chub CLI)如何组织、构建、…

2026/10/13 12:49:58 阅读更多 →
WinForm角色权限设计实战:五表RBAC动态菜单与反射窗体实现

WinForm角色权限设计实战:五表RBAC动态菜单与反射窗体实现

简介:这份C# WinForm角色权限菜单源码包,面向需要在Windows桌面应用中实现权限控制的开发者,提供了一套基于角色的动态菜单完整解决方案。核心设计思路是让权限与角色绑定,用户通过分配角色自动获得对应操作权限,从而大…

2026/10/13 12:49:58 阅读更多 →
侯捷 C++ 系列课程与陈硕 Linux 网络编程视频:InterviewGuide 收录的 C++ 求职进阶资源全解析

侯捷 C++ 系列课程与陈硕 Linux 网络编程视频:InterviewGuide 收录的 C++ 求职进阶资源全解析

教程 【免费下载链接】InterviewGuide 🔥🔥「InterviewGuide」是阿秀从校园->职场多年计算机自学过程的记录以及学弟学妹们计算机校招&秋招经验总结文章的汇总,包括但不限于C/C 、Golang、JavaScript、Vue、操作系统、数据结构、计算机…

2026/10/13 12:49:58 阅读更多 →
Forest Pack 7真实感植被布设核心原理与避坑指南

Forest Pack 7真实感植被布设核心原理与避坑指南

简介:本资源是3ds Max用户必备的Forest Pack 7官方帮助文档PDF,面向建筑可视化、游戏场景与影视特效领域的中高级三维设计师,解决大规模自然环境(如森林、草地、岩石群、人群等)高效建模与智能散布的技术难点。文档全面…

2026/10/13 12:49:58 阅读更多 →
AutoGen接入MCP工具全指南:原理、API与避坑实践

AutoGen接入MCP工具全指南:原理、API与避坑实践

这两天我在调AutoGen智能体的时候,发现一个很容易被忽略但非常关键的扩展包:autogen_ext.tools.mcp。如果你已经在用AutoGen做智能体,大概率接触过原生工具注册,也就是把函数直接塞给Agent。但实际项目里工具一多,函数…

2026/10/13 12:48:56 阅读更多 →

日新闻

物联网系统集成避坑指南:从选型到验收的关键要点

物联网系统集成避坑指南:从选型到验收的关键要点

做了这么多年物联网系统集成的项目,我最大的感受是,大部分坑不是出在技术前沿,而是出在一些看起来很平常的地方。设备选了便宜的、协议没问清楚、现场没摸透、验收标准写得含糊——这些细枝末节,最后都会变成延期、超支和扯皮的大…

2026/10/13 0:00:57 阅读更多 →
ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

如果你玩ESP32有一阵子了,很难不碰到舵机控制这道坎。做智能小车要转方向,做机械臂要抬关节,做云台要偏航俯仰,背后都是同一个东西在干活:舵机。而我见过太多人卡在“代码能编译、舵机就是不听话”这个阶段&#xff0c…

2026/10/13 0:00:57 阅读更多 →
CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

1. 为什么CAN总线至今仍是工业现场的“硬通货”?——从汽车底盘到智能温室的真实需求你有没有拆过一辆老款燃油车的中控台?或者调试过某高校实验室里那台跑着Modbus协议却频频丢帧的PLC控制柜?又或者,在某个农业物联网项目里&…

2026/10/13 0:00:57 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 21:05:09 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 14:48:49 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →