Archlinux个人生存手册.md

发布时间 2023-03-26 17:23:29作者: nsfoxer

Archlinux个人生存手册

​ 前两天(2023年03月22日)Gnome44发布,心心念念的想着能体验一把。但奈何更新不给力,可能有Manjaro有点商业版的意思,顺便一直想着能用上磁盘加密和TPM2,干脆直接将系统重装为Archlinux了。之后所有对系统的重要更改就在此篇记录,方便自己之后查看。

安装

目标:实现安全启动磁盘加密以及利用TPM2.0存储磁盘加密的密钥。

镜像:Arch2023.03.01镜像,内核为6.2.1

镜像下载及校验

镜像地址: https://mirrors.nju.edu.cn/archlinux/iso/2023.03.01/archlinux-2023.03.01-x86_64.iso

https://mirrors.nju.edu.cn/archlinux/iso/2023.03.01/archlinux-2023.03.01-x86_64.iso.sig

  1. 校验
nsfoxer@ns-pc ~/Temp> ls
archlinux-2023.03.01-x86_64.iso  archlinux-2023.03.01-x86_64.iso.sig
nsfoxer@ns-pc ~/Temp> gpg --keyserver-options auto-key-retrieve --verify  archlinux-2023.03.01-x86_64.iso.sig
gpg: 目录‘/home/nsfoxer/.gnupg’已创建
gpg: 钥匙箱‘/home/nsfoxer/.gnupg/pubring.kbx’已创建
gpg: 假定被签名的数据在‘archlinux-2023.03.01-x86_64.iso’
gpg: 签名建立于 2023年03月01日 星期三 20时55分51秒 CST
gpg:               使用 EDDSA 密钥 3E80CA1A8B89F69CBA57D98A76A5EF9054449A5C
gpg:                签发者 "pierre@archlinux.org"
gpg: /home/nsfoxer/.gnupg/trustdb.gpg:建立了信任度数据库
gpg: 密钥 76A5EF9054449A5C:公钥 “Pierre Schmitz <pierre@archlinux.org>” 已导入
gpg: 密钥 7F2D434B9741E8AC:公钥 “Pierre Schmitz <pierre@archlinux.org>” 已导入
gpg: 处理的总数:2
gpg:               已导入:2
gpg: 未找到任何绝对信任的密钥
gpg: 完好的签名,来自于 “Pierre Schmitz <pierre@archlinux.org>” [未知]
gpg: 警告:此密钥未被受信任签名认证!
gpg:       没有证据表明此签名属于其声称的所有者。
主密钥指纹: 3E80 CA1A 8B89 F69C BA57  D98A 76A5 EF90 5444 9A5C
  1. 查看archlinux开发者指纹 https://archlinux.org/people/developers/

    image-20230325113752154

    指纹匹配的上,镜像校验通过。

刻录镜像和启动

  1. 刻录u盘:
# 注意:此操作会导致u盘数据全部丢失
dd bs=4M if=path/to/archlinux-version-x86_64.iso of=/dev/sdx conv=fsync oflag=direct status=progress && sync

# 成功后,u盘目录
nsfoxer@ns-pc /r/m/n/ARCH_202303> ls
arch  boot  EFI  shellia32.efi  shellx64.efi
  1. 插入刻录好的u盘,启动电脑,进入BIOS设置,关闭安全启动,选择u盘启动。

  2. 选择第一个进入

    image-20230325114806137

    # 登录界面
    To install Arch Linux follow the installation guide:
    https://wiki.archlinux.org/title/Installation_guide
    
    For Wi-Fi, authenticate to the wireless network using the iwctl utility.
    For mobile broadband (WWAN) modems, connect with the mmcli utility.
    Ethernet, WLAN and WWAN interfaces using DHCP should work automatically.
    
    After connecting to the internet, the installation guide can be accessed
    via the convenience script Installation_guide.
    
    
    Last login: Sat Mar 25 04:10:50 2023
    root@archiso ~ #
    

安装

  1. 设置键盘布局,默认为us,不需要设置

  2. 暂时关闭恼人的蜂鸣声:

    rmmod pcspkr
    
  3. 验证启动模式(我这里是UEFI)

    root@archiso ~ # ls /sys/firmware/efi/efivars
    

    有该文件夹即表示是UEFI启动

  4. 连接网络:无线网络使用iwctl,有线网络插入电缆(开箱即用)。

    ping baidu.com验证联网是否成功。

  5. 验证时间是否正确:(默认会启用systemd-timesyncd ,在网络连接成功后会进行时间同步)

    root@archiso ~ # timedatectl
                   Local time: Sat 2023-03-25 04:14:26 UTC
               Universal time: Sat 2023-03-25 04:14:26 UTC
                     RTC time: Sat 2023-03-25 04:14:24
                    Time zone: UTC (UTC, +0000)
    System clock synchronized: yes
                  NTP service: active
              RTC in local TZ: no
              
    # 这里的时间是未进行本地化,我们是东8区,所以命令显示的时间会慢8小时。
    
  6. 磁盘分区:

    我计划分区(虚拟机):

    /boot  300M
    swap  1G
    /   其余
    

桌面

Gnome相关

Nvidia显卡驱动,没有wayland模式

这个和gdm有关。在nvidia驱动安装好之后,执行

# ln -s /dev/null /etc/udev/rules.d/61-gdm.rules

但目前(gnome 版本43.3)这会导致gnome-shell使用nvidia显卡,导致功耗增加。

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.60.11    Driver Version: 525.60.11    CUDA Version: 12.0     |
|-------------------------------+----------------------+----------------------+
| 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 ...  Off  | 00000000:01:00.0 Off |                  N/A |
| N/A   44C    P3     7W /  N/A |      2MiB /  4096MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A      1763      G   /usr/bin/gnome-shell                1MiB |
+-----------------------------------------------------------------------------+

目前已有issue: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6146

详细查看:https://wiki.archlinux.org/title/GDM#Wayland_and_the_proprietary_NVIDIA_driver

我就故且暂时禁用掉nvidia了,的确除了打游戏,目前也没有什么用到显卡的地方。

录屏

使用录屏可能发现不生效,安装[gst-plugin-pipewire](https://archlinux.org/packages/?name=gst-plugin-pipewire)[gst-plugins-good](https://archlinux.org/packages/?name=gst-plugins-good)

番外

文件系统修复

​ 前几天把树莓派直接断电,导致无法启动。实在懒得重装配环境了,所以尝试修复一下,结果真成功了。忍不住赞美一句,文件系统的修复功能还是很顶的。

  1. 插入树莓派SD卡;

  2. 查看SD分区:

    image-20230325104928325

    卸载SD卡(umount /dev/mmcblk0p1)

  3. 修复boot分区:

    sudo fsck /dev/mmcblk0p1

    检测到错误,选择2(从备份数据复制到现有数据),再选择1(确认写入磁盘)

    image-20230325110826976

  4. 重新插入SD卡,树莓派正常开机了。Nice