十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

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

VirtualBox 安装 Ubuntu 20.04 完整教程:从零配置到网络排错

VirtualBox 安装 Ubuntu 20.04 完整教程:从零配置到网络排错 在实际开发和学习中VirtualBox 安装 Ubuntu 20.04 操作系统是很多人接触 Linux 的第一步。VirtualBox 作为跨平台虚拟机软件可以在 Windows、macOS、Linux 宿主机上运行另一个完整的操作系统而 Ubuntu 20.04 是目前使用广泛、资料丰富、适合做服务器和桌面开发的 Linux 发行版。这篇内容会从下载镜像、创建虚拟机、安装系统、配置增强功能到解决常见启动错误和网络问题完整走一遍 VirtualBox 安装 Ubuntu 20.04 的流程。安装完成后你不仅能得到一个可用的 Ubuntu 系统还能掌握虚拟机网络、共享文件夹、快照和迁移等日常维护方法。1. 在开始安装前先理解 VirtualBox 与 Ubuntu 20.04 的配合关系1.1 虚拟机解决什么问题为什么用 VirtualBox虚拟机本质上是“用软件模拟出一台完整电脑”它有自己的 CPU、内存、硬盘、网卡和显示设备只是这些硬件资源都来自宿主机。Hypervisor 负责把宿主机资源切分成客户机需要的虚拟硬件资源。VirtualBox 属于 Type 2 虚拟机也就是运行在宿主操作系统之上的应用程序和宿主机之间多了一层操作系统调度因此性能不如裸机但换来的是安装方便、隔离性好、可以随时删除。选择 VirtualBox 的主要原因是它免费开源、跨平台、功能完整支持 Windows、macOS、Linux 宿主机。对于学习 Linux、测试软件、隔离开发环境、搭建临时代理服务器或运行 ROS 这类依赖 Linux 的工具VirtualBox 足够用。它的生态也比较成熟网上关于 VirtualBox 和 Ubuntu 搭配的教程、排错经验非常多遇到问题容易找到参考。1.2 Ubuntu 20.04 适合哪些场景Ubuntu 20.04 是 Canonical 推出的 LTS 长期支持版本。LTS 版本通常意味着更长的维护周期、更稳定的软件源和更适合生产环境的更新节奏因此很多个人服务器、公司内部服务和教学环境都选择它。在虚拟机里安装 Ubuntu 20.04最常见的用途包括学习 Linux 操作系统基础知识练习命令行和 shell 脚本。搭建开发环境比如 Python、Node.js、Java、Docker。运行依赖 Linux 的科研或机器人框架例如 ROS Noetic。模拟局域网环境测试多台服务器之间的网络连接。隔离有风险的操作比如修改内核参数、安装来源不明的软件包。对于刚接触 Linux 的读者虚拟机是最安全的实验环境。即使系统崩溃删除虚拟机重装即可不会影响宿主机上的重要文件。1.3 安装前的前置知识宿主机、虚拟机、ISO、增强功能在动手之前需要区分几个基础概念概念含义在本教程中的作用宿主机安装 VirtualBox 的物理电脑提供 CPU、内存、磁盘等资源客户机VirtualBox 中运行的 Ubuntu 20.04安装完成后由 VirtualBox 管理ISO 镜像光盘镜像文件包含完整的安装介质内容安装 Ubuntu 的启动源虚拟硬盘客户机使用的磁盘文件常见格式为 VDI保存 Ubuntu 系统和文件增强功能VirtualBox Guest Additions提供剪贴板共享、分辨率自适应、共享文件夹等功能虚拟机安装看起来和物理机安装系统类似但因为所有硬件都是虚拟出来的安装过程中会遇到物理机不会出现的配置问题比如 CPU 虚拟化没有开启、显示控制器不兼容、网卡模式选错导致无法联网。这些内容会在后面的章节中逐步展开。注意安装前不要忽略 CPU 虚拟化设置。如果宿主机 BIOS 或 UEFI 中没有开启 Intel VT-x 或 AMD-V64 位 Ubuntu 客户机可能无法启动或者直接提示客户机操作系统已禁用 CPU。2. 准备安装环境下载镜像、安装 VirtualBox、检查虚拟化支持2.1 VirtualBox 版本选择与下载安装VirtualBox 官方网站提供 Windows、macOS、Linux 等多个平台的安装包。版本方面如果宿主机系统比较旧可以选择老版本如果条件允许建议使用官方当前主推的稳定版本。早期常见的 5.2 版本对 Ubuntu 20.04 和较新硬件的支持不够好尤其是增强功能的兼容性不如新版本所以不要因为旧教程里用了 5.2.44 就盲目选择老版本。下载安装时直接选择对应操作系统的安装包即可。Windows 下安装包是.exeLinux 下通常是.run或发行版对应的包。安装过程中保持默认设置即可如果宿主机缺少 Visual C 运行库VirtualBox 安装程序通常会自动安装。安装完成后VirtualBox 会要求重启宿主机这一步不要跳过否则之后启动虚拟机可能遇到驱动未加载的问题。2.2 Ubuntu 20.04 ISO 镜像下载Ubuntu 20.04 的镜像可以从 Ubuntu 官方下载页面获取也可以使用国内高校或云厂商的镜像站。镜像文件名一般类似ubuntu-20.04.x-desktop-amd64.iso其中desktop表示桌面版server表示服务器版amd64表示 64 位架构。本教程以桌面版为例因为桌面版界面更适合新手安装完成后也可以随时启用 SSH 变成远程服务器。选择桌面版还是服务器版主要看使用习惯镜像版本特点适用场景desktop 版自带图形界面安装简单新手学习、日常桌面使用、快速验证功能server 版无图形界面资源占用低部署服务、模拟生产服务器、需要最大化节省内存下载完成后建议校验镜像的 SHA256 值避免镜像文件损坏。Windows 下可以使用certutil命令certutil -hashfile ubuntu-20.04.6-desktop-amd64.iso SHA256Linux 下使用sha256sumsha256sum ubuntu-20.04.6-desktop-amd64.iso把输出结果与官方提供的校验值对比一致后再进行安装。这一步经常被省略但一旦遇到安装到一半报错、ISO 无法启动等问题先从校验和排查会更快。2.3 检查 CPU 虚拟化开关与磁盘空间64 位 Ubuntu 客户机通常要求宿主机 CPU 具备硬件虚拟化能力并在固件中启用。Windows 下可以在任务管理器“性能”标签页查看“虚拟化”是否显示“已启用”。如果未启用需要进入 BIOS 或 UEFI 设置找到类似Intel Virtualization Technology、VT-x、AMD-V、SVM Mode的选项将其改为 Enabled然后保存重启。VirtualBox 安装目录的磁盘空间也需要提前确认。Ubuntu 20.04 桌面版安装后大约占用 8GB 到 12GB但后续安装软件、缓存更新、创建快照都会占用更多空间建议给虚拟机磁盘预留至少 30GB 的空间。物理磁盘空间不足会导致虚拟机磁盘写入失败出现“磁盘已满”或“写入错误”的提示。可以建立一份安装前检查清单[ ] 已安装 VirtualBox宿主机已重启。[ ] 已下载 Ubuntu 20.04 ISO并通过 SHA256 校验。[ ] 任务管理器或 BIOS 中确认 CPU 虚拟化已启用。[ ] 磁盘剩余空间至少 30GB。[ ] 内存至少 8GB建议 16GB。3. 创建虚拟机并手动安装 Ubuntu 20.043.1 在 VirtualBox 中新建虚拟机名称、类型、内存、磁盘打开 VirtualBox 主界面点击“新建”进入向导。名称可以填ubuntu20.04类型选 Linux版本选 Ubuntu 64-bit。如果版本列表中没有 64-bit 选项通常意味着 CPU 虚拟化没有开启或者 VirtualBox 安装不完整需要先返回第 2 章检查。内存分配是第一个关键参数。最低建议 2048MB但如果宿主内存足够推荐 4096MB。内存太小会导致安装过程非常卡顿甚至 out of memory内存太大又会影响宿主机运行。如果宿主机只有 8GB 内存建议 2048MB 到 3072MB如果宿主机有 16GB 以上内存可以分配 4096MB。虚拟硬盘建议选择 VDI 格式分配方式选择“动态分配”。动态分配的磁盘文件会随着虚拟机内数据增加而逐渐变大初始占用很小适合学习和日常使用。磁盘大小建议设置为 30GB 到 50GB不要只给 20GB因为之后的软件包和系统更新会快速占满空间。3.2 设置虚拟机参数处理器、显存、启动顺序、UEFI创建完虚拟机后不要急着启动先进入“设置”优化参数。系统 - 处理器分配 2 个 CPU 核心。如果宿主机 CPU 核心较多可以分配 4 核但不要超过物理核心数的一半。系统 - 启动顺序确保光驱Optical排在硬盘之前因为需要从 ISO 启动安装程序。显示 - 显存设置为 128MB。如果后面要开启 3D 加速显存太低会导致图形异常。显示 - 图形控制器可以保持默认不同版本默认值不同。遇到黑屏或花屏问题时可以尝试切换 VMSVGA 或 VBoxSVGA。系统 - 主板默认 BIOS 即可。除非你明确需要 UEFI 安装或 PXE UEFI 引导否则不需要勾选“启用 EFI”。这里要注意VirtualBox 的“处理器”分配不是越多越好。每个虚拟机都会占用宿主机的调度资源过高的 CPU 和内存分配会显著拖慢宿主机尤其当多个虚拟机同时运行时。3.3 加载 ISO 镜像并启动安装在虚拟机设置中进入“存储”找到光驱设备点击右侧光盘图标选择“选择一个磁盘文件”然后选择下载好的 Ubuntu 20.04 ISO。确认光驱已经连接后点击“启动”开始安装。虚拟机启动后会进入 Ubuntu 的 GRUB 引导界面。第一个选项通常是 “Try or Install Ubuntu”直接回车即可。如果界面卡住不动可能是 ISO 文件损坏也可能显示控制器不兼容可以尝试切换图形控制器或重新下载镜像。进入安装向导后语言选择简体中文键盘布局保持默认。在“更新和其他软件”页面勾选“安装 Ubuntu 时下载更新”和“为图形或无线硬件安装第三方软件”通常能得到更好的兼容性。但这需要网络连接正常如果不想等待可以去掉更新选项系统安装完后再手动更新。3.4 分区方式选择整块磁盘还是手动分区对于绝大多数使用虚拟机的场景选择“清除整个磁盘并安装 Ubuntu”就足够了。这里的“清除”只影响虚拟硬盘不会影响宿主机物理磁盘所以可以放心使用。如果之后要在虚拟机里部署测试数据库、编译大型项目或者想练习 Linux 分区可以选择“Something else”手动分区。典型的分区方案分区推荐大小格式挂载点/boot/efi512MBFAT32/boot/efiswap2048MBswap无/剩余空间ext4//home可选单独分区ext4/home手动分区时要注意/ 分区必须有足够空间swap 在内存 4GB 时建议分配 2GB 到 4GB。对于普通学习环境不需要过度纠结 /home 是否单独分区直接使用整块磁盘更省事。3.5 设置用户名密码与安装完成后的首次启动安装向导会让你设置姓名、用户名、计算机名和密码。计算机名会出现在终端提示符和局域网名称中如果以后要跑 ROS建议用简单名称比如ubuntu20。密码一定要记住因为后续sudo操作都需要它。安装完成后点击“立即重启”。如果虚拟机还挂在 ISO 上重启后可能再次进入安装界面这时可以进入设置把光驱里的 ISO 移除或者直接将启动顺序改为硬盘优先。进入桌面后第一步建议打开终端执行系统更新sudo apt update sudo apt upgrade -y更新过程需要几分钟到十几分钟取决于网速和镜像源。如果 apt 源下载很慢可以将源替换为国内镜像源再执行更新。4. 安装增强功能并配置共享文件夹与剪贴板4.1 为什么必须安装增强功能刚装完的 Ubuntu 20.04 在 VirtualBox 中体验并不好鼠标移入移出时切换不自然分辨率固定无法随窗口调整也不能直接复制文本或共享文件。安装增强功能后这些问题会得到改善。增强功能是一组驱动和系统服务运行在客户机内部负责连接 VirtualBox 与虚拟机。它主要提供鼠标指针无缝切换。窗口大小变化时自动调整分辨率。共享剪贴板。共享文件夹。3D 图形加速。更准确的时间同步。可以说没有增强功能的 VirtualBox 虚拟机只能算“能启动”安装增强功能后才算“好用”。4.2 在虚拟机内部安装 Guest Additions安装增强功能前先确保 Ubuntu 系统内核头文件和编译工具齐全。打开终端执行sudo apt update sudo apt install -y build-essential dkms linux-headers-$(uname -r)然后点击 VirtualBox 窗口顶部菜单“设备”-“安装增强功能”。这个操作会把增强功能镜像挂载到 Ubuntu 的光驱中。接着在终端执行sudo mount /dev/cdrom /media/cdrom cd /media/cdrom sudo sh ./VBoxLinuxAdditions.run脚本运行结束后重启虚拟机sudo reboot重启后可以检查增强功能是否加载成功lsmod | grep vboxguest如果输出中有vboxguest相关模块说明内核模块已经加载。安装增强功能最常见的失败原因是缺少内核头文件或者内核升级后模块没有重新编译所以第一步安装linux-headers-$(uname -r)非常关键。4.3 配置共享文件夹和双向剪贴板共享文件夹需要在 VirtualBox 设置中指定。先关闭或保存虚拟机状态然后在设置中选择“共享文件夹”添加一个宿主目录例如D:\share勾选“自动挂载”和“固定分配”。启动虚拟机后在 Ubuntu 中挂载目录ls /media/sf_share如果看不到共享目录或没有权限通常是因为当前用户不在vboxsf用户组中。执行sudo usermod -aG vboxsf $USER然后注销重新登录或者重启虚拟机再查看/media/sf_share。如果自动挂载没有生效可以手动挂载sudo mkdir -p /mnt/share sudo mount -t vboxsf share /mnt/share这里的share要和共享文件夹名称一致。剪贴板设置在 VirtualBox 窗口菜单“设备”-“共享剪贴板”中选择“双向”即可。4.4 调整分辨率与窗口自适应增强功能安装成功后VirtualBox 的“视图”菜单中会出现“自动调整显示尺寸”选项勾选后虚拟机窗口放大或缩小时 Ubuntu 分辨率会自动变化。如果分辨率仍然固定可以检查 Ubuntu 是否运行在 Wayland 会话下。Wayland 对第三方图形驱动的兼容性偶尔有问题可以登录时选择“Ubuntu on Xorg”会话重新进入系统。也可以尝试在终端中暂时修改分辨率xrandr --output Virtual1 --mode 1920x1080注意不同虚拟显卡的显示器名称可能不同先执行xrandr查看可用名称再设置。注意增强功能是和当前内核版本绑定的。以后执行sudo apt upgrade升级内核后增强功能可能失效通常需要重新执行一次VBoxLinuxAdditions.run。5. 配置网络并打通 SSHNAT、桥接、仅主机三种模式5.1 VirtualBox 网络模式对比VirtualBox 为虚拟机提供多种网络模式不同模式决定了虚拟机如何访问外网、宿主机如何访问虚拟机、虚拟机之间如何通信。模式外网访问宿主机访问客户机客户机互访适用场景NAT可用需要端口转发受限默认模式适合仅需要外网访问NAT Network可用需要端口转发可互通多台虚拟机共享网络桥接网卡可用直接访问可互通让虚拟机呈现为局域网独立设备仅主机不可用外网可直接访问可互通宿主机与虚拟机内部通信内部网络不可用外网不可直接访问可互通虚拟机之间专用通信默认情况下Ubuntu 20.04 虚拟机的网卡是 NAT 模式可以访问外网也能apt update但宿主机无法直接通过 IP 连接虚拟机。这就是为什么需要端口转发或者切换成桥接模式。5.2 使用 NAT 端口转发实现宿主机访问如果你只希望在宿主机上用 SSH 连接虚拟机NAT 加端口转发是最简单的方式。先在 Ubuntu 中安装 OpenSSH 服务sudo apt install -y openssh-server确认 22 端口监听sudo systemctl status ssh然后在 VirtualBox 设置中选择“网络”-“端口转发”添加一条规则参数值协议TCP主机 IP127.0.0.1主机端口2222子系统 IP留空子系统端口22保存后在宿主机终端执行ssh -p 2222 ubuntu127.0.0.1输入虚拟机中的用户密码即可登录。使用端口转发的好处是虚拟机网络仍然是 NAT不依赖局域网环境即使宿主机 Wi-Fi 或 IP 变化也能稳定连接。也可以使用命令行动态添加规则VBoxManage controlvm ubuntu20.04 natpf1 ssh,tcp,127.0.0.1,2222,,22删除规则时执行VBoxManage controlvm ubuntu20.04 natpf1 delete ssh如果宿主机防火墙拦截了 2222 端口需要在防火墙中放行该端口。5.3 使用桥接模式让虚拟机与局域网互通如果希望虚拟机被局域网中的其他设备直接访问比如从手机访问 Ubuntu 上的 Web 服务可以关闭虚拟机后在 VirtualBox 网络设置中选择“桥接网卡”然后在“界面名称”中选择宿主机当前使用的物理网卡。启动虚拟机后通过ip addr查看 Ubuntu 的 IPip addr show桥接模式下虚拟机通常能直接从路由器获得一个局域网 IP。只要网络没有隔离策略局域网内的其他设备就可以通过ssh ubuntu虚拟机IP直接访问。桥接模式不稳定时优先确认物理网卡选的是不是正在使用的那个。无线网卡环境下桥接有时会不通可以改用 NAT 加端口转发或者使用 USB 无线网卡但这种方案比较复杂不建议新手优先尝试。5.4 在 Ubuntu 20.04 中配置静态 IP 与常见网络错误Ubuntu 20.04 使用 netplan 管理网络配置文件位于/etc/netplan/。如果希望虚拟机使用固定 IP可以编辑类似01-network-config.yaml的文件network: version: 2 ethernets: enp0s3: dhcp4: no addresses: - 192.168.1.100/24 routes: - to: default via: 192.168.1.1 nameservers: addresses: - 8.8.8.8 - 114.114.114.114然后应用配置sudo netplan applyenp0s3是虚拟机默认网卡名称不同环境可能不同先用ip addr查看实际名称。如果配置后无法联网按以下顺序排查检查ip addr中网卡是否有 IP。检查ping 192.168.1.1是否能通网关。检查ping 8.8.8.8是否能通公网 IP。检查/etc/resolv.conf是否能正常解析域名。检查 VirtualBox 网络模式是否与配置文件匹配。现象可能原因常用检查无法获取 IPDHCP 未开或网卡未启用sudo dhclient enp0s3能 ping 通 IP不能解析域名DNS 配置错误cat /etc/resolv.conf宿主机无法 ping 通虚拟机网络模式是 NAT切换桥接或配置端口转发桥接后仍然不通选错网卡或公司网络限制查看 VirtualBox 日志换有线网卡测试6. 常见启动失败与运行异常排查清单6.1 “客户机操作系统已禁用 CPU”错误有些用户启动虚拟机时会看到类似“客户机操作系统已禁用 CPU。请关闭或重置虚拟机”的提示。这种情况最常见的原因是 CPU 虚拟化没有开启或者宿主机 Windows 的 Hyper-V 与 VirtualBox 冲突。先检查任务管理器里的“虚拟化”状态。如果显示“已启用”问题可能出在 Hyper-V 相关功能上。Windows 开启 Hyper-V、WSL2、内核隔离或内存完整性时VirtualBox 访问硬件虚拟化可能被阻止。可以尝试以管理员身份运行命令提示符bcdedit /set hypervisorlaunchtype off重启后看问题是否解决。这个操作会影响单个宿主机上使用 Hyper-V 的功能执行前要确认自己是否依赖 Hyper-V 或 WSL2。如果确实需要这些功能可能需要改用 VMware 或 WSL 方案而不是强制关闭 Hyper-V。如果 CPU 虚拟化原本就是关闭状态需要进入 BIOS 或 UEFI 开启。不同主板的设置项名称不同一般在高级、处理器配置或虚拟化相关分类下开启后保存退出。6.2 安装后开机黑屏或卡在开机画面黑屏问题在 VirtualBox 安装 Ubuntu 时经常出现可能发生在安装过程中也可能发生在安装完成后第一次启动。常见原因有ISO 文件损坏导致图形界面加载失败。VirtualBox 显卡设置与 Ubuntu 图形驱动不兼容。启用了 3D 加速但显存或驱动不支持。增强功能安装失败导致启动进入异常分辨率。排查步骤如下先检查 ISO 是否通过校验。在 VirtualBox 设置中关闭“启用 3D 加速”显存调到 128MB。尝试切换图形控制器在 VMSVGA、VBoxSVGA、VBoxVGA 之间切换。启动时在 GRUB 菜单按e在linux行末尾加入nomodeset按CtrlX启动。如果这样能进入系统再考虑修改 grub 配置。sudo sed -i s/quiet splash/quiet splash nomodeset/ /etc/default/grub sudo update-grub黑屏问题不一定只有一个原因排查时一次只改一个变量避免同时修改多个设置导致无法定位根因。6.3 增强功能安装失败或共享文件夹不可见增强功能安装失败的提示通常很明确比如找不到linux-headers或者 DKMS 编译失败。先安装依赖再重新执行脚本sudo apt install -y build-essential dkms linux-headers-$(uname -r) sudo mount /dev/cdrom /media/cdrom sudo sh /media/cdrom/VBoxLinuxAdditions.run如果脚本提示已经安装但共享文件夹还是不可见先检查用户组id $USER groups $USER如果输出中没有vboxsf执行sudo usermod -aG vboxsf $USER然后注销登录。如果仍然不行可以尝试sudo /sbin/rcvboxadd quicksetup这个命令会重新尝试编译并加载增强功能模块。千万不要以为安装脚本执行成功就结束了一定要用lsmod | grep vboxguest验证模块是否真正加载。6.4 虚拟机卡顿与资源占用过高虚拟机卡顿的原因通常不只是 VirtualBox 的问题而是资源分配不合理。内存仅分配 1GB 时Ubuntu 桌面版会非常卡开启多个虚拟机时宿主机内存被耗尽也会导致卡顿。建议按以下标准分配资源场景内存CPU磁盘最小学习环境2GB2核30GB 动态桌面日常使用4GB2核50GB 动态编译或运行 Docker6GB-8GB4核100GB 动态如果虚拟机已经运行还可以给宿主机安装 SSD并确保虚拟硬盘放在 SSD 上。机械硬盘上的动态磁盘在需要扩容时会出现明显的卡顿这是物理硬件限制。6.5 虚拟硬盘迁移和重新挂载VirtualBox 虚拟机迁移到另一台电脑不是简单复制文件就能保证正常使用。如果只是迁移整个目录新电脑打开.vbox文件时可能提示找不到.vdi文件或者因为路径变化导致启动失败。最简单的方式是使用 VirtualBox 的“导出虚拟电脑”功能生成 OVA 文件然后在其他电脑导入。也可以直接复制整个虚拟机目录然后用“控制”-“注册”导入.vbox文件。如果.vdi文件 UUID 冲突可以通过命令行调整VBoxManage internalcommands sethduuid ubuntu20.04.vdi执行这个命令前先备份原文件因为 UUID 改变会影响已经存在的快照链。如果只是要复制虚拟机到同一个 VirtualBox 中推荐用VBoxManage clonevm ubuntu20.04 --name ubuntu20.04-clone --register克隆的新虚拟机不会影响原虚拟机适合做测试副本。7. 从学习环境到生产环境的注意事项7.1 为什么建议先做快照再改系统配置虚拟机最大的优势之一就是快照。快照可以在系统状态良好的时候保存一份现场之后无论怎么折腾都可以恢复到这个时间点。建议在刚安装完 Ubuntu、做好系统更新、安装完增强功能后拍摄第一个快照。这样后续安装 ROS、Docker 或修改内核参数时即使系统崩溃也能快速回到干净状态。拍摄快照可以在 VirtualBox 界面“快照”面板中点击“拍摄快照”。命令行方式VBoxManage snapshot ubuntu20.04 take clean-after-install \ --description Ubuntu 20.04 with Guest Additions恢复快照VBoxManage snapshot ubuntu20.04 restore clean-after-install快照不是备份的替代品。快照会占用额外磁盘空间且随着时间推移可能非常大长期运行的生产服务不要依赖快照作为唯一恢复手段。7.2 资源分配、备份和清理策略学习环境可以随意分配资源但生产环境需要更克制。虚拟机不是真机它依赖宿主机稳定运行。如果宿主机本身资源紧张不建议同时运行多个重型虚拟机。备份策略方面日常使用可以定期导出 OVA 文件或者直接复制虚拟硬盘文件。导出前最好先关闭虚拟机避免磁盘状态不一致。如果动态分配的虚拟硬盘越来越大而虚拟机内部已经删除大量文件磁盘文件不会自动缩小。可以先在 Ubuntu 中清理文件并释放空间sudo fstrim -v /然后关闭虚拟机在宿主机执行压缩VBoxManage modifymedium disk ubuntu20.04.vdi --compact注意--compact只对 VDI 格式有效而且虚拟机必须处于关闭状态。7.3 在 Ubuntu 20.04 上安装常用开发环境的简要流程Ubuntu 20.04 安装完成后通常先安装基础工具sudo apt update sudo apt install -y git curl vim build-essential net-toolsPython 3.8 是 Ubuntu 20.04 自带的版本但很多项目已经迁移到更高版本建议使用pyenv或conda管理 Python 版本避免直接替换系统 Python。如果需要安装 ROS NoeticROS Noetic 和 Ubuntu 20.04 的搭配很常见。安装流程通常包括添加 ROS 软件源、设置密钥、更新索引、安装ros-noetic-desktop-full。由于软件源地址和密钥信息可能变化落地前以 ROS 官方 wiki 的当前步骤为准。安装完成后还需要在~/.bashrc中加载 ROS 环境source /opt/ros/noetic/setup.bash这个步骤是学习 ROS 的同学经常遗漏的环境变量不加载ros 命令就无法直接使用。7.4 后续扩展方向PXE 安装、VNC、Docker、系统升级VirtualBox 安装 Ubuntu 20.04 只是起点。掌握基本安装后还可以继续扩展使用 PXE 网络安装 Ubuntu 20.04尤其适用 UEFI 启动环境可以批量部署多台虚拟机。配置 VNC 服务在局域网用图形客户端远程访问 Ubuntu 桌面。在 Ubuntu 中安装 Docker用于创建容器测试环境。创建 NAT Network把多个 Ubuntu 虚拟机组成一个小型局域网模拟服务器集群。如果需要升级到 Ubuntu 24.04先在快照基础上执行do-release-upgrade确认关键软件兼容后再影响正式环境。每一步扩展都会遇到新问题但底层的 VirtualBox 操作、网络配置、快照和排错思路是相通的。把上一篇安装过程中遇到的坑记录下来后续遇到类似问题会更快定位。比如 VirtualBox 网络不通先检查模式开机黑屏先关 3D 加速增强功能失效先重新编译内核模块。掌握这些常见排查路径比记住某一条具体命令更有价值。
返回列表