Skip to content

Dual boot arch linux + win 11

基本系统安装:双启动windows和arch linux

我参考的应该是这个教程这个

笔记本出厂自带windows,保留windows的情况下加塞arch linux。官网下载安装 用的iso,一步步跟着提示走,有问题查arch wiki就差不多了。几个注意点:

  • 给linux留多一点分区。以后嫌多了缩小容易,嫌小了扩展难。我建议至少留 个200G。如果犯了跟我一样的规划错误,可以参考这篇来修正。
  • 给/boot也多留点。/boot是fat32,我至今没找到安全resize的办法。网上有 些地方推荐的512只能说勉强够用,建议留干脆留几个G。
  • 装linux之前先在windows里登陆账户把机器关联上,确认一下账号上能找到 recovery key,翻车大蓝屏的时候需要用。
  • 硬盘分区名称每台电脑不一样,注意修改
  • fdisk操作的时候看清楚,不要手滑把windows分区格式化了
  • 纸上记下每个分区号,若干重要地方需要用
  • 启动列表用edk2-shell来配置,往linux装的启动配置里加windows。跟着这个视 频可以无脑抄答案。
  • bitlocker很容易被触发,需要用recovery key来解锁进入windows。在win下面把encryption整个 disable,可以解决一部分问题,但有时候还是莫名其妙windows的启动分区变为首选,直接跳过linux, 需要重启进BIOS改。
  • 睁眼睡觉的问题:默认行为的休眠是假休眠,电池掉的飞快,醒来机器也是 热的。需要如下修改:
    • cat /sys/power/mem_sleep。出来的结果应该是[s2idle] deep,说明 目前是浅层睡眠s2ide模式,但是支持休眠deep模式。
    • echo deep | sudo tee /sys/power/mem_sleep。再次查看mem_sleep, 出来的结果就应该是s2idle [deep]了。
    • 我注意到以上文件会自己切回去,不知道为啥。如果出现这种事,就手动 修改/etc/systmd/sleep.conf,加上MemorySleepMode=deep
  • 我的本子是asus rog strix,蛋疼的标配是sleep/hibernate模式依然会亮灯。 按理说进windows armory crate能关掉夜灯,但是我只找到了电池模式的下 的关闭。于是回到arch,安装asusctrl。安装末尾会报错,但其实还是装上 了,利用asusctl aura-power lightbar,按照-h的指示就可以关掉了。可 以选择睡觉时关灯,醒来开灯。
  • 按照这个教程安装yay,来装AUR里的包裹

劝退点

  • 双系统下面无法让dropbox管理共享分区,因为dropbox在win上不支持ext4,在linux上只支持ext4。 这个本质问题是dropbox只能用native filesystem跟踪文件有没有更新,没法hack。
  • 系统启动依然没有很稳定地每次都进入linux boot menu,有时直接跳win,有时候蓝屏(bitlocker)。

基本工具

  • 这篇里可以找到推荐应用。
  • 这里可以找到如何配置系统和软件。

共享硬盘

共享硬盘,包括加装的第二块硬盘,都没有出场即用的读写支持。原理是 windows分区ntfs无法理解linux下的权限,所以干脆就以只读模式挂载。解法是 安装ntfs-3g并且修改/etc/fstab。

老规矩,先找UUID

sudo fdisk -l # 方便查看哪个是共享分区/盘
sudo blkid  # 寻找对应的UUID

再找用户的UID, GID

id

修改/etc/fstab。选一个喜欢的挂载点。我一般就用/home/$USER/<windows下的 分区名字>。其中fmask可替换为想要的默认文件权限。111表示全局读写但不可 以执行,微量兼顾方便和安全。

UUID=<uuid>   <mount path>     ntfs-3g defaults,user,uid=1000,gid=1000,fmask=111,dmask=000,nofail,rw,big_write 0       0

最麻烦的部分来了:每次windows关机要完全关机,按着shift从系统选项里关机。 arch btw你赢了,我再也不开windows行了口巴。

重要:如此打补丁的分区steam和dropbox都不认。我后来重新格成etx4了,格了 之后UUID会变,要修改fstab重新挂载。

扫描仪/打印机

需要的包裹,根据型号有所不同,AUR上会写

yay -S sane, brscan4, brother-mfc-l2750dw, simple-scan

连接,需要在打印机上寻找ip,根据官网的指示

sudo brsaneconfig4 -a name=Brother model=MFC-L2705DW ip=<ip>

再进入simple-scan就可以了。

其它问题解决方案

/boot无法扩容导致的更新失败:512mb的分区不够用怎么办?空间占用最大的是 fallback image,这个不推荐删但是可以删。不推荐是因为如果系统坏掉可以有 个备用的用来修,但是如果坏掉我不如干脆重装顺便把/boot格了重新搞个大的。 删掉之前需要改个配置:

etc/mkinitcpio.d/linux.preset

默认设定是PRESETS=('default' 'fallback'),改成PRESETS=('default'), 把fallback相关的设定都注释掉,就可以删掉initramfs-linux-fallback.img 了

系统更新的时候遇到报错(invalid or corrupted package (PGP signature)).,跑一下sudo pacman -Sy --needed archlinux-keyrin。再 yay就行了。