Ubuntu 22.04双系统安装全攻略:从分区到开发环境搭建 1. 项目概述为什么选择Ubuntu 22双系统如果你正在看这篇内容大概率是厌倦了Windows的某些限制或者对Linux世界充满好奇想在不放弃现有Windows环境的前提下体验Ubuntu 22.04 LTSJammy Jellyfish的魅力。实机安装双系统而不是使用虚拟机能让你100%调用硬件性能无论是跑深度学习、做嵌入式开发还是单纯享受一个干净、高效、可高度定制的桌面环境这都是最直接的方式。我经历过无数次从Windows到Linux的切换也帮不少朋友处理过安装后引导丢失、分区踩坑的问题。这篇教程的目标就是让你能避开我踩过的所有坑用一台电脑同时拥有Windows的生产力生态和Ubuntu的开发自由。整个过程从准备U盘到系统配置我会把每一步的原理、操作意图和可能遇到的“坑”都讲清楚。无论你是想为ROS机器人操作系统或Gazebo搭建环境还是想学习Python、配置Git、玩转Docker一个稳定的Ubuntu双系统都是绝佳的起点。2. 核心准备工具、镜像与安全备份在动刀分区之前充分的准备是成功的一半。这个阶段的核心是“无损”和“可回退”确保即使安装失败你的Windows和数据也能安然无恙。2.1 工具与镜像下载你需要准备两样东西一个至少8GB的U盘用于制作启动盘以及Ubuntu 22.04 LTS的ISO镜像文件。获取Ubuntu镜像前往Ubuntu官方网站下载。我强烈建议选择22.04 LTS版本而不是更新的非LTS版。LTS代表长期支持官方提供长达5年的安全更新稳定性是学习和生产环境的基石。对于热词中提到的gazebo安装ros环境ubuntu22或mysql、docker等开发环境LTS版本拥有最广泛的社区支持和最稳定的软件包。制作启动U盘的工具在Windows下Rufus是首选。它开源、轻量、成功率高。热词里提到了rufus它的确比某些大型工具更可靠。下载时注意选择“便携版”无需安装。注意制作启动盘会完全清空U盘内所有数据请务必提前备份U盘里的重要文件。2.2 至关重要的数据备份与磁盘管理准备这是最容易忽略也最致命的一步。安装双系统需要对硬盘进行重新分区操作不当有数据丢失风险。全盘备份将Windows系统盘通常是C盘以及存放重要文档、项目代码的磁盘中的重要数据备份到移动硬盘、网盘或其他物理隔离的存储中。不要抱有侥幸心理。为Ubuntu腾出空间这是核心操作。我们需要在Windows的磁盘上“挖”出一块未分配的空间给Ubuntu安装。打开Windows的“磁盘管理”右键点击“此电脑”-“管理”-“磁盘管理”。找一个剩余空间较大的分区通常是D盘或E盘。右键点击该分区选择“压缩卷”。系统会计算可压缩的空间。对于Ubuntu桌面系统我建议至少分配50GB。如果你想安装大量软件、存放开发项目或数据集80-100GB会更从容。在“输入压缩空间量”里填入你想要的容量单位是MB例如50GB 51200MB。点击“压缩”后你会在磁盘布局中看到一块黑色的“未分配”空间。到此为止不要再进行任何操作这块未分配的空间就是我们留给Ubuntu的家。实操心得压缩空间时如果系统提示“可用压缩空间大小”远小于分区实际剩余空间这通常是因为磁盘碎片或不可移动的系统文件如页面文件、休眠文件导致。可以尝试临时关闭Windows的休眠以管理员身份打开命令提示符输入powercfg -h off和虚拟内存系统属性-高级-性能设置-高级-虚拟内存更改然后重启再试。操作完成后可以再重新开启。3. 启动盘制作与BIOS/UEFI设置详解有了未分配空间和ISO镜像接下来就是让电脑能从U盘启动并安装Ubuntu。3.1 使用Rufus制作Ubuntu启动盘插入U盘以管理员身份运行Rufus。在“设备”下拉菜单中准确选择你的U盘千万别选错成硬盘。点击“选择”按钮找到你下载的Ubuntu 22.04 ISO文件。分区类型和目标系统类型这里是最关键的一步。你需要根据你当前Windows的启动模式来选择如何判断在Windows搜索框输入“系统信息”并打开查看“BIOS模式”一项。如果显示“UEFI”则你的电脑是UEFI启动如果显示“传统”则是Legacy BIOS启动。UEFI模式现代电脑绝大多数都是在Rufus中“分区类型”应选择GPT“目标系统类型”选择UEFI (非CSM)。传统BIOS模式较老电脑选择MBR和BIOS (或UEFI-CSM)。其他选项保持默认文件系统为FAT32UEFI必须。点击“开始”Rufus会提示采用“ISO镜像模式”写入点击“确定”。等待进度条走完启动盘就制作好了。3.2 配置BIOS/UEFI启动项制作好启动盘后需要重启电脑并进入BIOS/UEFI设置界面调整启动顺序。进入BIOS/UEFI重启电脑在开机自检画面出现时快速连续按特定键。常见按键有Delete、F2、F10、F12戴尔电脑常用或Esc。如果不知道可以快速搜索“你的电脑品牌进入BIOS按键”。关闭安全启动Secure Boot在UEFI设置中找到“Security”或“Boot”选项卡下的“Secure Boot”选项将其设置为Disabled。虽然较新的Ubuntu版本支持Secure Boot但关闭它可以避免很多潜在的驱动和引导问题是更稳妥的做法。调整启动顺序找到“Boot”或“启动”选项。将“UEFI: [你的U盘品牌名]”或“Removable Devices”移动到启动顺序的第一位。保存并退出通常按F10键选择“Yes”保存设置并重启。电脑会自动从U盘启动进入Ubuntu的Live CD试用环境。4. Ubuntu安装过程核心步骤拆解从U盘启动后你会进入Ubuntu的桌面环境。你可以先试用但我们的目标是安装。点击桌面上的“Install Ubuntu 22.04 LTS”图标开始。4.1 语言、键盘与更新选项前几步比较简单选择语言、键盘布局。在“更新和其他软件”页面我建议做如下选择正常安装会包含网页浏览器、办公套件、游戏等常用软件适合大多数用户。最小安装只安装最基本的系统和工具非常干净。如果你追求极简或者打算自己配置一切如热词中的zsh、fishros可以选这个。为图形或无线硬件安装第三方软件务必勾选。这个选项会安装闭源的显卡驱动、Wi-Fi网卡驱动等能极大提高硬件兼容性和使用体验避免安装后上不了网、屏幕分辨率不对的尴尬。下载更新同时安装Ubuntu如果你安装时网络环境好可以勾选节省后续更新时间。网络不好则不勾选装完系统再更新。4.2 安装类型双系统的核心——“手动分区”这是整个安装过程中最核心、也最容易出错的一步。请务必选择“其他选项”或“手动分区”而不是“安装Ubuntu与Windows Boot Manager共存”。自动安装有时会出错手动分区让你完全掌控。接下来你会看到磁盘分区界面其中应该包含你之前压缩出来的那块“空闲”空间。我们需要在这块空闲空间上创建几个必需的分区。对于UEFI启动的电脑通常至少需要两个分区一个EFI系统分区一个根分区。我推荐更清晰的三分区方案EFI系统分区作用存放系统引导文件。双系统下Ubuntu和Windows会共享这个分区如果Windows也是UEFI启动。操作点击“空闲”空间点击“”号。大小512MB足够。类型EFI系统分区。位置空间起始位置。交换空间swap作用相当于虚拟内存。当物理内存不足时系统会使用这部分空间。对于拥有8GB或以上物理内存的现代电脑交换空间的作用更多是用于休眠hibernate功能。操作再次点击剩余的空闲空间点击“”。大小一个经验法则是与你的物理内存大小相同或略大。例如你有16GB内存可以设置16GB-20GB。类型交换空间。根分区/作用这是Ubuntu系统的核心所有系统文件、安装的软件如pythongit,docker,pycharm,vscode默认都存放在这里。操作使用剩下的所有空闲空间。挂载点选择/。文件系统类型选择ext4。这是Linux最常用、最稳定的日志文件系统。重要提示在分区界面底部有一个“安装启动引导器的设备”下拉菜单。这里必须选择你刚才创建的EFI系统分区对应的设备通常是/dev/sda或/dev/nvme0n1后面的分区号例如/dev/sda1或/dev/nvme0n1p1。确保它指向的是我们新建的EFI分区而不是整个磁盘或Windows的EFI分区这能最大程度避免覆盖Windows引导。4.3 用户设置与最终安装分区完成后点击“现在安装”确认分区更改。接下来设置时区、创建用户名和密码。计算机名会显示在终端提示符和网络上取个喜欢的名字。用户名和密码记住它这是你登录系统和进行sudo管理员操作的凭证。之后安装程序开始复制文件。这个过程取决于你的U盘速度和电脑性能一般需要10-20分钟。安装完成后会提示你重启。注意事项重启时可能会提示你“请移除安装介质然后按回车键”。此时一定要拔掉U盘再按回车否则电脑可能会再次从U盘启动。5. 安装后的首要配置与引导管理重启后你应该会看到一个名为GRUB的图形化菜单列出了Ubuntu和Windows的启动选项。恭喜双系统安装的核心部分已经成功5.1 解决可能出现的引导问题如果你重启后直接进入了Windows没有看到GRUB菜单这说明Ubuntu的引导器没有正确接管。这是双系统安装后最常见的问题之一。别慌我们可以从Ubuntu Live CD环境修复。再次用U盘启动进入“试用Ubuntu”模式。打开终端CtrlAltT依次输入以下命令sudo add-apt-repository ppa:yannubuntu/boot-repair sudo apt update sudo apt install boot-repair boot-repair运行boot-repair后会弹出一个图形界面。点击“Recommended repair”推荐修复。工具会自动检测你的系统并修复GRUB引导。完成后重启通常就能看到启动菜单了。5.2 初始系统更新与驱动安装进入Ubuntu后第一件事是更新系统并安装合适的显卡驱动以获得最佳性能。更新软件源和系统打开终端输入sudo apt update sudo apt upgrade -y这会让你的系统获取最新的安全补丁和软件更新。安装显卡驱动对于NVIDIA显卡Ubuntu自带的“软件和更新”应用里的“附加驱动”选项卡通常能自动检测并推荐专有驱动。选择带有“proprietary, tested”字样的推荐驱动应用更改即可。对于AMD显卡开源驱动通常已集成且性能良好。5.3 配置GRUB引导菜单美化与调整默认的GRUB可能不够美观或者默认启动项不是你想选的。我们可以用grub-customizer这个工具来调整。安装它sudo add-apt-repository ppa:danielrichter2007/grub-customizer sudo apt update sudo apt install grub-customizer运行grub-customizer你可以调整默认启动项在“常规设置”里选择你希望默认启动的系统如Windows。调整等待时间设置菜单显示的秒数。修改背景图片让启动菜单更个性化。调整菜单项顺序把常用的系统拖到前面。6. 开发环境快速搭建指引系统稳定后就可以着手搭建你的开发环境了。结合热词这里给出几个核心工具的极简安装指引。6.1 Python与PyCharm/VSCodeUbuntu 22.04 默认已经安装了Python 3.10。你可以通过python3 --version确认。安装pipPython包管理器sudo apt install python3-pip安装PyCharm前往JetBrains官网下载Linux版的PyCharm Professional或Community的.tar.gz包。解压到/opt目录是个好习惯sudo tar -xzf pycharm-*.tar.gz -C /opt/进入解压后的bin目录运行./pycharm.sh即可启动。可以创建桌面快捷方式。安装VSCode最方便的方式是通过Snap包安装这是Ubuntu推荐的沙盒化软件格式sudo snap install --classic code安装后在应用菜单中就能找到Visual Studio Code。6.2 Git安装与基础配置Git是版本控制必备工具。安装Gitsudo apt install git全局配置用户信息提交代码时用git config --global user.name 你的名字 git config --global user.email 你的邮箱生成SSH密钥并添加到GitHub/GitLabssh-keygen -t ed25519 -C 你的邮箱 # 一路回车 cat ~/.ssh/id_ed25519.pub # 复制输出的公钥将公钥粘贴到你的GitHub或GitLab账户的SSH Keys设置中。6.3 Docker与Miniconda环境隔离对于需要复杂依赖或环境隔离的项目这两个工具是神器。安装Docker Engine卸载旧版本如有sudo apt remove docker docker-engine docker.io containerd runc设置仓库并安装sudo apt update sudo apt install ca-certificates curl sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc echo deb [arch$(dpkg --print-architecture) signed-by/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release echo $VERSION_CODENAME) stable | sudo tee /etc/apt/sources.list.d/docker.list /dev/null sudo apt update sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin将当前用户加入docker组避免每次用sudosudo usermod -aG docker $USER需要重新登录才能使组权限生效。安装Miniconda轻量级Anaconda从清华镜像站下载安装脚本更快wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh bash Miniconda3-latest-Linux-x86_64.sh按照提示安装安装完成后重启终端或运行source ~/.bashrc即可使用conda命令创建独立的Python环境。7. 常见问题与故障排查实录即使步骤再详细实操中也可能遇到意外。这里记录了几个最常见的问题和解决方法。7.1 安装过程中卡死或无响应症状在“复制文件”或“安装系统”阶段进度条长时间不动。排查检查ISO和U盘可能是下载的ISO文件损坏或U盘制作有问题。重新下载镜像换一个U盘或USB接口用Rufus重新制作。关闭安全启动和快速启动确保BIOS/UEFI中Secure Boot已关闭。同时在Windows的“电源选项”中关闭“快速启动”这能避免Windows锁住硬盘导致Linux安装程序无法正常访问。尝试“安全图形模式”在GRUB启动菜单刚插U盘启动时选择“Try or Install Ubuntu”然后按e键编辑启动参数。在linux开头的那一行末尾在---之前添加nomodeset参数。然后按F10启动。这会使用基础显示驱动绕过可能出问题的专有显卡驱动。7.2 安装后无法连接Wi-Fi症状系统安装完成但Wi-Fi列表为空或无法连接。排查检查驱动首先确认在安装时勾选了“安装第三方驱动”。如果没有可以尝试用网线连接然后打开“软件和更新”-“附加驱动”查看是否有可用的无线网卡驱动。手动安装驱动对于某些Realtek等品牌的网卡可能需要手动安装。用手机USB网络共享给电脑提供临时网络然后根据你的网卡型号搜索“Ubuntu 22.04 [网卡型号] driver”来查找安装方法。7.3 Windows时间显示错误症状进入Windows后发现时间慢了8小时或快了。原因Windows默认将硬件时钟RTC视为本地时间而Linux/Ubuntu默认将其视为UTC协调世界时两者时区处理方式不同。解决在Ubuntu终端中执行以下命令让Ubuntu也使用本地时间即可解决冲突timedatectl set-local-rtc 1 --adjust-system-clock7.4 如何卸载Ubuntu双系统如果未来想移除Ubuntu需要两步删除Ubuntu分区从Windows的“磁盘管理”中删除之前为Ubuntu创建的所有分区ext4, swap等合并为未分配空间。修复Windows引导使用Windows安装U盘或恢复环境打开命令提示符执行以下命令重建Windows引导bootrec /fixmbr bootrec /fixboot bootrec /scanos bootrec /rebuildbcd完成后重启电脑将直接进入WindowsGRUB菜单消失。我个人在多次安装双系统的经验中最大的体会就是“准备大于操作”。分区前备份数据、确认启动模式、制作可靠的启动盘这三件事做好整个安装过程就会顺利很多。遇到问题别急着重装多利用Ubuntu强大的社区搜索错误信息十有八九能找到解决方案。现在你的双系统已经就绪可以尽情探索开源世界的无限可能了。如果在后续配置zsh、ros或docker环境时遇到问题记住终端和搜索引擎是你最好的朋友。

