☰
VMware虚拟机安装、Linux部署与网络配置实战指南
2026/9/30 3:56:06 网站建设 项目流程

虚拟机这个事,我前后在十几台不同配置的机器上反复装过,从最早把 VMware 装崩、Linux 系统起不来,到后来网络配半天连不上外网、再到现在闭着眼睛也能把整套环境搭起来,中间踩的坑能写满好几页纸。这篇就把 VM 软件下载、安装配置、Linux 系统部署、网络配置这几个环节从头到尾讲一遍,顺带把大家最关心的软件授权问题说清楚。VM、Linux、网络配置这几个词,对刚入行的朋友来说基本是三座大山——软件装不上、系统进不去、网怎么都连不通,随便哪个环节都能卡住一整天。我准备按实际操作顺序,把每一步的目的、参数背后的计算逻辑,还有容易忽略的细节全部摊开讲,让第一次接触的人也能跟着做下来。不管你用的是老笔记本还是台式机,这套流程都能通用,装完之后你能得到一个可以随便折腾、弄坏了直接删掉重来的 Linux 实验环境,用来学命令、跑数据库、搭开发栈都合适。

1. 先把思路捋清:为什么要用虚拟机跑 Linux

1.1 虚拟机到底替你解决了什么麻烦

很多人第一次学 Linux 的困惑,不是命令记不住,而是根本没地方练。直接装双系统吧,分区一不留神就把原来的 Windows 引导搞坏,重装系统的成本太高;买云服务器吧,一个月几十块,学生党或者刚入门的朋友未必愿意长期掏这个钱,而且网络延迟、文件传输又是另一套麻烦。虚拟机的价值就在这里——它在你的物理机里用软件模拟出一台完整的"假电脑",有自己的 CPU、内存、硬盘、网卡,你可以给它装任何系统,哪怕装崩了,删掉重来也就几分钟的事,物理机纹丝不动。

我习惯把虚拟机理解成一个"沙盒"。你在里面执行rm -rf /这种把整个系统删干净的骚操作,最坏的结果就是重装系统,主机上辛苦攒的资料一点没丢。这种安全感,是让人敢放手去试错的前提。学 Linux 最怕的就是畏手畏脚,虚拟机恰好把试错成本压到了最低。

另外,虚拟机还有一个隐形好处:环境隔离。我在主机上装 Python 3.11,虚拟机里可能只需要 Python 3.6 跑一个老项目,两者互不干扰。数据库版本冲突、依赖库打架这些头疼的问题,用虚拟机一隔就干净了。

1.2 主流虚拟化软件怎么选

市面上能选的方案其实不多,桌面端主要就三家,各自特点差异挺大,选之前值得花五分钟对照一下:

软件授权方式性能表现上手难度适合人群
VMware Workstation个人版可免费使用,商业用途需授权强,3D 和 USB 兼容好中等,界面友好大多数人首选
VirtualBox完全开源免费中等,偶尔有驱动小毛病中等预算为零、喜欢开源
Hyper-V随 Windows 专业版附带较强,但独占性高偏难,开关会互相冲突企业运维、Windows 重度用户

我自己的主力是 VMware,原因很实在:快照功能稳定、拖拽传文件省事、网络模式切换直观,遇到问题网上的解决方案也最多。VirtualBox 是很好的备选,尤其适合完全不想为授权操心的朋友。Hyper-V 有个坑要提前说——它一旦启用,会和 VMware、VirtualBox 抢占底层虚拟化权限,导致后两者性能骤降甚至打不开,所以这仨最好别同时开。

提示:如果你的机器是 Windows 家庭版,系统里没有 Hyper-V,这反而是好事,省得跟 VMware 冲突。专业版用户可以手动关闭 Hyper-V,路径在"控制面板 - 程序和功能 - 启用或关闭 Windows 功能"里。

1.3 关于软件授权,说点实在的

