制作 archlinux 内存系统盘

Archisoextra / aur 是自动化制作最新版 archlinux 镜像的工具集,可用于制作定制化的 archlinux 镜像。

1. 准备工作

  1. 首先安装 Archiso 相关包:
sudo pacman -S archiso

archiso-1

  1. 复制 releng 配置方案到合适位置:

    sudo cp -r /usr/share/archiso/configs/releng /path/of/some_folder/archlinux_live
    cd /path/of/some_folder/archlinux_live # 进入目录

    archiso-2

    ⚠️ 注意

    务必使用 root 权限操作(使用 sudo 提权),否则可能造成问题。

    ℹ️ 提示

    Archiso 提供了两种配置方案:

    • baseline —— 只包含基本系统(只包括从介质启动实时环境所需的最低限度的软件包)
    • releng —— 可以制作定制镜像(用于创建正式的每月安装镜像,可以作为创建自定义镜像的起点)

    显然,这里我们使用 releng 配置方案。

     

2. 进行定制

首先了解下各个文件的用途:

archiso-3

  • packages.x86_64 —— 一份要安装在 Live 系统镜像的软件包列表,一行一个
  • pacman.conf —— Pacman 的配置文件
  • airootfs —— Live 系统的 rootfs(根文件系统,遵循 rootfs 的目录规则)。除了安装的包之外,其它的定制(包括启动执行脚本等)都在这里
  • efiboot / syslinux —— 用于设置 BIOS / EFI 启动的配置
  1. 编辑 pacman.conf 配置文件:

    sudo vim /path/of/some_folder/archlinux_live/pacman.conf

    在文档结尾处加入下面的文字,来添加 archlinuxcn 源。推荐的镜像源(选一个即可)也一并列出:

    [archlinuxcn]
    Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch # 中国科学技术大学开源镜像站
    Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch # 清华大学开源软件镜像站
    Server = https://mirrors.hit.edu.cn/archlinuxcn/$arch # 哈尔滨工业大学开源镜像站
    Server = https://repo.huaweicloud.com/archlinuxcn/$arch # 华为开源镜像站

    去掉 [multilib] 一节中两行的注释,来开启 32 位库支持:

    archiso-4

  2. 然后修改 packages.x86_64

    sudo vim packages.x86_64

    在文档结尾处加入 archlinuxcn-keyring 和其它需要预安装的包(根据喜好自定义):

    # custom
    archlinuxcn-keyring
    htop # 系统监控与进程管理软件(top 的升级版)
    bashtop # 系统监控与进程管理软件(top 的豪华升级版)
    iftop # 流量监控工具
    iotop # 磁盘 I/O 监控工具
    ipmitool # 用于管理和配置,支持智能平台管理接口(IPMI)1.5 版和 2.0 版规范的设备的实用程序(给运维用的)
    fastfetch # 打印系统信息
    plasma-meta
    konsole
    dolphin
    ntfs-3g
    partitionmanager # KDE 分区管理器
    adobe-source-han-serif-cn-fonts
    wqy-zenhei
    noto-fonts
    noto-fonts-cjk
    noto-fonts-emoji
    noto-fonts-extra
    firefox
    ark
    gwenview
    yay
    timeshift
    mesa
    lib32-mesa
    vulkan-intel
    lib32-vulkan-intel
    cowsay

    说明:
    1.可以给如上包配置中加入自己的使用软件工具,比如net-tools等;
    2.上面的包尽量拿掉所有的注释,在运行3.2中的
    mkarchiso命令时,如果报错说某些包找不到,那就从上面文件中拿掉即可

    archiso-5

  3. 可选向镜像里添加文件:

    • airootfs —— 看作是 Live 系统上的 '/' 根目录,在此中存放文件将覆盖或复制到对应的位置
    • airootfs/etc/skel —— 在 root 用户主目录里放置文件的方法有些许不同。不要把它们放在 airootfs/home,而是放置在此处

    以 /root/.zshrc 为例:

    sudo mkdir /path/of/some_folder/archlinux_live/airootfs/etc/skel
    sudo vim /path/of/some_folder/archlinux_live/airootfs/etc/skel/.zshrc

    archiso-6

    添加以下内容:

    echo 'archlinux 简明指南' | cowsay

    archiso-7

    🔗 相关链接

    如有需要可参阅 ArchWiki 相关内容

  4. 配置登录管理器:

    1. 启用登录管理器的 systemd 服务来做到在引导时启动 X:

      sudo ln -s /usr/lib/systemd/system/sddm.service /path/of/some_folder/archlinux_live/airootfs/etc/systemd/system/display-manager.service

      archiso-8

    2. 为了让图形环境在启动过程中自动启动,创建并编辑 airootfs/root/customize_airootfs.sh

      sudo vim /path/of/some_folder/archlinux_live/airootfs/root/customize_airootfs.sh

      添加以下内容:

      systemctl set-default graphical.target

      archiso-9

 

3. 开始制作

  1. 创建工作目录和输出目录:

    sudo mkdir -p /path/work /path/out

    archiso-10

  2. 开始制作镜像文件:

    sudo mkarchiso -v -w /path/work -o /path/out /path/of/some_folder/archlinux_live

    说明:
    这里的路径
    /path/of/some_folder/archlinux_live 其实是指代profiledef.sh的路径

    archiso-10

[mkarchiso] INFO: Preparing kernel and initramfs for the FAT file system...
[mkarchiso] INFO: Done!
[mkarchiso] INFO: Done! systemd-boot set up for IA32 UEFI booting successfully.
[mkarchiso] INFO: Setting up systemd-boot for x64 UEFI booting...
[mkarchiso] INFO: Done! systemd-boot set up for x64 UEFI booting successfully.
[mkarchiso] INFO: Preparing an /EFI directory for the ISO 9660 file system...
[mkarchiso] INFO: Done!
[mkarchiso] INFO: Preparing an /EFI directory for the ISO 9660 file system...
[mkarchiso] INFO: Done!
[mkarchiso] INFO: Cleaning up in pacstrap location...
[mkarchiso] INFO: Done!
[mkarchiso] INFO: Creating SquashFS image, this may take some time...

refs:

https://arch.icekylin.online/guide/advanced/make-install-disk

 https://wiki.archlinuxcn.org/wiki/Archiso

posted @ 2025-02-28 16:36  petercao  阅读(96)  评论(0)    收藏  举报