win + debian 双系统
使用 win11 + debian 双系统有挺久了,稍微记一下使用经验。
挂载 win 下的盘
debian13 testing 不必额外安装驱动,输入密码即可挂载 win 下的盘。以下教程是针对 debian12 的。
debian 可以自动识别 win 下的盘,但是是只读模式。这会造成一些麻烦,例如我们想将数据都放到 win 的 D 盘下面,这样就可以只给 debian 分配较小的空间,因此必须能对 win 下的磁盘进行读写,以支持在 debian 下的工作。
若 Windows 没有完全正常关机,而是进入了休眠或者启用了快速启动功能,会导致 Windows 的 NTFS 文件系统处于“不干净”的状态。为此,在 Windows 系统中进行操作:
- 控制面板 -> 电源选项 -> 更改高级电源设置
- 在“电源按钮和盖子”下面,将“按下电源按钮时”设置为“关机”
- 取消勾选“启用快速启动(推荐)”
- Apply
关机,启动 debian.
查看 Windows D 盘在 debian 系统中的设备名称:
1 | sudo fdisk -l |
安装 NTFS-3G 驱动:
1 | sudo apt update |
创建挂载点:
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 |
中文输入法
Debian 需要手动安装中文输入法(如果你的系统语言选择英文的话)。
这部分直接问 AI 就行了,大部分没什么问题。
GRUB 启动
一
这部分同样是比较老旧的教程,debian13 testing 并不需要。
我现在有 debian 和 windows 双系统,如何在开机时不启动默认系统,而是让我自己选择?
为了在启动时选择要进入的操作系统,你需要配置你的启动管理器。Debian 使用的启动管理器通常是 GRUB(GRand Unified Bootloader)。下面是详细步骤:
启动到 Debian 系统:
- 启动计算机并选择进入 Debian 系统。
更新 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
更新 GRUB:
- 保存文件并退出编辑器(在 nano 中按
Ctrl+X,然后按Y,最后按Enter)。 运行以下命令以更新 GRUB 配置:
1
sudo update-grub
- 保存文件并退出编辑器(在 nano 中按
重启计算机:
- 重启计算机,你应该会看到 GRUB 菜单,在启动时可以选择进入 Debian 或 Windows 系统。
二
我的双系统电脑(win + debian)使用了别人制作的 Grub Themes ,现在开机引导很正常。但是由于电脑尺寸和这个第三方 theme 的背景图片不匹配,图片被拉伸了,不美观。怎么办
为了调整 GRUB 主题的背景图片,使其在你的电脑上显示得更美观,你可以尝试以下几种方法:
方法一:更换背景图片
找到当前 GRUB 主题配置文件:
- GRUB 主题配置文件通常位于
/boot/grub/themes/目录下。进入该目录并找到你的主题文件夹。
- GRUB 主题配置文件通常位于
找到背景图片文件:
- 进入主题文件夹,找到背景图片文件(通常是
.png或.jpg格式),比如background.png。
- 进入主题文件夹,找到背景图片文件(通常是
更换背景图片:
- 使用合适分辨率的图片替换当前的背景图片。你可以找到与你屏幕分辨率相匹配的图片,确保不会被拉伸。
- 将新图片重命名为和原来图片相同的名称,然后替换原图片。
更新 GRUB:
运行以下命令以确保 GRUB 配置更新:
1
sudo update-grub
方法二:修改 GRUB 主题配置
编辑 GRUB 主题配置文件:
- 进入主题文件夹,找到主题的配置文件(通常是
theme.txt或类似文件)。 使用编辑器打开该文件:
1
sudo nano /boot/grub/themes/your-theme-folder/theme.txt
- 进入主题文件夹,找到主题的配置文件(通常是
修改背景图片属性:
- 查找与背景图片相关的配置行,可能类似于
+ background_image.png。 - 你可以调整图片的缩放属性,例如设置
stretch(拉伸)为false或设置fit(适应)属性。
1
2
3
4
5+ background_image {
image = "background.png"
stretch = false
fit = true
}- 查找与背景图片相关的配置行,可能类似于
保存文件并退出:
- 保存配置文件并退出编辑器。
更新 GRUB:
运行以下命令以确保 GRUB 配置更新:
1
sudo update-grub
方法三:手动调整背景图片
调整背景图片分辨率:
- 如果你有图像编辑工具(如 GIMP 或 Photoshop),你可以手动调整背景图片的分辨率,使其与你的屏幕分辨率匹配。
- 打开图片,调整其分辨率,并保存为新的图片。
替换原图片:
- 将新调整的图片替换主题文件夹中的原背景图片。
更新 GRUB:
运行以下命令以确保 GRUB 配置更新:
1
sudo update-grub
Zotero
在 debian 上安装 Zotero :
https://github.com/retorquere/zotero-deb
可以使用坚果云同步。
N 卡本地跑深度学习
目前环境:
1 | OS: Debian GNU/Linux 13 (trixie) x86_64 |
安装 linux-headers:
1 | sudo apt install linux-headers-amd64 |
在 /etc/apt/sources.list 中确保包含 non-free, non-free-firmware.
在 nvidia 官网找到合适的驱动下载 .run 文件,CTRL+ALT+F3 进入文本界面。不进入 tty 模式也可以在普通的 terminal 里面进行,但是可能会出一些问题,结束之后也要重启。在 tty 中(如果是 kde 桌面):
1 | sudo systemctl stop sddm |
这会停止 KDE 的显示管理器,关闭所有图形会话。
切换为 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 | Thu Jun 5 12:49:36 2025 |
然后按照教程走即可:
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 架构。
upd: 系统内核升级后,驱动可能会掉,需要重新走流程。
卸载残留:
1 | sudo sh NVIDIA-Linux-x86_64-XXX.XX.run --uninstall |
电池保养
有奇怪苛求的使用者通常会希望笔记本的电池寿命延长一些,这可以通过软件将电池充电上限设为 80% 实现。在 windows 下这样的设置比较简单(例如华硕管家),而在 debian 上同样可以安装相关软件实现,然后设置阈值,重启即可。
先在系统的设置里面找找有没有相关选项,没有再执行下面的操作。
TLP 是一个功能非常强大的 Linux 高级电源管理工具,它不依赖图形界面,通过配置文件工作,设置一次后即可“一劳永逸”。
1 | sudo apt update |
tlp-rdw 是用于无线设备的射频开关管理,推荐一并安装。
TLP 的主配置文件位于 /etc/tlp.conf ,sudo vim it.
1 | # 设置电池电量低于 75% 时开始充电。 |
注意:绝大多数笔记本的电池是 BAT0。如果有多个电池或名称不同,可以先运行 tlp-stat -b 查看电池名称,然后将配置中的 BAT0 替换为正确的名称。
运行以下命令来立即应用设置并让 TLP 开机自启:
1 | sudo tlp start |
外接显示器
在 debian 中安装 nvidia 驱动后,有可能外接显示器无法工作(系统内核更新后掉驱动也会这样)。
笔记本电脑安装完 NVIDIA 驱动后,外接显示器不工作是一个非常典型的问题。根本原因通常与 NVIDIA Optimus 技术(双显卡混合输出)有关。
在大多数 Optimus 笔记本上,内置显示器可能由 Intel 或 AMD 的集成显卡驱动,而 HDMI 或 DisplayPort 等外接端口则物理上连接到了 NVIDIA 的独立显卡。因此,必须确保 NVIDIA 显卡被正确激活并用于处理外部显示输出。
方案一:启用 NVIDIA DRM Kernel Mode Setting (KMS)
编辑 /etc/default/grub, 修改内核启动参数。
找到以 GRUB_CMDLINE_LINUX_DEFAULT= 开头的那一行。在引号内的现有参数后面,添加 nvidia-drm.modeset=1。注意用空格与前面的参数隔开。
例如,如果原来是:GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
修改后变成:GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvidia-drm.modeset=1"
1 | sudo update-grub |
方案二:使用 nvidia-settings 图形工具进行诊断和配置
1 | sudo nvidia-settings |
检查显示配置。
在弹出的窗口左侧,点击 “X Server Display Configuration”。
- 查看屏幕布局:在这个界面中,您应该能看到笔记本的内置屏幕。如果驱动成功检测到了外接显示器(即使它不亮),它也应该会出现在这里,可能显示为灰色或 “Disabled”。
- 尝试激活:如果能看到外接显示器,尝试选中它,然后在下方的 “Configuration” 选项中选择 “TwinView” 或 “Separate X screen”,然后点击 “Apply”。
- 保存配置:如果配置生效了,点击 “Save to X Configuration File”。这通常需要管理员权限,您可能需要以
sudo nvidia-settings方式重新运行才能成功保存。
偶见的 chrome 问题
某些情况下在 chrome 中无法切换中文输入法。
尽管 Wayland 越来越成熟,但有时特定程序与其仍有兼容性问题。可以尝试强制 Chrome 在 XWayland 兼容模式下运行。
加上参数: --ozone-platform=x11 .
开机密码界面卡死
这同样是双显卡引起的。具体症状:开机后在输入密码界面,输入框卡住,无法输入,光标不会闪烁(一般正常情况是会闪烁的),鼠标可以移动。
具体的方法可以上网搜索一下,前期似乎需要一些准备工作(但是我忘了 qwq),总之,解决之后,如果遇到该问题,进入 tty:
1 | sudo systemctl restart sddm |