大家搜教程时最容易被带偏的就是"激活"这俩字。我的态度很明确:走官方正规渠道。VMware Workstation Player 对个人非商业使用是免费的,功能上做学习实验完全够用;Pro 版如果是公司或商业场景,就老老实实买授权。预算实在紧张,直接用 VirtualBox 或者免费开源的方案,体验上完全能接受,没必要去折腾来路不明的补丁,那玩意儿轻则装一堆垃圾软件,重则把系统搞出安全问题,得不偿失。

Linux 发行版这边大家更不用操心,Ubuntu、CentOS、Rocky Linux、Debian 这些全部是开源免费下载的,官方镜像站随便下,不存在授权门槛。所以整个实验环境里唯一需要考虑授权的就是虚拟化软件本身,而它有免费选项,这事就被化解了。

2. VM 软件下载与安装配置全流程

2.1 下载渠道怎么选才安全

下载这一步很多人不重视,结果从某些下载站下到的安装包被捆绑了全家桶。我的建议是永远去官方站点下,或者用官方镜像站。搜索的时候认准域名,别点那些带着一堆广告的"高速下载"按钮。安装包一般分 32 位和 64 位,现在基本都直接选 64 位,除非你的老机器确实是 32 位系统。

下载完成后,务必核对一下文件大小和版本号是否对得上官方页面。我有一次下了半天发现版本下错了,装到一半报错才发现,白折腾。养成"下载后先看大小和版本"的习惯,能省不少事。

另外磁盘空间要提前规划。安装包本身可能几百兆,但装完软件,再加上后面 Linux 系统的镜像和虚拟磁盘,至少要预留 60 到 80 GB 的可用空间。我建议单独划一个盘或者一个文件夹专门放虚拟机文件,别跟系统盘混在一起,否则系统盘爆红的时候你会很被动。

2.2 安装过程的关键选项

安装本身是傻瓜式的,下一步下一步,但有几个地方值得停一下。

第一是安装路径。默认装 C 盘,我一般会改到一个空间充裕的盘,比如 D 盘新建一个VMware文件夹。原因很简单,C 盘空间一旦紧张,系统整体都会变卡,而虚拟机软件和它的更新会持续占空间。

第二是"增强型键盘驱动"选项,默认勾上就行,它能让你的快捷键在虚拟机和主机之间切换更顺滑。

第三是首次启动时会让你输入授权信息。前面说过,个人学习直接用免费版本就行,该填的地方按官方流程走。

安装过程中如果遇到杀毒软件拦截,先临时关掉或者放行,装完再打开。遇到过不少人卡在这里,以为是软件坏了,其实就是安全软件把安装驱动的动作挡了。

装完之后重启一下,确保虚拟网卡驱动正常加载。重启后你会发现在网络适配器列表里多出来几块"VMnet"开头的虚拟网卡,这几块网卡就是后面网络配置的主角,先记住它们的存在。

2.3 装完先别急着建系统,几个全局设置调一下

打开软件之后,先把偏好设置过一遍,能少走弯路:

  • 内存分配策略:建议选"允许交换大部分虚拟机内存",这样能超配一点,但别太过分。
  • 共享虚拟机路径:统一到一个固定目录,方便管理。
  • 快捷键:默认的 Ctrl+Alt 释放鼠标有时候和输入法打架,可以改成自己顺手的组合。

还有 BIOS 里的虚拟化开关,这个必须确认。Intel 平台叫 VT-x,AMD 平台叫 SVM,一般在 BIOS 的 CPU 设置或者高级设置里。如果这个没开,虚拟机会报"二进制转换与虚拟化不兼容",直接起不来。开机时按 Del 或 F2 进 BIOS,找到相关项设为 Enabled 就行。这个坑我第一次装的时候踩得结结实实,折腾一晚上以为是软件问题,最后发现是 BIOS 里的开关没开。

3. Linux 系统安装:镜像准备与虚拟机创建

3.1 镜像选哪个发行版

