如何在虚拟机上完美安装 Linux:从零开始的系统配置指南

在当今的技术领域,Linux 已经成为了开发者和系统管理员不可或缺的操作系统。然而,对于习惯使用 Windows 或 macOS 的用户来说,直接在物理机上安装 Linux 往往让人望而却步:担心弄坏现有系统、害怕繁琐的分区操作,或者仅仅是需要在不影响日常工作的前提下体验 Linux 的强大功能。

这时候,虚拟机 就成为了最佳解决方案。通过虚拟机技术,我们可以在当前的操作系统内部“创建”一台独立的计算机,并在其中运行 Linux。这不仅提供了一个完全隔离的安全环境,非常适合进行代码测试、网络实验和系统学习,还能让我们在不重启电脑的情况下,随时在主系统和虚拟系统之间切换。

在这篇文章中,我们将深入探讨如何在虚拟机上安装 Linux。我们将以最受欢迎的 Ubuntu 发行版为例,带你一步步完成从软件准备到系统安装的全过程。无论你是想学习 Linux 命令行,还是需要搭建一个特定的开发环境,这篇指南都将为你提供坚实的基础。

为什么选择虚拟机安装?

在开始之前,让我们先明确一下这种方式的巨大优势。使用虚拟机安装 Linux 不仅仅是“多开一个系统”,它具有以下几个核心价值:

  • 风险隔离:所有操作都在虚拟机中进行。即使不小心删除了系统文件(就像我们在学习 rm 命令时常做的那样),也只会重置虚拟机,而不会影响你的物理主机数据。
  • 资源动态分配:我们可以灵活地给 Linux 分配 CPU 核心数和内存大小,既能保证 Linux 流畅运行,又不至于卡死主机。
  • 快照与备份:这是物理机无法比拟的优势。我们可以在安装好关键软件后创建一个“快照”。一旦系统配置混乱,一键回滚到之前的状态,极大地提高了实验效率。

准备工作:选择合适的虚拟化软件

工欲善其事,必先利其器。第一步是为我们选择合适的虚拟化软件。目前市面上有几款主流的选择,它们各有千秋:

  • Oracle VirtualBox:这是我们今天将要使用的工具。它是完全免费且开源的,功能强大,支持 Windows、Linux 和 macOS 作为主机。对于个人学习和开发,它是首选。
  • VMware Workstation Player:同样是行业巨头,界面稍微现代化一些。对于个人使用是免费的,但在某些高级硬件兼容性上可能不如 VirtualBox 灵活。
  • Hyper-V:如果你使用的是 Windows 专业版或企业版,这是一个内置的强大选项。不过它需要开启 BIOS 设置,且对 USB 设备的直通支持相对复杂,不太适合初学者入门。

第一阶段:安装 Oracle VirtualBox

VirtualBox 是一款功能全面的虚拟化工具,允许我们在主机操作系统上运行其他操作系统,通常被称为“客户机”。在本教程中,我们将演示如何在 Windows 11 主机上安装 VirtualBox,并配置 Ubuntu 虚拟机。

Step 1: 下载与安装准备

首先,我们需要获取 VirtualBox 的安装包。请访问 VirtualBox 的官方网站(此处不引用具体网址以保持纯净),在下载页面选择“Windows hosts”版本。

实用见解:在下载时,请务必同时下载 VirtualBox Extension Pack(扩展包)。虽然基础安装足够运行系统,但扩展包提供了对 USB 2.0/3.0 设备的支持、RDP 远程桌面支持等关键功能,这在后续将 U 盘插入虚拟机或通过远程连接访问时会非常有用。

Step 2: 执行安装向导

下载完成后,运行 .exe 安装程序。

  • 安全提示:系统可能会弹出 UAC(用户账户控制)对话框询问是否允许应用更改设备。请点击“是”。
  • 自定义安装:在安装向导中,点击“Next”进入自定义界面。在这里,我们可以选择是否安装 Python 支持、网络功能等。

* 建议:除非你明确知道不需要某些功能,否则建议保持默认选项全选。这能确保虚拟网卡等驱动正确安装。

  • 网络警告:在安装过程中,你会看到关于“网络连接将暂时断开”的警告。这是正常的,因为 VirtualBox 需要在你的网卡上挂载虚拟网络协议。点击“Yes”继续。

代码示例 1:通过命令行检查网络适配器(安装后验证)

在安装完成后,我们可以通过 Windows PowerShell 输入以下命令,来验证 VirtualBox 的虚拟网卡驱动是否已成功挂载:

# 在 Windows PowerShell (管理员) 中运行
Get-NetAdapter | Where-Object {$_.InterfaceDescription -like "*VirtualBox*"}

代码解释:这段 PowerShell 脚本会筛选出所有描述中包含“VirtualBox”的网络适配器。如果你看到名为“VirtualBox Host-Only Ethernet Adapter”的设备,说明网络模块安装成功。这对于后续虚拟机与宿主机之间的网络通信(如 SSH 连接)至关重要。

Step 3: 完成安装

点击“Install”后,系统需要几分钟时间写入文件。安装完成后,点击“Finish”。此时,VirtualBox 管理器窗口将呈现在你眼前。