相关新闻

最新新闻

Ansys Electronics 2022安装失败?FLEXlm许可证配置与系统级排错全解析

Ansys Electronics 2022安装失败?FLEXlm许可证配置与系统级排错全解析

1. 问题定位与核心原因剖析看到“安装Ansys Electronics 2022时出现了下面的问题”这个标题,我几乎能立刻感受到屏幕前那份熟悉的焦躁。作为一款在电磁仿真、电路设计和多物理场耦合领域占据绝对主导地位的工业软件,Ansys Electronics Desktop&#xff0…

2026/8/7 6:06:28
掌握Hermes Agent核心技能:小白程序员必备的技能闭环系统学习指南(收藏版)

掌握Hermes Agent核心技能:小白程序员必备的技能闭环系统学习指南(收藏版)

Hermes Agent的Skills闭环系统通过经验提取、知识存储、智能检索等环节,实现了可复用、可迭代的方法资产库。本文深入剖析了Agent自主创建Skill、提炼步骤、按需加载与控制开销等关键机制,并通过源码解析展示了Skills系统的完整实现。对于想要了解AI Age…

2026/8/7 6:06:28
解决若依项目npm依赖冲突与废弃模块警告

解决若依项目npm依赖冲突与废弃模块警告

1. 问题现象与背景分析最近在启动若依(RuoYi)前端项目时,不少开发者遇到了这样的报错信息:npm WARN ERESOLVE overriding peer dependency npm WARN deprecated inflight1.0.6: This module...这个看似简单的警告信息背后,实际上反映了Node.j…

