使用 win11 + debian12 双系统有挺久了,稍微记一下使用经验。

挂载 win 下的盘

debian 可以自动识别 win 下的盘,但是是只读模式。这会造成一些麻烦,例如我们想将数据都放到 win 的 D 盘下面,这样就可以只给 debian 分配较小的空间,因此必须能对 win 下的磁盘进行读写,以支持在 debian 下的工作。

若 Windows 没有完全正常关机,而是进入了休眠或者启用了快速启动功能,会导致 Windows 的 NTFS 文件系统处于“不干净”的状态。为此,在 Windows 系统中进行操作:

  • 控制面板 -> 电源选项 -> 更改高级电源设置
  • 在“电源按钮和盖子”下面,将“按下电源按钮时”设置为“关机”
  • 取消勾选“启用快速启动(推荐)”
  • Apply

关机,启动 debian.

查看 Windows D 盘在 debian 系统中的设备名称:

1
sudo fdisk -l

安装 NTFS-3G 驱动:

1
2
sudo apt update
sudo apt install ntfs-3g

创建挂载点:

1
sudo mkdir /media/你的用户名/windows_d

挂载 Windows D 盘:

1
sudo mount -t ntfs-3g 实际的设备名称 /media/你的用户名/windows_d

大功告成。

如果希望每次启动 Debian 时都自动挂载 Windows D 盘,需要编辑 /etc/fstab 文件,在文件末尾添加:

1
实际的设备名称 /media/你的用户名/windows_d ntfs-3g defaults,rw 0 0

中文输入法

是的,debian12 需要手动安装中文输入法(如果你的系统语言选择英文的话)。

这部分直接问 AI 就行了,大部分没什么问题。

GRUB 启动

我现在有 debian 和 windows 双系统,如何在开机时不启动默认系统,而是让我自己选择?

为了在启动时选择要进入的操作系统,你需要配置你的启动管理器。Debian 使用的启动管理器通常是 GRUB(GRand Unified Bootloader)。下面是详细步骤:

  1. 启动到 Debian 系统

    • 启动计算机并选择进入 Debian 系统。
  2. 更新 GRUB 配置文件

    • 打开一个终端窗口。
    • 以超级用户身份编辑 GRUB 配置文件:

      1
      sudo nano /etc/default/grub
    • 找到并编辑以下配置项:

      • GRUB_TIMEOUT=10
        这行表示 GRUB 菜单显示的时间(以秒为单位),你可以调整为你希望的时间,比如 10 秒。

      • GRUB_DEFAULT=0
        这行表示默认启动的操作系统,设置为 saved 允许你在下次启动时记住上次选择的操作系统。

        1
        GRUB_DEFAULT=saved
      • 添加以下行以启用 GRUB 的保存功能:

        1
        GRUB_SAVEDEFAULT=true
  3. 更新 GRUB

    • 保存文件并退出编辑器(在 nano 中按 Ctrl+X,然后按 Y,最后按 Enter)。
    • 运行以下命令以更新 GRUB 配置:

      1
      sudo update-grub
  4. 重启计算机

    • 重启计算机,你应该会看到 GRUB 菜单,在启动时可以选择进入 Debian 或 Windows 系统。

我的双系统电脑(win + debian)使用了别人制作的 Grub Themes ,现在开机引导很正常。但是由于电脑尺寸和这个第三方 theme 的背景图片不匹配,图片被拉伸了,不美观。怎么办

为了调整 GRUB 主题的背景图片,使其在你的电脑上显示得更美观,你可以尝试以下几种方法:

方法一:更换背景图片

  1. 找到当前 GRUB 主题配置文件

    • GRUB 主题配置文件通常位于 /boot/grub/themes/ 目录下。进入该目录并找到你的主题文件夹。
  2. 找到背景图片文件

    • 进入主题文件夹,找到背景图片文件(通常是 .png.jpg 格式),比如 background.png
  3. 更换背景图片

    • 使用合适分辨率的图片替换当前的背景图片。你可以找到与你屏幕分辨率相匹配的图片,确保不会被拉伸。
    • 将新图片重命名为和原来图片相同的名称,然后替换原图片。
  4. 更新 GRUB

    • 运行以下命令以确保 GRUB 配置更新:

      1
      sudo update-grub

