Ubuntu 24.04.2 LTS 桌面版安装、分区与配置指南
Ubuntu 24.04.2 LTS 桌面版安装涉及启动盘制作、磁盘分区、镜像源替换、中文输入法配置、NVIDIA 驱动与 CUDA 安装、Docker 环境部署及 GPU 支持、SSH 远程连接和常用软件安装。教程包含分区方案建议、驱动版本冲突解决、容器内 GPU 配置及镜像源设置等关键步骤,提供从系统初始化到开发环境搭建的完整操作指引。

Ubuntu 24.04.2 LTS 桌面版安装涉及启动盘制作、磁盘分区、镜像源替换、中文输入法配置、NVIDIA 驱动与 CUDA 安装、Docker 环境部署及 GPU 支持、SSH 远程连接和常用软件安装。教程包含分区方案建议、驱动版本冲突解决、容器内 GPU 配置及镜像源设置等关键步骤,提供从系统初始化到开发环境搭建的完整操作指引。

记录了一次完整的系统安装与环境配置过程,包括启动盘制作、安装引导、镜像源替换、中文输入法配置、驱动和 CUDA 安装、docker 安装和完整配置过程、SSH 配置、软件安装(App Store 软件安装与其他软件安装,以 VScode 和 Mathlab 为例),包含过程中遇到的错误和修正方法,供参考。
如果是电脑本身就安装了 Windows 系统,并且想要双系统,需要合理分区。
如果本身安装了 Windows 系统,之后只要 Linux 系统,建议先把 C 盘以外的所有硬盘格式化。C 盘在后续 Ubuntu 安装过程的分区步骤中也要格式化掉。
本身没有安装 Windows 系统直接跳过就可以。
在 Windows 系统中找到计算机管理 - 存储 - 磁盘管理,选择要用于 Linux 系统的分区,鼠标右键菜单选择格式化即可。
制作启动盘可以参考相关文档。
Ubuntu 下载:https://cn.ubuntu.com/download
插入启动盘,开机时狂按 Esc/Del/F2 键(取决于主板型号),进入 UEFI/BIOS 菜单,将启动项的顺序改为启动盘为第一,即可进入安装程序。
语言选择,可选中文。这里为了后续文件夹管理方便选择的英文。后续可以更改,不用担心。
辅助功能选择,没有特殊需求直接 Next。
选择键盘类型,之后可以改,后续会有添加拼音输入法的步骤。
是否联网安装,这里两个都可以选,不联网安装会快一些。
选择安装 Ubuntu。
可用更新直接跳过。
选择自定义安装。
选择默认配置,这样安装会快一些,扩展程序可以以后自己安装。
是否安装推荐软件,这一步可以什么都不选,后续再安装就可以。如果没选第一项后续手动安装 NVIDIA 驱动即可。
选择手动安装。
接下来就是硬盘分区。
基础分区方案(软件、包较少,不用 docker/MySQL,不跑模型可以使用这个方案):
| 挂载点 | 大小 | 类型 | 备注 |
|---|---|---|---|
| / | 100GB | ext4 | 系统根目录 |
| /home | 剩余 | ext4 | 用户数据 |
| swap | 内存 2 倍(4G/8G) | swap | 休眠需要 |
| /boot/efi | 512MB | EFI | UEFI 必选 |
发行版提供的程序会下载到/usr 中(如果不单独分区,会在根目录中),Docker 容器存储在 /var/lib/docker,MySQL 数据默认在 /var/lib/mysql。同时,Debian 系的软件包数据库和 APT 的元数据缓存都会存在这里。因此,如果需要使用 Docker 和 MySQL,建议这两个区单独分区,否则根目录(/)(相当于 Windows 的 C 盘)很容易爆满。
我的分区方案(1TB 硬盘):
| 挂载点 | 大小 | 类型 | 备注 |
|---|---|---|---|
| / | 100GB | ext4 | 系统根目录 |
| /home | 剩余 | ext4 | 用户数据,如果使用 conda,环境会存在这里 |
| swap | 8G | swap | 休眠需要 |
| /boot/efi | 1.13GB | FAT32 | UEFI 必选,自动生成 |
| /var | 300GB | ext4 | Docker 容器、MySQL 数据 |
| /usr | 250GB | ext4 | 发行版提供程序下载位置 |
左下角 - 号删除分区,+ 号增加分区。
如果原来安装了 Windows,后续不需要 Windows 系统,直接用 - 号删除原 Windows 的分区就可以了。注意,如果之后不需要 Windows 系统,并且 Windows 的分区(比如 C 盘)没有格式化的话,直接用 - 号把原来的 C 盘删掉就可以了。如果后续还需要用 Windows 系统,那么分给 Windows 的分区不要动。
/boot/efi 会自动挂载在左下角"Device for boot loader installation"选中的磁盘中。
如果不小心删错了分区,右下角 Revert 一键还原。
设置用户名和密码。
选择时区,选择不正确的时区可能会导致后续包安装的认证错误等问题。
确认信息。
点击 Install 开始安装。安装完成后按提示重启,拔出启动盘,按下 Enter 键,安装成功!
国内有时候网络不好,这里添加清华镜像源。官方网站有引导:https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/
Ubuntu 24.04 已经把源的位置改到/etc/apt/sources.list.d/ubuntu.sources 中(旧版本在 /etc/apt/sources.list,使用 vim 修改),使用 nano 修改镜像源文件:
sudo nano /etc/apt/sources.list.d/ubuntu.sources
(如果没有安装 nano,用以下指令安装即可)
sudo apt install nano
打开文件后,将网站中生成对应版本号的镜像源粘贴到文件中。按 ctrl+X 退出,Y 保存。更新镜像源:
sudo apt update
检查镜像源是否变化:
sudo apt-cache policy vim
看到有来自 tsinghua 的镜像,说明成功添加镜像源。
Ubuntu 默认没有开启 root 登录,如果有需求,按以下方法配置 root 用户:
sudo passwd root
按照提示设置密码。
验证:
su root
可以使用密码登入即成功。
只有如果开头选择的是英文,进入后要添加中文输入法才能打中文。
先在右上角设置中找到"Region & Languague"。
添加语言,找到中文,然后安装语言包(可能需要注销或重启才能生效,如果在这里把 Chinese 拖到 English 前面,整个系统都会变成中文的)。
选择"Keyborad"一项,点击添加键盘源。
找到中文,进入选择'Chinese(Intellengent Pinyin)'。右上角显示现在使用的输入法。shift 键快速切换。
如果这一步找不到这一项,可以使用命令下载拼音包。
sudo apt update
sudo apt install fcitx fcitx-pinyin fcitx-config-gtk
查看显卡型号,确定可以检测到显卡:
lspci | grep -i nvidia # 查看显卡型号
安装推荐驱动(如果前面安装 Ubuntu 时勾选了自动安装驱动,这一步可以不做)
sudo ubuntu-drivers autoinstall # 自动安装推荐驱动
sudo reboot # 重启生效
测试安装:
nvidia-smi
成功输出示例可参考官方文档。
Tips:安装完第二天 Ubuntu 自动更新,驱动不匹配。
解决方案
先检查是否是大版本有误。在 Ubuntu 桌面找到"Softare & Update"应用,选择 Additional Drivers,查看选择的驱动是否匹配。
卸载现有的驱动:
sudo apt purge nvidia* libnvidia*
sudo apt autoremove -y
sudo apt update
查看推荐驱动:
sudo ubuntu-drivers devices
输出结果中选择之前安装的版本。
如果想要具体到微版本号的,查询方法(以 550 为例):
sudo apt search nvidia-driver-550
安装对应版本驱动:
sudo apt install nvidia-driver-550 # 或者具体到微版本号:sudo apt install nvidia-driver-550 = 550.144.03-0ubuntu1
安装完之后有了新的错误,解决方案参考 NVIDIA 官方文档。
重新启动,按 Esc 或 F2 或 Del(取决于主板类型)进入 UEFI/BIOS,在菜单中禁用 Secure Boot。
我的选项中没有禁用这一项,只有 Standard/Custom,方法是将 Secure Boot Mode 改为 Custom,然后选择 Key Management,再选择 Clear Secure Boot Keys,删除所有密钥,保存并退出。
测试安装:
nvidia-smi
成功调取。
为了防止再出现这种情况,可以锁定版本,禁止自动更新:
sudo systemctl stop unattended-upgrades
sudo systemctl disable unattended-upgrades
在网站上选择对应版本。
按照网站所给的代码进行安装。
安装验证:
nvcc --version
输出显示版本号即为成功。
sudo apt update
sudo apt install -y ca-certificates curl gnupg lsb-release
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
sudo docker run hello-world
验证安装时出现了报错:Unable to find image 'hello-world:latest' locally docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": context deadline exceeded Run 'docker run --help' for more information
这里应该是因为校园网,无法连接 docker hub。
使用阿里云或华为云的镜像验证:
# 阿里云,似乎还需要登陆,不推荐:
sudo docker run registry.cn-hangzhou.aliyuncs.com/library/hello-world
# 华为云:
docker run swr.cn-east-3.myhuaweicloud.com/library/hello-world
输出显示成功。说明 Docker 安装成功。(如果后续不需要拉取 Docker 仓库的其他镜像,这样就可以了,不用管。如果项目需要拉取仓库其他镜像,建议添加镜像源)
添加 docker hub 镜像源:
sudo mkdir -p /etc/docker
sudo nano /etc/docker/daemon.json
填写以下内容:
{ "registry-mirrors": [ "https://docker.m.daocloud.io"#或者可以改成、添加其他镜像源 ] }
重启 docker 服务:
sudo systemctl daemon-reload
sudo systemctl restart docker
验证修改成功:
docker info
此时发现只有 root 用户有使用 docker 的权限。使用命令:
sudo usermod -aG docker $USER
$USER 替换为自己的用户名,将自己添加到 docker 用户组中,重启即可不加 sudo 也能使用 docker。
查看本地镜像:
docker images
可以看到之前拉取的 hello-world 镜像。
查看容器运行状态:
docker ps -a
可以看到我们之前运行的 hello world 的容器。
此时,我们还不能直接在容器中使用 GPU 驱动来加速模型训练。这一步需配置。采用官方手册的方法。
附上代码:
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
&& curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker
安装完成之后,尝试拉取镜像:
docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi
出现 GPU 可用信息。
拉取 Tensorflow 镜像:
docker pull tensorflow/tensorflow:latest-py3 # 或改成自己需要的版本
使用 docker images 查看镜像。
建议使用以下方法运行容器,方便管理:
docker run --gpus '"device=0,1"' -dit --privileged --pid=host --name <user>-<info> \
-v /home/<user>/docker_share:/home/<user>/docker_share \
-w /home/<user>/docker_share \
<docker image>:<tag>
'device=0,1'是 GPU 序号,在'docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi'命令中可以看到对应的序号,我这里只有一个 GPU,填写 0 就可以,如果有多块 GPU,可以在这里进行设置;
<user>-<info> 是容器名,为方便管理建议这样命名,尤其在多人一起使用一个工作站的情况下
-v 是挂载目录路径
-w 是工作目录路径
<docker image>:<tag> 两个变量前者对应 docker images 中的第一列,后者对应第二列,按需求填写即可。
运行示例:
docker run --gpus device=0 -dit --privileged --pid=host --name lyq-dcase2023 \
-v /home/lyq/docker_share:/home/lyq/docker_share \
-w /home/lyq/docker_share \
tensorflow/tensorflow:2.5.1-gpu
运行后可以在镜像运行状态中看到。
进入容器:
docker exec -it <name> /bin/bash
使用 ctrl + D 退出容器。
按自己的需求选择 anaconda 或 miniconda。
在终端导航到下载目录,并运行安装脚本。
注,Conda 安装的默认路径通常为/home/<用户名>/anaconda3,环境会存储在/home/<用户名>/anaconda3/.conda/envs,环境会存储在/home/<用户名>/anaconda3/conda/pkgs 中。如果安装到根目录中,普通用户将没有使用权限。因此,推荐不要修改默认安装路径,不要改到根目录中,这样也方便版本管理。
安装命令如下,$PATH 改为脚本所在路径即可,后续依照指令安装。
bash $PATH/Anaconda3-2024.10-1-Linux-x86_64.sh
添加到系统变量:
echo 'export PATH="$HOME/anaconda3/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
一般只要出现 (base) 就说明已经安装好了,也可以验证安装:
conda list
SSH 配置可以方便远程使用 GPU,只要和 Work Station 连在一个局域网下,就可以使用笔记本电脑或者其他设备登入工作站进行训练等操作。如果觉得有需要可以进行配置。
在终端安装 ssh 服务器、客户端:
sudo apt update
sudo apt install openssh-server openssh-client
开启 ssh 服务器和开机自启:
sudo systemctl start ssh
sudo systemctl enable ssh
配置服务器(可选):
sudo nano /etc/ssh/sshd_config
这里只改了两个地方:
禁止根用户登录。
允许密码登录。
Ctrl+X,Y,回车保存后重启 ssh 服务:
sudo systemctl restart sshd
查看地址:
ifconfig # 或 ip a
可以使用 VScode/MobaXterm 进行远程登录,临时传文件用终端也可以连接。这里演示 MobaXterm 的连接方法。注意,如果没有云服务器或公网 IP,需要和服务器在同一个局域网下才可以连接成功。
在左上角找到 Session。
输入服务器地址。
会显示"login as",按提示输入用户名和密码即可(和服务器上的用户名密码相同)。
登录成功。
在桌面上找到 App Center,找到自己想要的软件进行安装即可。这里安装路径默认位于\usr\local 文件夹。
先下载 Linux 版安装包,Matlab 下载地址:https://www.mathworks.com/downloads/
解压下载的压缩包,在终端机中运行:
cd $PATH #Matlab 解压路径
sudo ./install
然后按照提示激活许可证,安装需要的工具即可。
安装完成后在终端机中输入指令运行:
cd /usr/local/MATLAB/R20XXx/bin # 进入安装路径
./matlab
想要使用桌面图标,需要手动添加。
创建快捷方式文件:
sudo gedit /usr/share/applications/matlab.desktop
文件内容:
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Exec=/usr/local/MATLAB/R2024b/bin/matlab -desktop #记得改成对应的安装位置,如果是默认安装只需要版本号对应
Name=MATLAB
Icon=/usr/local/MATLAB/R2024b/toolbox/shared/dastudio/resources/MatlabIcon.png #这里的图标可以在 usr/local/MATLAB/R2024b/文件夹中搜索 MatlabIcon,在提供的几个图标里找到自己喜欢的那个。把路径复制上来就可以了
Categories=Math;Science
Comment=Scientific computing environment
StartupNotify=true
StartupWMClass=com-mathworks-util-PostVMInit
重启即可通过桌面图标进入 Matlab。
从网上下载安装包,在终端中输入:
sudo apt install $PATH/XXXXX.deb # 从 Path 安装

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online