第二阶段:获取 Linux 镜像文件 (ISO)

在创建虚拟机之前,我们需要一个 Linux 的安装包,通常称为 ISO 镜像文件。这是一张包含完整操作系统的光盘内容压缩成的单个文件。

对于初学者,我强烈推荐 Ubuntu。它拥有庞大的社区、丰富的软件仓库和友好的用户界面。截至撰写本文,Ubuntu 24.04 LTS (Noble Numbat) 是最新的长期支持版本,提供长达 5 的安全更新支持,非常适合作为主力开发环境。

最佳实践:请务必从 Ubuntu 官网下载 Desktop 版本的 ISO。不要下载 Server 版,除非你打算完全不使用图形界面,只通过命令行操作(这对新手挑战较大)。

第三阶段:创建并配置虚拟机

这是整个过程中最关键的一步。我们将告诉 VirtualBox 如何模拟我们的硬件。

Step 4: 启动向导与命名

打开 VirtualBox,点击工具栏上的 “New” (新建) 按钮。

  • Name (名称):输入 Ubuntu 24.04 LTS 或任何你喜欢的名字。VirtualBox 会自动根据名称预设“类型”和“版本”。

n* Type (类型):选择 Linux

  • Version (版本):选择 Ubuntu (64-bit)

常见错误与解决:如果你在“版本”下拉菜单中看不到 64-bit 选项,通常是因为你的电脑主板 BIOS 中没有开启 VT-x (Intel) 或 AMD-V 虚拟化技术。你需要重启电脑进入 BIOS,在 CPU 设置中找到 Virtualization Technology 并将其设置为 Enabled。否则,虚拟机将无法启动 64 位系统。

Step 5: 挂载 ISO 文件(智能化引导)

这是新版 VirtualBox 的一个强大功能。在向导的第二步,它会询问是否载入操作系统安装介质。

  • 勾选 “Skip Unattended Installation” (跳过无人值守安装),如果你想手动体验每个步骤(推荐新手这样做,以便了解安装过程)。
  • 或者,选择 “Other” 并在文件夹图标中找到你下载的 .iso 文件。

如果我们选择挂载 ISO,VirtualBox 会启动“Guest OS 安装向导”。它能自动识别 Linux 发行版,并为我们预先配置内存和硬盘等参数。为了演示更详细的配置过程,我们在这里可以选择手动配置,或者保留默认值直接点击 Next。

Step 6: 硬件资源分配(性能优化的关键)

虚拟机的性能完全取决于这里分配的资源。我们需要在“主机”和“虚拟机”之间找到平衡点。

#### 内存 基准

  • 推荐配置:将主机物理内存的一半分配给虚拟机。
  • 具体示例:如果你的电脑有 16GB 内存,分配 4096MB (4GB) 或 8192MB (8GB) 给虚拟机是比较理想的。Linux 基础图形界面占用较少,分配 4GB 足够流畅运行代码编辑器和浏览器。
  • 注意事项:不要将绿色滑块拖到红色区域,这会导致宿主机(Windows)内存不足而卡死。

#### 处理器 (CPU) 优化

  • 建议分配 2 个或更多 的处理器,以保证系统流畅度。

#### 虚拟硬盘 (Storage) 设定

  • 大小:Ubuntu 安装后本身占用约 10GB 左右。为了给后续的开发工具、Docker 镜像或数据库留出空间,建议将虚拟硬盘大小设置为 20GB 到 50GB 之间。
  • 动态分配 vs 固定大小

* 动态分配(推荐):硬盘文件会随着虚拟机内数据的增加而自动变大。虽然实际性能比固定低一点,但它节省主机的物理硬盘空间。

* 固定大小:性能最好,但会立即占用主机 20GB 空间。除非你做高负载 I/O 测试,否则不推荐。

代码示例 2:VBoxManage 命令行创建虚拟机(进阶用法)

虽然我们使用了图形界面,但作为专业开发者,了解命令行操作能让我们更高效地管理虚拟机。以下命令等效于上述的图形操作,可以在终端中直接创建一个名为“DevUbuntu”的虚拟机:

# 1. 注册并创建虚拟机
VBoxManage createvm --name "DevUbuntu" --register

# 2. 设置内存和显存 (单位: MB)
VBoxManage modifyvm "DevUbuntu" --memory 8192 --vram 128

# 3. 创建动态分配的虚拟硬盘 (50GB)
VBoxManage createhd --filename "./DevUbuntuDisk.vdi" --size 50000 --format VDI --variant Standard

# 4. 将硬盘挂载到 SATA 控制器
VBoxManage storagectl "DevUbuntu" --name "SATA Controller" --add sata --controller IntelAhci
VBoxManage storageattach "DevUbuntu" --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium "./DevUbuntuDisk.vdi"

# 5. 挂载 ISO 文件到光驱
VBoxManage storageattach "DevUbuntu" --storagectl "SATA Controller" --port 1 --device 0 --type dvddrive --medium "/path/to/ubuntu-24.04-desktop-amd64.iso"