新手最容易纠结的问题:Ubuntu 还是 CentOS?我的建议分场景。如果你是想学桌面使用、日常敲命令、跑点开发环境,选 Ubuntu,软件源丰富,社区活跃,遇到问题一搜一大把答案,而且它的 LTS 版本(比如 20.04、22.04)长期支持,稳。如果你的目标是练服务器运维、企业级部署、学 yum 那一套,选 CentOS 7 或者它的继任者 Rocky Linux 9,命令风格和大量生产环境一致。

我一般两个都装,Ubuntu 用来日常折腾,Rocky 或者 CentOS 用来模拟服务器。镜像文件从官方站点或国内镜像站下载,格式通常是.iso。下载完最好校验一下哈希值,虽然有点麻烦,但能避免镜像损坏导致的安装中途失败——这种失败特别隐蔽,会让你误以为是虚拟机配置的问题。

3.2 创建虚拟机时的参数计算

这一步是重头戏,参数给得不合理,后面系统要么卡要么慢。我按常见的中等配置机器(16G 内存、i5 或 R5 以上)来给参考值:

参数推荐值计算逻辑
内存2~4 GB主机 16G 的话,给虚拟机 2-4G,留足给主机自己用
CPU 核心2 核物理核心的一半以内,别把 8 核全给虚拟机
磁盘20~40 GB系统本身约 10G,留出装软件和数据的空间
磁盘类型单个文件便于迁移,性能差别肉眼几乎看不出来
网络模式先选 NAT装系统时最省事,后面再讲怎么切

内存这个事我特别想说一句:不是给得越多越好。虚拟机内存是从主机物理内存里划走的,你给虚拟机 8G,主机就剩 8G,一旦主机自己内存不够开始用硬盘当内存,整台机器都卡成幻灯片。经验值是主机内存的 1/4 到 1/3。

磁盘建议选"将虚拟磁盘存储为单个文件",虽然有人说拆成多个文件性能更好,但实际体验差异可以忽略,单个文件在复制迁移时方便太多。磁盘容量别抠,宁可多给点,因为虚拟磁盘是稀疏分配的——你给 40G,它不会一开始就占 40G,而是用到多少占多少。

3.3 安装过程的关键分步

虚拟机创建向导里,会让你挂载 ISO 镜像。这里有个小技巧:先选"稍后安装操作系统",这样你可以在配置好参数之后再手动点"编辑虚拟机设置"去挂载镜像,避免向导自动帮你选了个不合适的系统类型。

启动虚拟机后进入安装界面,有几个岔路口:

第一,语言和键盘布局,选中文或者英文都行,我习惯选英文,命令输出和错误信息对照起来方便。

第二,磁盘分区。新手直接选"自动分区"或者"使用整个磁盘"就好,别自己手动分,分区方案没设计好容易出问题。等熟悉了再研究 LVM、独立挂载/home这些进阶玩法。

第三,用户创建。一定要设一个普通用户,别全程用 root。Linux 的安全模型就是靠普通用户加 sudo 提权来控制的,习惯从第一天就养成。密码设简单点没关系,毕竟这是本地实验环境,自己记得住最重要。

第四,安装类型。Ubuntu Server 版可以勾选"安装 OpenSSH server",这一步非常关键,勾了之后你装完就能直接用 Xshell 远程连,省得后面再补装。桌面版则无所谓,系统自带。

安装过程大概 10 到 30 分钟,取决于你给的资源和镜像大小。装完提示重启,记得先把 ISO 镜像从虚拟光驱里"弹出",否则它会又从镜像启动,循环进安装界面,这个现象第一次遇到会让人一脸问号。

3.4 首次进入系统后的初始化

进入系统后先做几件小事:更新软件源、装常用工具、确认网络状态。Ubuntu 系用sudo apt update && sudo apt upgrade -y,CentOS 系用sudo yum update -y。第一次更新可能比较慢,因为它要从默认源拉一堆索引,国内用户建议先换成国内镜像源,速度能快好几倍。

