1. 项目概述
在Windows系统之外安装Ubuntu双系统,是很多开发者和技术爱好者的刚需。作为一个长期使用Linux的老用户,我最近在联想小新Pro16(i7-12700H/RTX3050)上成功安装了Ubuntu 22.04 LTS双系统,整个过程踩了不少坑,也积累了一些实用经验。这篇记录将详细展示从准备到配置的全过程,特别针对UEFI启动模式和NVIDIA显卡的兼容性问题提供了解决方案。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 准备工作
2.1 硬件与软件需求
- 至少30GB的可用磁盘空间(建议50GB以上)
- 8GB以上U盘(推荐USB3.0)
- Rufus 3.22或更新版本
- Ubuntu 22.04 LTS镜像(建议从官网下载)
注意:如果电脑有NVIDIA显卡,强烈建议选择带"non-free"驱动的版本,否则安装后可能无法正常进入图形界面。
2.2 磁盘分区调整
在Windows中使用磁盘管理工具压缩现有分区:
- Win+X → 磁盘管理
- 右键点击要压缩的分区 → 压缩卷
- 建议至少分配50GB空间(开发用途建议100GB)
实测发现:NTFS文件系统在压缩时可能会出现"虚拟磁盘服务错误",这时需要先运行
chkdsk /f修复磁盘错误。
3. 制作启动盘
3.1 使用Rufus创建可启动U盘
- 插入U盘(注意备份数据)
- 打开Rufus → 选择设备(确认是目标U盘)
- 选择下载的Ubuntu ISO镜像
- 分区类型选择"GPT"
- 目标系统选择"UEFI(非CSM)"
- 文件系统保持FAT32
- 点击开始 → 选择"以DD镜像模式写入"
关键点:很多安装失败是因为使用了错误的写入模式。Ubuntu安装器对DD模式兼容性最好。
4. BIOS设置调整
4.1 必要修改项
- 关闭Secure Boot
- 关闭Fast Boot
- 关闭Intel RST(改为AHCI模式)
- 确保启动模式为UEFI(非Legacy)
警告:改为AHCI模式后Windows可能无法启动,需要提前在Windows中修改注册表:
- 运行regedit
- 找到HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\iaStorV
- 将Start值改为0
- 对iaStorAVC、storahci做同样修改
5. 安装过程详解
5.1 启动安装程序
- 插入U盘 → 开机按F12(不同品牌按键可能不同)
- 选择UEFI: [你的U盘名称] 启动项
- 在GRUB界面选择"Try or Install Ubuntu"
5.2 分区方案设计
建议手动分区(选择"Something else"):
- EFI系统分区:300MB(逻辑分区/EFI)
- 交换空间:内存大小的1-1.5倍(主分区/swap)
- /根分区:至少30GB(逻辑分区/ext4)
- /home分区:剩余空间(逻辑分区/ext4)
经验:将/home单独分区便于后续重装系统时保留用户数据。
5.3 安装后配置
- 地区选择:建议保持默认(后续可调整)
- 键盘布局:选择"English(US)"
- 用户名和密码:记住你设置的密码(sudo会用到)
- 安装第三方软件:建议勾选(包含显卡驱动等)
6. 首次启动问题排查
6.1 NVIDIA显卡黑屏问题
如果卡在紫色界面或黑屏:
- 在GRUB界面按e编辑启动参数
- 在"linux"行末尾添加
nomodeset - 按F10启动
- 进入系统后安装官方驱动:
bash复制sudo ubuntu-drivers autoinstall
sudo reboot
6.2 双系统引导修复
如果启动直接进入Windows:
- 使用Ubuntu安装U盘进入试用模式
- 挂载原系统分区:
bash复制sudo mount /dev/nvme0n1pX /mnt # X是你的根分区号
sudo mount /dev/nvme0n1pY /mnt/boot/efi # Y是EFI分区号
- 修复GRUB:
bash复制sudo grub-install --root-directory=/mnt /dev/nvme0n1
sudo update-grub
7. 基础配置优化
7.1 更换国内源
bash复制sudo sed -i 's|http://.*archive.ubuntu.com|https://mirrors.aliyun.com|g' /etc/apt/sources.list
sudo apt update && sudo apt upgrade -y
7.2 安装中文输入法
推荐使用Fcitx5框架:
bash复制sudo apt install fcitx5 fcitx5-chinese-addons fcitx5-frontend-gtk3 fcitx5-frontend-gtk2 fcitx5-frontend-qt5
然后下载搜狗输入法Linux版的deb包安装:
bash复制sudo apt install ./sogoupinyin_xxx.deb
7.3 必备软件推荐
开发工具:
bash复制sudo apt install git vim build-essential python3-pip
日常应用:
bash复制sudo apt install flameshot gimp vlc
8. 磁盘空间扩展
如果后续需要扩容Ubuntu分区:
- 在Windows中压缩出一个新空间
- 使用GParted(需从LiveCD启动):
- 删除swap分区
- 调整根分区大小
- 重建swap分区
- 更新/etc/fstab中的UUID(如果有变化)
9. 系统备份策略
建议定期备份:
- 重要配置文件(/etc目录)
- 用户数据(/home目录)
- 已安装软件列表:
bash复制# 备份
apt list --installed > installed_packages.txt
# 恢复
xargs sudo apt install < installed_packages.txt
10. 常见问题解决方案
10.1 WiFi无法连接
尝试:
bash复制sudo service network-manager restart
如果仍无效,可能需要安装特定驱动:
bash复制sudo apt install --reinstall bcmwl-kernel-source
10.2 触摸板手势失效
安装Touchegg:
bash复制sudo apt install touchegg
sudo systemctl enable --now touchegg
10.3 外接显示器问题
对于NVIDIA显卡:
bash复制sudo nvidia-settings
在配置中设置正确的显示排列和分辨率。
11. 性能调优建议
- 禁用不必要的开机服务:
bash复制sudo systemctl disable bluetooth.service
- 使用preload预加载常用程序:
bash复制sudo apt install preload
- 调整swappiness值(针对大内存机器):
bash复制echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
12. 安全设置
- 启用防火墙:
bash复制sudo ufw enable
- 禁用root登录:
bash复制sudo passwd -l root
- 设置自动安全更新:
bash复制sudo apt install unattended-upgrades
sudo dpkg-reconfigure unattended-upgrades
13. 美化配置
- 安装GNOME Tweaks:
bash复制sudo apt install gnome-tweaks
- 推荐主题:
- Shell主题:WhiteSur-dark
- 图标:Tela-circle
- 扩展推荐:
- Dash to Panel
- Arc Menu
- GSConnect(手机互联)
14. 专业开发环境配置
14.1 Docker安装
bash复制sudo apt install docker.io
sudo systemctl enable --now docker
sudo usermod -aG docker $USER
14.2 CUDA工具包
对于NVIDIA显卡:
bash复制sudo apt install nvidia-cuda-toolkit
14.3 Python环境
推荐使用pyenv:
bash复制curl https://pyenv.run | bash
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
15. 系统监控与维护
- 安装htop:
bash复制sudo apt install htop
- 磁盘使用分析:
bash复制sudo apt install ncdu
- 日志查看:
bash复制sudo journalctl -f -u [服务名]
经过三天的实际使用测试,这套配置在我的开发机上运行非常稳定。特别是将交换分区设置为32GB(32GB内存机器)后,即使运行多个Docker容器和IDE也未见明显卡顿。对于偶尔出现的GNOME Shell崩溃问题,通过禁用有问题的扩展得到了解决。