代码解释:这段脚本展示了 VirtualBox 的底层工作原理。我们首先创建了一个虚拟机实例,然后分配了 8GB 内存和独立的虚拟硬盘文件(.vdi)。通过 storageattach 命令,我们将虚拟硬盘模拟为 SATA 设备挂载,并将 ISO 镜像模拟为光驱。掌握这些命令,对于配置自动化部署流水线(CI/CD)中的测试环境非常有帮助。

第四阶段:安装 Linux 系统

配置完成后,点击 “Start” (启动)。此时,虚拟机窗口将出现,由于还没有安装系统,它会从挂载的 ISO 文件引导,进入 Ubuntu 安装界面。

Step 7: 引导菜单与安装选项

  • 语言选择:在安装启动界面,选择“Install Ubuntu”或“Try Ubuntu without installing”。
  • 键盘布局:选择合适的键盘布局(通常默认为 English – US)。
  • 安装类型

* 你会看到 “Normal installation” (正常安装)“Minimal installation” (最小化安装)。建议选择 正常安装,因为它包含了网页浏览器、实用工具和图形支持软件。

* 更新选项:勾选 “Download updates while installing Ubuntu”。这会节省你安装后的手动更新时间,但会稍微延长安装过程。

Step 8: 磁盘分区(自动化配置)

对于大多数用户,建议选择 “Erase disk and install Ubuntu” (清除整个磁盘并安装 Ubuntu)。

重要安全提示:由于我们在虚拟机中,这里的“磁盘”指的是虚拟磁盘,而不是你 Windows 的 C 盘或 D 盘。因此,这个操作是安全的,不会影响你的主机文件。如果你在物理机上操作,这一步需要极其谨慎,必须确认分区目标是否正确。

如果你选择手动分区,你需要创建以下分区:

  • / (根目录):挂载点 /,建议 20GB+,用于安装系统。
  • Swap:交换分区,建议大小为内存大小。用于休眠功能和内存溢出缓存。

Step 9: 用户账户创建

这与安装 Windows 类似。你需要输入:

  • Your Name: 显示名称。
  • Your Computer‘s Name: 主机名,在网络中标识这台机器。
  • Username: 登录名(例如 devuser)。
  • Password: 设置一个强密码。

实用见解:勾选 “Log in automatically” (自动登录) 在虚拟机环境中是很方便的,但这会降低安全性。如果你只是为了本地开发,可以勾选以节省时间;如果虚拟机包含敏感数据,建议不勾选,每次输入密码登录。

第五阶段:优化与增强体验

安装完成后,VirtualBox 会提示重启。请移除 ISO 镜像(如果它没有自动弹出),然后你将看到崭新的 Ubuntu 桌面。

为了获得更好的体验,我们需要手动进行一些后期优化。

安装 Guest Additions (增强功能包)

这是让虚拟机体验“丝般顺滑”的关键。默认情况下,虚拟机的分辨率可能很低,鼠标切换也不流畅。

  • 在 VirtualBox 菜单栏,点击 Devices (设备) -> Insert Guest Additions CD image
  • 在 Ubuntu 中,打开文件管理器,你会看到名为“VBoxGAs…”的光驱图标。点击运行软件。
  • 如果无法自动运行,打开终端输入:
# 进入光盘目录
cd /media//VBox_GAs_*/

# 运行安装脚本 (需要 root 权限)
sudo ./VBoxLinuxAdditions.run

代码解释sudo 命令以超级用户权限运行安装脚本。该脚本会编译内核模块,以支持主机和客户机之间的共享文件夹、共享剪贴板(复制粘贴)和自动调整分辨率等功能。

共享文件夹配置

如果你想在 Windows 和 Linux 之间传输代码文件,这是必不可少的。

  • 关闭虚拟机。
  • 在 VirtualBox 设置中,点击 Shared Folders -> Adds
  • Folder Path: 选择 Windows 上的一个文件夹(如 C:\\DevShare)。
  • Mount point: 填写 /mnt/shared
  • Auto-mount: 勾选,并选择 Make Permanent

代码示例 3:在 Linux 中挂载共享文件夹的权限修复

当你启动虚拟机后,你可能会发现无法访问共享文件夹,因为 Linux 认为你没有权限。你需要将当前用户添加到 vboxsf 用户组中:

“INLINECODEa52900e7`INLINECODE53397413usermodINLINECODE3f9b1743-aG vboxsfINLINECODEaa194d78$USERINLINECODE38fe9297vboxsfINLINECODE133a4702/mnt/sharedINLINECODEe8b62503lsINLINECODEf66883dcgrepINLINECODE0036166cfindINLINECODEcf4819d8ssh` 等命令来管理文件。

  • 搭建服务器:尝试在虚拟机中安装 Apache 或 Nginx,在主机浏览器中访问虚拟机的 IP 地址,模拟真实的 Web 开发环境。

虚拟机是你探索无限可能的起点。现在,放手去尝试吧,哪怕把系统搞坏了,也只需要点击“重置”即可重来。祝你在 Linux 的探索之旅中学得开心!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。如需转载,请注明文章出处豆丁博客和来源网址。https://shluqu.cn/49946.html
点赞
0.00 平均评分 (0% 分数) - 0