换源这个操作我单独提一下,因为它是后面网络配置能不能顺畅的前提。源配置对了,装软件嗖嗖的;源是默认国外地址,下一个包等到天荒地老。具体换源步骤在下一节网络配置里会结合讲,因为它和 DNS、网络连通性直接相关。

4. 网络配置:从连不通到畅通无阻

4.1 三种网络模式到底啥区别

网络配置这块是绝大多数人卡壳的地方,我得先把原理讲透,不然你照着改参数也是瞎改。

NAT 模式:虚拟机藏在主机后面,通过主机的网络出去。相当于你和主机共用一个"出口"。虚拟机能上网、能访问主机,但局域网里别的机器看不到它。适合只是想让虚拟机上外网、不搞复杂服务的场景。

桥接模式:虚拟机和主机平起平坐,直接从路由器那拿一个和主机同网段的 IP,在局域网里就是一台独立设备。适合需要让其他机器访问虚拟机的场景,比如你搭个网站想让同宿舍的哥们访问。

仅主机模式:虚拟机只能和主机通信,出不了外网。适合做纯隔离的实验,一般学习用不上。

我个人的默认选择是 NAT,装系统、日常使用都省事。需要对外提供服务时再切桥接。

4.2 NAT 模式下的上网配置

装完系统如果发现ping www.baidu.com不通,先别慌,按顺序排查。

第一步,ip addr看虚拟机的网卡有没有拿到 IP。正常情况下 VMware 的 DHCP 会给虚拟机分配一个类似192.168.x.x的地址。如果没拿到,说明虚拟网卡可能没起,或者 DHCP 出问题了。

第二步,检查主机上的 VMnet8 这块虚拟网卡状态。如果它显示"网络电缆被拔出"或者有个感叹号,说明 VM 的 NAT 服务没起来。解决办法是去"服务"里找到 VMware 相关的几个服务,把它们启动并设为自动。

第三步,确认虚拟机的 DNS。有时候能 ping 通 IP 但 ping 不通域名,就是 DNS 的问题。可以把 DNS 改成223.5.5.5或者8.8.8.8这类公共 DNS 试试。

我遇到最多的情况是:虚拟机网卡是 down 状态。用sudo ip link set ens33 up把它拉起来,再用sudo dhclient ens33重新申请 IP,基本上就通了。ens33这个网卡名根据你的系统可能不一样,用ip addr看一下实际的即可。

4.3 改成静态 IP:别让地址每次都变

动态获取的 IP 每次重启都可能变,这对需要固定连接的场景很烦。比如你用 Xshell 保存了一个连接,地址一变就得重配。所以配个静态 IP 是迟早要做的事。

以 Ubuntu 20.04 及以后版本为例,网络配置走的是 netplan,配置文件在/etc/netplan/目录下,通常是一个.yaml文件。编辑它:

network: version: 2 renderer: networkd ethernets: ens33: dhcp4: no addresses: - 192.168.100.88/24 gateway4: 192.168.100.2 nameservers: addresses: [223.5.5.5, 8.8.8.8]

几个参数要注意:addresses里的 IP 要选在你虚拟机所在 NAT 网段内,并且避开 DHCP 自动分配的池子,免得起冲突。gateway4填 VMware NAT 的网关地址,这个地址可以在主机"虚拟网络编辑器"里查到,一般是网段的.2。改完执行sudo netplan apply生效。

CentOS 7 和 Rocky 9 的配置方式不太一样,走的是/etc/sysconfig/network-scripts/ifcfg-ens33这个文件:

TYPE=Ethernet BOOTPROTO=static ONBOOT=yes IPADDR=192.168.100.88 NETMASK=255.255.255.0 GATEWAY=192.168.100.2 DNS1=223.5.5.5

改完sudo systemctl restart network(Rocky 9 用nmcli或systemctl restart NetworkManager)。这里最容易忘的是ONBOOT=yes,不设成 yes,开机网卡不启动,你又得手动拉,白配。