方法二:修改 GRUB 主题配置

  1. 编辑 GRUB 主题配置文件

    • 进入主题文件夹,找到主题的配置文件(通常是 theme.txt 或类似文件)。
    • 使用编辑器打开该文件:

      1
      sudo nano /boot/grub/themes/your-theme-folder/theme.txt
  2. 修改背景图片属性

    • 查找与背景图片相关的配置行,可能类似于 + background_image.png
    • 你可以调整图片的缩放属性,例如设置 stretch(拉伸)为 false 或设置 fit(适应)属性。
    1
    2
    3
    4
    5
    + background_image {
    image = "background.png"
    stretch = false
    fit = true
    }
  3. 保存文件并退出

    • 保存配置文件并退出编辑器。
  4. 更新 GRUB

    • 运行以下命令以确保 GRUB 配置更新:

      1
      sudo update-grub

方法三:手动调整背景图片

  1. 调整背景图片分辨率

    • 如果你有图像编辑工具(如 GIMP 或 Photoshop),你可以手动调整背景图片的分辨率,使其与你的屏幕分辨率匹配。
    • 打开图片,调整其分辨率,并保存为新的图片。
  2. 替换原图片

    • 将新调整的图片替换主题文件夹中的原背景图片。
  3. 更新 GRUB

    • 运行以下命令以确保 GRUB 配置更新:

      1
      sudo update-grub

Zotero

在 debian 上安装 Zotero :
https://github.com/retorquere/zotero-deb

可以使用坚果云同步。

N 卡本地跑深度学习

目前环境:

1
2
3
OS: Debian GNU/Linux 13 (trixie) x86_64
Kernel: Linux 6.12.27-amd64
GPU 1: NVIDIA GeForce RTX 5060 Max-Q / Mobile [Discrete]

首先,在 nvidia 官网找到合适的驱动下载 .run 文件,CTRL+ALT+F3 进入文本界面,切换为 root 用户运行 .run 文件,安装过程中一般保持默认即可。注意选择开源版本,如果询问 “Would you like to run the nvidia-xconfig utility to automatically update your X configuration file…”,选择 No.

debian 官网的教程有些过于老旧,尤其是目前(2025.06.05)对于 debian13 testing 和 5060 这两个都十分新的东西来说。

不出意外,就可以安装好驱动了。nvidia-smi :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Thu Jun  5 12:49:36 2025       
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 575.57.08 Driver Version: 575.57.08 CUDA Version: 12.9 |
|-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA GeForce RTX 5060 ... Off | 00000000:01:00.0 Off | N/A |
| N/A 40C P8 2W / 55W | 18MiB / 8151MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+

+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| 0 N/A N/A 1607 G /usr/lib/xorg/Xorg 4MiB |
+-----------------------------------------------------------------------------------------+

然后按照教程走即可:
https://www.tensorflow.org/install/docker

注意我们需要拉取的镜像是(若有变更按官网为准):

1
docker pull tensorflow/tensorflow:latest-gpu-jupyter

现在运行一个 ipynb 文件来测试。

cd 到 ipynb 文件所在的目录,执行:

1
docker run --gpus all -it --rm -p 8888:8888 -v "$(pwd)":/tf/notebooks tensorflow/tensorflow:latest-gpu-jupyter

命令解析:

  • --gpus all 允许容器访问所有可用的 GPU
  • -it 以交互模式运行容器并分配一个伪 TTY
  • --rm 容器停止后自动删除它(方便清理)
  • -p 8888:8888 将宿主机的 8888 端口映射到容器内的 8888 端口 (Jupyter 通常运行在此端口)
  • -v "$(pwd)":/tf/notebooks 将当前宿主机的工作目录 $(pwd) 挂载到容器内的 /tf/notebooks 目录。这样,在容器内创建或修改的 notebook 文件就会保存在宿主机上,反之亦然

完全可以在浏览器中打开,不过我们还是在 vscode 中打开,右上角选择 Jupyter Server 即可。

目前(2025.06.05)这个架构的 GPU 支持似乎有些问题,再等等吧。 latest 镜像还不能识别到 GPU;老旧一点的镜像可以识别到 GPU,但是似乎无法正确识别 RTX 5060 的 GPU 架构。