2026/8/7 6:06:28
Substance Designer与Unity Shader实现丝绸PBR材质全流程解析

Substance Designer与Unity Shader实现丝绸PBR材质全流程解析

1. 项目概述与核心思路拆解看到“用Substance Designer制作丝绸PBR贴图”这个标题,很多朋友的第一反应可能是:这不就是一个材质制作教程吗?但如果你仔细琢磨“从A站大神作品反推”这个前缀,就会发现它的价值远不止于此。这实际上是…

2026/8/7 6:06:28
Unity游戏实时翻译插件原理与实战:XUnity自动翻译器深度解析

Unity游戏实时翻译插件原理与实战:XUnity自动翻译器深度解析

1. 项目概述:为什么我们需要XUnity自动翻译器?如果你是一名Unity游戏开发者,或者是一位热衷于体验全球独立游戏的玩家,那么“语言不通”这个问题你一定深有体会。面对Steam上琳琅满目的优秀作品,尤其是那些来自非英语地…

2026/8/7 6:06:28
Spring Boot @RequestBody注解深度解析:从原理到实战避坑指南

Spring Boot @RequestBody注解深度解析:从原理到实战避坑指南

1. 从一次“诡异”的接口报错说起那天下午,我正在调试一个新增用户信息的接口。前端同学发来消息,说调用一直报400错误,请求体格式不对。我自信满满地打开Postman,按照接口文档,构造了一个标准的JSON对象:{…

2026/8/7 6:01:28