4.4 配置国内软件源提速

网络通了之后,第一件事就是换源。Ubuntu 的源文件在/etc/apt/sources.list,把里面的官方地址替换成国内镜像站地址,然后sudo apt update刷新。Rocky/CentOS 的源在/etc/yum.repos.d/里,同理替换。

换源之后装软件的速度能有质的提升。这也是为什么我建议网络配置做完就立刻换源,否则后面装 MySQL、装 Git、装 Node.js 的时候你会被龟速折磨。

如果用的是 CentOS 7,官方源停更后可能需要换到 vault 归档源或者第三方镜像,这个情况比较特殊,改的时候注意路径要写对,写错了会报 404。

注意:改源之前先备份原文件,cp sources.list sources.list.bak,改坏了两分钟就能还原,别把自己逼到重装系统的地步。

5. 远程连接与常用环境搭建

5.1 用 Xshell 连上你的 Ubuntu

本地开个终端敲命令当然可以,但真实工作中我们几乎都是远程连服务器。提前在虚拟机里练熟这套流程,以后上手真机就不慌。

Xshell 连接的前提是虚拟机装了 SSH 服务。Ubuntu Server 在安装时勾了 OpenSSH 就自带了;桌面版或者 CentOS 最小安装可能没有,需要sudo apt install openssh-server或sudo yum install openssh-server补上。装完确认服务在跑:sudo systemctl status sshd。

然后在 Xshell 里新建会话,主机填虚拟机的 IP,端口 22,用户名填你创建的那个普通用户。第一次连接会提示保存主机密钥,接受即可,然后输密码就进去了。如果连不上,八成是防火墙挡住了 22 端口,Ubuntu 用sudo ufw allow 22,CentOS 用sudo firewall-cmd --add-port=22/tcp --permanent && sudo firewall-cmd --reload。

这里有个坑值得说:桥接模式和 NAT 模式下,虚拟机的 IP 类型不同。桥接的话,局域网内任何机器都能连;NAT 的话,只有主机能连。你要是想从另一台电脑连,就得用桥接。

5.2 搭建一套顺手的开发环境

环境跑通之后,可以往里装点常用的东西,把虚拟机变成一个趁手的实验室。我一般会装这些:

MySQL 的安装,Ubuntu 用sudo apt install mysql-server,装完跑sudo mysql_secure_installation做安全初始化。CentOS/Rocky 用的是 MariaDB 或者从官方仓库装 MySQL,命令略有不同。装完记得开放远程访问权限并放行 3306 端口,不然外部工具连不上。

Git 的安装和配置更简单,sudo apt install git,然后配一下用户名和邮箱:git config --global user.name "你的名字"和git config --global user.email "你的邮箱"。这两条命令看似不起眼,但提交记录里的作者信息全靠它。

Node.js 建议用 nvm 来管理版本,比直接 apt 装灵活得多,能随时切换不同版本。Maven 安装完记得配MAVEN_HOME环境变量,再把它加到 PATH 里。

这些环境搭好之后,你手上就有一台功能完整的 Linux 开发机,想怎么折腾都行,坏了重装也快。

5.3 快照:虚拟机最香的功能

说到重装快,就不得不提快照。这是虚拟机相比物理机最大的优势之一。在装完系统、配好网络、装完环境之后,打一个快照,相当于给整个系统按了个存档键。之后无论你把系统搞得多乱,恢复快照就能瞬间回到那个干净状态。

我的习惯是打两层快照:一层是"纯净系统",刚装完系统和网络;另一层是"开发环境就绪",装好全套工具后。这样既可以退回干净状态重来,也可以保留一个现成的开发环境。

快照不是越多越好,它会占用额外磁盘空间,而且层级多了管理起来乱。一般保留两三个关键节点就够了。

6. 常见问题排查与避坑实录

6.1 网络适配器异常与连接不上

