本指南的目标是:在一块空白硬盘上,安装一个稳定、无图形界面的 Arch Linux 系统,并将其配置为基础的 Samba 文件共享服务器 (NAS)。

核心流程概览

  1. 准备阶段:制作启动盘,正确设置 BIOS。
  2. 环境准备:以正确的 UEFI 模式启动,连接网络。
  3. 磁盘操作:分区、格式化、挂载。(第一个易错点
  4. 系统安装:使用 pacstrap 安装基础系统。
  5. 系统配置:进入 chroot 环境,配置系统。
  6. 引导安装:安装 GRUB 引导程序。(第二个易错点
  7. 重启收尾:完成安装并首次启动。
  8. NAS 配置:安装并配置 Samba 服务。

第一步:准备阶段 (Preparation)

  1. 下载镜像:访问国内镜像站(如清华大学开源镜像站)下载最新的 Arch Linux ISO 文件。
  2. 制作U盘:使用 Rufus、Ventoy 或 Etcher 等工具,将 ISO 文件制作成可引导的 U 盘。
  3. 设置 BIOS/UEFI
    • 重启电脑,进入 BIOS 设置界面。
    • 关闭安全启动 (Secure Boot):这个选项通常在 "Security" 或 "Boot" 菜单下,必须禁用,否则无法引导 Arch Linux。
    • 开启 CSM (兼容模块) 并设置为 "UEFI and Legacy" (可选但推荐):这会让你在启动时能明确选择是以 UEFI 还是 Legacy 模式启动 U 盘。就像您之前在 BIOS 图片中看到的那样。

第二步:环境准备 (Live Environment)

  1. 以 UEFI 模式启动 U 盘

    • 重启电脑,按 F11/F12 等快捷键进入启动菜单 (Boot Menu)
    • 您会看到您的 U 盘有两个选项,例如:
      • UEFI: Kingston USB
      • Kingston USB
    • 必须选择带有 UEFI: 前缀的那个。这是解决您之前引导问题的最关键一步
  2. 验证 UEFI 启动

    • 进入 root@archiso ~ # 命令行后,运行以下命令:
      ls /sys/firmware/efi/efivars
      
    • 如果命令输出了一长串文件列表,恭喜您,启动模式正确。如果报错 "No such file or directory",请立刻重启,检查上一步的选择。
  3. 连接网络并配置镜像源

    • 连接有线网络通常会自动完成。用 ping archlinux.org 测试。
    • 编辑镜像源列表,将清华源放在最顶端以加速下载:
      vim /etc/pacman.d/mirrorlist
      # 在文件最上方添加下面这行
      # Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
      

第三步:磁盘操作 (Partitioning & Formatting)

这是您之前遇到最多问题的地方。请严格按步骤操作。

  1. 分区 (fdisk)

    fdisk /dev/nvme0n1
    
    • g:创建一个新的 GPT 分区表。
    • n -> 回车 -> 回车 -> +512M:创建 512MB 的 EFI 分区。
    • t -> 1:将分区类型改为 "EFI System"。
    • n -> 回车 -> 回车 -> 回车:创建使用全部剩余空间的根分区。
    • p:检查分区表是否正确。
    • w【关键】将分区表写入硬盘并退出。

    ※ 实战排错 #1:忘记写入分区表

    • 症状:执行 mkfs 命令时,提示 /dev/nvme0n1p1: No such file or directory (文件或目录不存在)。
    • 原因:在 fdisk 中执行了分区操作,但最后忘记输入 w 来保存。所有操作只在内存中,并未应用到硬盘上。
    • 解决:重新执行一遍 fdisk 的所有分区步骤,最后务必输入 w 保存

  2. 格式化 (mkfs)

    • 格式化 EFI 分区为 FAT32:
      mkfs.fat -F32 /dev/nvme0n1p1
      
    • 格式化根分区为 ext4:
      mkfs.ext4 -F /dev/nvme0n1p2
      
  3. 挂载 (mount)

    mount /dev/nvme0n1p2 /mnt
    mount --mkdir /dev/nvme0n1p1 /mnt/boot
    

第四步:系统安装 (Pacstrap)

pacstrap -K /mnt base linux linux-firmware vim nano dhcpcd
  • 此命令会将基础系统、内核、固件和一些常用工具安装到您挂载的 /mnt 目录中。

※ 实战排错 #2:空间不足

  • 症状pacstrap 报错 Partition /mnt too full (分区太满)。
  • 原因:通常是因为分区没有被正确格式化,或者内核仍在读取旧的分区表信息,导致系统认为分区大小不正确(例如,读取到旧的只有100MB的恢复分区)。
  • 解决
    1. umount -R /mnt 卸载分区。
    2. fdisk 重新分区并用 w 保存。
    3. partprobe /dev/nvme0n1 强制内核重新读取分区表。
    4. lsblk 确认分区大小正确后,再重新格式化和挂载。

第五步:系统配置 (Chroot)

  1. 生成 fstab

    genfstab -U /mnt >> /mnt/etc/fstab
    
  2. 进入 Chroot 环境

    arch-chroot /mnt
    
    • 注意,此时您的命令提示符会从 ~ 变为 /,表示您已在新系统的根目录里。
  3. 配置时区、语言、网络和密码

    # 设置时区为上海
    ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
    hwclock --systohc
    
    # 配置语言 (取消 en_US.UTF-8 和 zh_CN.UTF-8 的注释)
    vim /etc/locale.gen
    locale-gen
    echo "LANG=en_US.UTF-8" > /etc/locale.conf
    
    # 设置主机名 (你的NAS在网络上的名字)
    echo "arch-nas" > /etc/hostname
    
    # 启用网络服务,开机自动联网
    systemctl enable dhcpcd
    
    # 【关键】设置 root 管理员密码,否则重启后无法登录
    passwd
    

第六步:引导安装 (GRUB)

这是您之前遇到的第二个关键问题。

  1. 安装 GRUB 软件包

    pacman -S grub efibootmgr
    
  2. 安装 GRUB 到硬盘

    grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=ARCH --recheck
    

    ※ 实战排错 #3:引导安装失败

    • 症状 1grub-install 报错 EFI variables are not supported on this system
    • 症状 2:安装看似成功,但重启后提示 Reboot and Select proper Boot device。BIOS 里也看不到硬盘的 UEFI 启动项。
    • 根本原因:您在第二步中,没有以 UEFI 模式启动安装 U 盘,而是以 Legacy 模式启动了。这导致 chroot 环境无法访问主板的 UEFI 接口,也就无法注册启动项。
    • 解决
      1. exit 退出 chroot,reboot 重启电脑。
      2. 进入启动菜单,务必选择 UEFI: [你的U盘名] 启动
      3. 进入 Live 环境后,重新挂载 (mount)、进入 arch-chroot,然后再次执行 grub-install 命令。这次它就会成功,并提示 Installation finished. No error reported.

  3. 生成 GRUB 配置文件

    grub-mkconfig -o /boot/grub/grub.cfg
    

第七步:重启收尾 (Finalize)

exit          # 退出 chroot 环境
umount -R /mnt  # 卸载所有分区
reboot        # 重启
```**在电脑屏幕变黑的瞬间,拔掉 U 盘!**

### **第八步:NAS 配置 (Samba)**

1.  **登录系统**:
    *   您会看到一个黑色的登录界面,输入用户名 `root`,密码为您之前设置的密码。

2.  **安装 Samba**:
    ```bash
    pacman -S samba
    ```

3.  **创建共享目录**:
    ```bash
    mkdir -p /srv/share
    chmod -R 777 /srv/share
    ```

4.  **配置 Samba**:
    *   编辑配置文件 `vim /etc/samba/smb.conf`。
    *   在文件最末尾添加以下内容,创建一个无需密码即可访问的公开共享文件夹:
        ```ini
        [Public]
           comment = Public Share
           path = /srv/share
           browseable = yes
           writable = yes
           guest ok = yes
           public = yes
        ```

5.  **启动 Samba 服务**:
    ```bash
    systemctl enable smb
    systemctl start smb
    ```

**至此,您的 Arch Linux 无桌面 NAS 服务器已全部配置完成!** 您可以在局域网内的其他电脑上,通过访问 `\\arch-nas` (Windows) 或 `smb://arch-nas` (macOS) 来访问您的共享文件夹了。