"VMnet1 有感叹号""虚拟机没有网络适配器"这类问题,是我被问得最多的。根源通常是 VMware 的虚拟网络服务没启动,或者主机上装了其他虚拟化软件抢了驱动。解决思路:先在主机服务列表里确认 VMware 相关的几个服务都是运行状态;如果还是不行,用管理员身份打开软件,进"虚拟网络编辑器"点"还原默认设置",它会重建虚拟网卡,大多数情况下能修复。

如果还原之后还有感叹号,试试更新主机的网卡驱动,或者卸载重装虚拟机软件。我遇到过一次是因为系统更新把某个网络组件改了,重装软件才彻底解决。

6.2 排查网络问题的固定套路

网络不通的时候,别瞎改参数,按这个顺序走一遍,基本能定位:

  1. ip addr看网卡有没有 IP、是不是 up 状态。
  2. ping 网关IP看能不能到网关。
  3. ping 223.5.5.5看能不能出去。
  4. ping www.baidu.com看 DNS 通不通。
  5. cat /etc/resolv.conf看 DNS 配置对不对。

这五步走完,问题出在哪一层就清清楚楚了——出不去是路由或网关问题,能 ping IP 不能 ping 域名就是 DNS 问题,网卡没 IP 就是 DHCP 或者网卡没起。把这套流程背下来,以后遇到网络问题心里就有底了。

6.3 其他高频坑点

下面这张表是我这些年攒下来的高频问题速查,遇到对号入座:

现象大概率原因处理办法
虚拟机开机报虚拟化不兼容BIOS 里的 VT-x/SVM 没开进 BIOS 开启虚拟化支持
装完系统重启又回到安装界面ISO 还挂在虚拟光驱里弹出镜像或断开光驱连接
系统装完卡在登录界面转圈磁盘或内存给太少关机调大资源再启动
主机能 ping 通虚拟机,虚拟机出不去网关或 DNS 配错检查 gateway 和 nameservers
解压中文文件名乱码系统 locale 编码没设对配置 UTF-8 locale 或换解压工具

解压乱码这个事特别常见,尤其是在 Windows 上打包、Linux 上解压的场景。根因是 Windows 用 GBK 编码,Linux 默认 UTF-8。解决办法是装个支持指定编码的解压工具,或者用unzip -O GBK指定编码解压。这种问题看似小,但在实际项目里处理数据文件时特别烦,早点搞懂能少受罪。

7. 关于命令行,几点经验之谈

7.1 常用命令要在用中学

很多人一上来就想背命令大全,背了几百条过两天全忘了。我的经验是别刻意背,遇到需求现查现用,用多了自然记住。真正高频的就那么几十个:ls、cd、cp、mv、rm、mkdir、cat、grep、find、chmod、chown、ps、top、df、du,加上网络相关的ip、ping、curl、netstat。这些覆盖了日常八成的操作。

man命令是你最好的老师,遇到不认识的命令直接man 命令名看手册,比搜博客靠谱。再配合命令 --help,基本能解决大部分疑问。

7.2 养成安全习惯

有几个命令用起来要格外小心。rm -rf的破坏力不用多说,执行前务必确认路径;chmod -R 777图省事给整个目录开满权限,会埋下安全隐患,别养成这个习惯。新建用户这件事,用useradd或adduser创建独立账户,需要高权限时用 sudo 提权,而不是一路 root 到底。

还有一点,重要操作前先打快照,这几乎是我每次折腾前的肌肉记忆。花十秒打个快照,能省下几个小时的重装时间,这笔账怎么算都划算。

我个人最大的体会是,虚拟机这套东西不怕折腾,就怕你不折腾。装坏了顶多重来,配错了顶多改回,成本极低。刚开始配置网络那两天我也烦躁过,但把 NAT、桥接、静态 IP 这几套打通之后,你会发现无论换到哪台机器、哪个云平台,底层的网络逻辑都是相通的。这套本地环境真正帮我省下的,是无数次不敢下手的试错成本。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询