新手必看:Arch Linux 快速入门与基础知识 – wiki基地


新手必看:Arch Linux 快速入门与基础知识 (超详细版)

欢迎来到 Arch Linux 的世界!如果你是一位渴望深入了解 Linux 系统运作原理、追求最新软件、并乐于亲手构建属于自己操作系统的探索者,那么 Arch Linux 无疑是一个极具吸引力的选择。然而,Arch Linux 也常常被贴上“高难度”、“不适合新手”的标签。这并非空穴来风,相比 Ubuntu、Fedora 等发行版,Arch 的安装和维护确实需要用户投入更多的时间和精力。

但这并不意味着新手就无法驾驭 Arch。恰恰相反,Arch Linux 提供了一个绝佳的学习平台。通过遵循其安装过程和日常维护,你将对 Linux 系统的各个组成部分有更深刻的理解。本文旨在为对 Arch Linux 感兴趣的新手提供一份详尽的入门指南,涵盖其核心理念、安装准备、基本安装流程概览、重要的基础知识以及日常维护技巧,希望能帮助你平稳地踏上 Arch 之旅。

文章目标读者:

  • 对 Linux 有一定基础了解(知道终端、基本命令如 ls, cd, cp, mv 等)。
  • 愿意阅读文档、动手实践并解决问题。
  • 不满足于“开箱即用”,希望对系统有更强的掌控力。
  • 拥有耐心和探索精神。

本文将涵盖:

  1. 理解 Arch Linux:理念与特性
  2. 安装前的准备:硬件、知识与工具
  3. Arch Linux 安装流程概览 (概念性)
  4. 首次启动与基础配置
  5. 包管理核心:Pacman 与 AUR
  6. 系统维护与最佳实践
  7. 学习资源与社区

一、 理解 Arch Linux:理念与特性

在开始安装之前,理解 Arch Linux 的设计哲学至关重要,这有助于你更好地适应它的方式。Arch Linux 遵循 KISS (Keep It Simple, Stupid) 原则,但这并不等同于“易用”,而是指设计上的简洁性

核心理念 (The Arch Way):

  1. 简洁 (Simplicity): Arch Linux 致力于提供一个基础系统,没有不必要的添加、修改或复杂化。它避免使用图形化配置工具,鼓励用户直接编辑配置文件,从而更清晰地了解系统设置。
  2. 现代 (Modernity): Arch 采用滚动更新 (Rolling Release) 模型。这意味着你不需要像 Ubuntu 那样每隔半年或几年进行一次大版本升级。只要你定期更新系统,就能持续获得最新的软件包(内核、驱动、应用程序等)。这让你能第一时间体验到最新的软件特性,但也意味着你需要更频繁地关注系统更新可能带来的变化。
  3. 实用 (Pragmatism): Arch Linux 更侧重于实际应用,而非意识形态。它的组件选择基于技术优点,而非政治或流行度。
  4. 用户中心 (User-centricity): Arch Linux 将控制权完全交给用户。系统不会替你做决定,你需要明确地安装和配置你所需要的每一个组件,从桌面环境到网络服务。这赋予了极高的定制性,但也要求用户承担相应的责任。
  5. 自由与开源 (Versatility & Liberty): Arch Linux 本身是自由开源软件,并鼓励用户根据自己的需求自由定制系统。

滚动更新 (Rolling Release) 的利弊:

  • 优点:
    • 软件始终保持最新。
    • 无需进行麻烦的大版本升级。
    • 紧跟上游开发,第一时间获得新功能和安全修复。
  • 缺点:
    • 潜在的不稳定性:新软件可能引入新的 Bug 或兼容性问题。
    • 需要用户更积极地参与系统维护,定期更新并关注官方通告。
    • 偶尔可能需要手动干预解决更新冲突。

Arch Wiki: 你的核心宝典

如果说 Arch Linux 有什么“杀手级应用”,那一定是 Arch Wiki。这是一个由社区共同维护、内容极其丰富、质量极高的文档库。无论你遇到安装问题、配置困难还是想了解某个特定软件,Arch Wiki 几乎总能提供详细、准确的解决方案和指导。养成查阅 Arch Wiki 的习惯是成功使用 Arch Linux 的关键。


二、 安装前的准备:硬件、知识与工具

“凡事预则立,不预则废”。充分的准备是顺利安装 Arch Linux 的前提。

硬件要求:

  • 架构: Arch Linux 主要支持 x86_64 架构。
  • 内存 (RAM): 至少 512MB,但推荐 2GB 或更多以获得流畅体验(尤其是在图形环境下)。
  • 硬盘空间: 基础系统大约需要 2GB。但考虑到安装桌面环境、应用程序和用户数据,建议至少准备 20-30GB 的可用空间。根据你的需求调整。
  • 处理器: 任何兼容 x86_64 的处理器。
  • 网络连接: 安装过程中必须有稳定的网络连接(有线或无线),因为需要从网络下载软件包。
  • USB 启动盘: 一个容量至少 2GB 的 U 盘,用于制作 Arch Linux 安装介质。

知识储备:

  • Linux 基础命令: 如上所述,熟悉 cd, ls, pwd, cp, mv, rm, mkdir, mount, umount, ping 等。
  • 文本编辑器: 熟悉至少一种命令行文本编辑器,如 nano (相对简单) 或 vim (功能强大但学习曲线陡峭)。安装过程中会频繁用到。
  • 磁盘分区概念: 理解主分区、扩展分区、逻辑分区、文件系统 (如 ext4, btrfs, XFS)、挂载点 (mount point, 如 /, /home, /boot, /boot/efi)、Swap 分区/文件的作用。
  • BIOS/UEFI: 了解你的计算机使用的是传统的 BIOS 还是现代的 UEFI 固件,这对分区和引导加载器的安装方式有影响。

所需工具:

  1. Arch Linux ISO 镜像: 从 Arch Linux 官方网站 (https://archlinux.org/download/) 下载最新的 ISO 文件。务必选择一个速度较快的镜像源。
  2. 校验文件: 下载对应的 GPG 签名文件 (.sig) 或校验和文件 (如 SHA256SUMS),用于验证下载的 ISO 文件是否完整且未被篡改。
  3. 启动盘制作工具:
  4. 数据备份: 极其重要! 安装过程涉及到磁盘分区和格式化,操作失误可能导致数据丢失。务必将重要数据备份到其他存储设备。
  5. 另一台可上网设备 (推荐): 用于查阅 Arch Wiki 或搜索解决方案。安装过程中遇到问题时,这会非常有帮助。

三、 Arch Linux 安装流程概览 (概念性)

Arch Linux 的安装过程与许多图形化安装程序不同,它完全在命令行下进行,更像是在“组装”一个系统。官方提供了详细的 Installation Guide (安装指南)强烈建议在安装时全程对照官方指南操作。这里仅对主要步骤进行概念性概述,让你了解大致流程:

  1. 启动到 Live 环境:

    • 将制作好的 U 盘插入电脑,设置从 U 盘启动 (通常在 BIOS/UEFI 设置中调整启动顺序)。
    • 成功启动后,你会进入一个 Arch Linux 的 Live 环境,这是一个运行在内存中的临时系统。你会看到一个命令行提示符 (通常是 root@archiso ~ #)。
  2. 验证启动模式:

    • 确认系统是以 BIOS 模式还是 UEFI 模式启动的。可以通过检查 /sys/firmware/efi/efivars 目录是否存在来判断 (存在即为 UEFI)。这决定了后续的分区方案和引导安装方式。
  3. 连接网络:

    • 有线网络: 通常会自动连接。可以用 ping archlinux.org 测试。
    • 无线网络: 使用 iwctl 工具扫描、连接 Wi-Fi。你需要知道你的 Wi-Fi 名称 (SSID) 和密码。
  4. 更新系统时钟:

    • 使用 timedatectl set-ntp true 命令通过网络同步时间,确保时间准确。
  5. 磁盘分区 (关键步骤):

    • 使用 fdisk, gdisk (用于 GPT 分区表,推荐 UEFI 使用) 或 cfdisk (类图形界面,相对友好) 等工具对硬盘进行分区。
    • 常见分区方案:
      • BIOS:
        • / (根分区): 存放系统文件,ext4 文件系统,大小根据需求,至少 15-20GB。
        • [SWAP] (交换分区): 大小通常等于或两倍于 RAM,用于内存不足时。也可以使用 Swap 文件代替。
        • /home (家目录分区, 可选但推荐): 存放用户数据,ext4 或其他文件系统,分配剩余空间。将 /home 单独分区便于重装系统时保留用户数据。
      • UEFI:
        • /boot/efi (EFI 系统分区, ESP): 必须是 FAT32 文件系统,大小建议 300-512MB。用于存放引导加载器。
        • / (根分区): 同上。
        • [SWAP] (交换分区/文件): 同上。
        • /home (家目录分区, 可选但推荐): 同上。
    • 务必谨慎操作,确认操作的是目标硬盘,避免误删数据。
  6. 格式化分区:

    • 使用 mkfs 系列命令格式化创建好的分区。例如:
      • mkfs.ext4 /dev/sdXN (格式化为 ext4)
      • mkfs.fat -F32 /dev/sdXY (格式化 EFI 分区为 FAT32)
      • mkswap /dev/sdXZ (创建 Swap 分区)
      • swapon /dev/sdXZ (启用 Swap 分区)
    • sdXN 替换为实际的分区设备名 (如 /dev/sda1, /dev/nvme0n1p2 等)。
  7. 挂载分区:

    • 将格式化好的分区挂载到 Live 环境的指定目录下,通常是 /mnt
    • 必须先挂载根分区 //mnt
      • mount /dev/sdXN /mnt
    • 如果创建了其他分区,需要先在 /mnt 下创建对应的挂载点目录,然后再挂载。
      • mkdir /mnt/home
      • mount /dev/sdXY /mnt/home
      • mkdir -p /mnt/boot/efi (如果使用 UEFI)
      • mount /dev/sdXZ /mnt/boot/efi
  8. 选择镜像源:

    • 编辑 /etc/pacman.d/mirrorlist 文件,将速度快的镜像源放在前面 (取消注释即可)。可以使用 reflector 工具自动根据速度排序和更新镜像列表,提高下载速度。
      • pacman -Syy (同步包数据库,只需在 Live 环境执行一次)
      • pacman -S reflector
      • reflector --country 'YourCountry' --age 12 --protocol https --sort rate --save /etc/pacman.d/mirrorlist (示例,根据需要修改国家和参数)
  9. 安装基础系统:

    • 使用 pacstrap 脚本将基础系统包 (base)、Linux 内核 (linux) 和固件 (linux-firmware) 安装到刚才挂载的根分区 (/mnt)。
      • pacstrap /mnt base linux linux-firmware
    • 可以根据需要额外添加一些基础工具,如文本编辑器 (nano, vim)、网络管理工具 (networkmanager) 等。
      • pacstrap /mnt base linux linux-firmware nano networkmanager
  10. 配置新系统:

    • 生成 fstab 文件: 该文件定义了系统启动时如何挂载分区。
      • genfstab -U /mnt >> /mnt/etc/fstab (使用 UUID 标识分区,更可靠)
      • 生成后最好检查一下 /mnt/etc/fstab 文件内容是否正确。
    • Chroot 到新系统: arch-chroot /mnt 命令会将你的操作环境切换到刚刚安装好的系统内部。接下来的所有命令都是在配置这个新系统。
    • 设置时区:
      • ln -sf /usr/share/zoneinfo/Region/City /etc/localtime (例如 Asia/Shanghai)
      • hwclock --systohc (将系统时间同步到硬件时钟)
    • 本地化设置 (Localization):
      • 编辑 /etc/locale.gen 文件,取消注释你需要的 locale (如 en_US.UTF-8 UTF-8zh_CN.UTF-8 UTF-8)。
      • 运行 locale-gen 命令生成 locale。
      • 创建 /etc/locale.conf 文件,并设置 LANG 变量 (如 LANG=en_US.UTF-8)。
    • 网络配置:
      • 创建 /etc/hostname 文件,写入你的主机名 (如 myarchpc)。
      • 配置 /etc/hosts 文件。
      • 重要: 如果之前安装了 NetworkManager,需要启用它:systemctl enable NetworkManager。否则,你需要配置其他网络连接方式 (如 systemd-networkd)。
    • 设置 Root 密码:
      • passwd 命令,输入并确认 root 用户的密码。务必记住此密码。
    • 安装引导加载器 (Bootloader) (关键步骤):
      • GRUB (常用):
        • 安装 GRUB 包: pacman -S grub
        • UEFI: 还需要安装 efibootmgr 包: pacman -S efibootmgr。然后运行 grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB (注意 /boot/efi 是之前挂载 ESP 的路径)。
        • BIOS: 运行 grub-install --target=i386-pc /dev/sdX (将 /dev/sdX 替换为你的启动硬盘,不是分区,如 /dev/sda)。
        • 生成 GRUB 配置文件: grub-mkconfig -o /boot/grub/grub.cfg。这一步会扫描系统并生成启动菜单。
      • 其他引导加载器如 systemd-boot 也是可选的,尤其在 UEFI 系统下更简洁。请参考 Arch Wiki。
    • (可选) 安装微码 (Microcode): 为了处理器的 Bug 和安全漏洞,建议安装。Intel CPU 安装 intel-ucode,AMD CPU 安装 amd-ucode。安装后需要重新生成 GRUB 配置 (grub-mkconfig -o /boot/grub/grub.cfg)。
  11. 退出 Chroot 并重启:

    • 输入 exit 退出 chroot 环境。
    • 卸载所有分区: umount -R /mnt (如果提示忙碌,可能需要多次尝试或查找占用进程)。
    • 输入 reboot 重启电脑。
    • 及时移除 U 盘!

四、 首次启动与基础配置

如果一切顺利,你应该能看到 GRUB 引导菜单,选择 Arch Linux 启动后,最终会进入一个登录提示符。恭喜你,基础系统安装完成!但现在还只是一个纯命令行环境。

  1. 登录: 使用 root 用户和你之前设置的密码登录。

  2. 检查网络: 再次确认网络连接正常 (ping archlinux.org)。如果之前启用了 NetworkManager,它应该会自动连接(有线)或可以通过 nmtui (一个终端图形界面) 或 nmcli (命令行) 连接 Wi-Fi。

  3. 创建普通用户: 不推荐长期使用 root 用户操作。

    • useradd -m -G wheel username
      • -m: 创建用户的家目录 (/home/username)。
      • -G wheel: 将用户添加到 wheel 组。wheel 组通常被配置为可以使用 sudo 命令。
      • username: 替换为你想要的用户名。
    • 设置用户密码: passwd username
  4. 配置 sudo: 允许新创建的用户执行管理员命令。

    • 安装 sudo 包: pacman -S sudo
    • 编辑 sudoers 文件: 必须使用 visudo 命令编辑,它会在保存时检查语法错误,防止你锁死自己。
      • visudo
      • 找到类似 # %wheel ALL=(ALL:ALL) ALL 这一行,去掉行首的 # (取消注释)。
      • 保存并退出 (visudo 通常使用 vi 编辑器,保存退出是 :wq)。
    • 现在,你可以 exit 退出 root 登录,然后用你的新用户名登录。尝试执行 sudo pacman -Syu,它会提示你输入你的用户密码 (不是 root 密码),如果能成功更新系统,说明 sudo 配置成功。
  5. 安装图形环境 (可选): 如果你需要图形界面。

    • Xorg 显示服务器: 大多数桌面环境的基础。
      • sudo pacman -S xorg-server xorg-apps xorg-xinit xterm (安装基础 Xorg 组件和一些工具)
    • 显卡驱动:
      • Intel: 通常安装 xf86-video-intel 包 (或者有时内核自带的 modesetting 驱动更好)。
      • AMD: 安装 xf86-video-amdgpu 包 (适用于较新的 AMD GPU)。
      • NVIDIA:
        • 开源驱动 (Nouveau): xf86-video-nouveau (功能有限,兼容性较好)。
        • 闭源驱动 (推荐性能): 根据你的显卡型号安装 nvidia, nvidia-lts (如果用 LTS 内核), nvidia-dkms (自动适配内核更新), 或更旧的 nvidia-390xx 等。同时需要安装对应的 nvidia-utils。查阅 Arch Wiki 的 NVIDIA 页面获取详细信息。
    • 桌面环境 (Desktop Environment, DE) 或 窗口管理器 (Window Manager, WM):
      • DE (提供完整体验):
        • GNOME: sudo pacman -S gnome gnome-extra
        • KDE Plasma: sudo pacman -S plasma kde-applications
        • XFCE: sudo pacman -S xfce4 xfce4-goodies
        • Cinnamon: sudo pacman -S cinnamon
        • MATE: sudo pacman -S mate mate-extra
      • WM (更轻量,需自行配置):
        • i3wm: sudo pacman -S i3-wm i3status dmenu
        • Openbox: sudo pacman -S openbox obconf
        • Awesome: sudo pacman -S awesome
    • 显示管理器 (Display Manager / Login Manager): 提供图形登录界面。
      • GDM (GNOME): sudo pacman -S gdm -> sudo systemctl enable gdm.service
      • SDDM (KDE): sudo pacman -S sddm -> sudo systemctl enable sddm.service
      • LightDM (通用): sudo pacman -S lightdm lightdm-gtk-greeter -> sudo systemctl enable lightdm.service
    • 启用显示管理器服务后,重启 (reboot) 即可进入图形登录界面。
  6. 安装常用软件:

    • 网页浏览器: sudo pacman -S firefoxchromium
    • 终端模拟器: GNOME Terminal, Konsole, Alacritty, Kitty 等 (如果桌面环境没带你喜欢的)。
    • 文本编辑器: geany, gedit, kate, mousepad (图形) 或 neovim (终端)。
    • 文件管理器: Nautilus (GNOME), Dolphin (KDE), Thunar (XFCE), PCManFM。
    • 声音: 安装 pipewire (推荐的现代音频服务器) 或 pulseaudio。通常需要安装 pipewire-pulse, pipewire-alsa, pipewire-jack 等兼容包。
      • sudo pacman -S pipewire pipewire-pulse pipewire-alsa pipewire-jack wireplumber
      • 用户需要启用 pipewire 服务 (通常通过 systemd user service 或桌面环境自动处理)。

五、 包管理核心:Pacman 与 AUR

Pacman: Arch Linux 的官方包管理器,是其强大和简洁的体现。

常用 Pacman 命令:

  • sudo pacman -Syu最重要的命令。 同步远程仓库数据库,并升级所有已安装的包。建议定期执行,并在执行前查看 Arch Linux 官网新闻 (Arch News)。
  • sudo pacman -S package_name:安装一个或多个新包。
  • sudo pacman -Syy:强制同步数据库 (通常只在修改 mirrorlist 后或遇到同步问题时使用)。
  • sudo pacman -Ss search_term:在远程仓库中搜索包。
  • sudo pacman -Si package_name:显示远程仓库中某个包的详细信息。
  • sudo pacman -Qi package_name:显示本地已安装的某个包的详细信息。
  • pacman -Ql package_name:列出某个已安装包所包含的文件。
  • sudo pacman -R package_name:移除一个包,但保留其依赖。
  • sudo pacman -Rs package_name:移除一个包及其不再被任何其他包需要的依赖。常用且推荐。
  • sudo pacman -Rns package_name:移除包、依赖,并删除全局配置文件 (谨慎使用)。
  • sudo pacman -Ru package_name:移除包,但仅移除被此包明确依赖且不再被其他包需要的依赖。
  • sudo pacman -Qdtq:列出所有孤立的包 (作为依赖安装,但现在没有包需要它们了)。
  • sudo pacman -Rns $(pacman -Qdtq):移除所有孤立的包 (常用清理命令)。
  • sudo paccache -r:清理 /var/cache/pacman/pkg/ 中旧的包缓存,默认保留最近 3 个版本。
  • sudo paccache -rk1:清理缓存,只保留当前安装的版本。

AUR (Arch User Repository):

AUR 是一个由社区驱动的仓库,包含了大量官方仓库中没有的软件包的构建脚本 (PKGBUILD)。这些脚本描述了如何从源代码编译或从其他地方获取并打包软件。

  • 风险: AUR 中的包未经官方审核,安全性和稳定性需要用户自行判断。构建过程可能需要较长时间和额外依赖。
  • 使用:
    • 不能直接用 pacman 安装 AUR 包。
    • 手动方法 (推荐理解原理):
      1. 在 AUR 网站 (https://aur.archlinux.org/) 搜索包。
      2. 下载该包的 PKGBUILD 文件 (通常通过 git clone 其仓库 URL)。
      3. 进入包含 PKGBUILD 的目录。
      4. 仔细检查 PKGBUILD 文件内容,确保没有恶意代码。
      5. 运行 makepkg -si 命令。
        • makepkg: 根据 PKGBUILD 构建软件包。
        • -s: 自动解决并安装编译依赖 (使用 pacman)。
        • -i: 构建成功后自动安装生成的包 (使用 pacman)。
    • AUR 助手 (AUR Helper): 自动化上述过程的工具,如 yay, paru。它们提供了类似 pacman 的接口来搜索、安装和更新 AUR 包。
      • 安装 AUR 助手: 通常需要先手动构建安装它本身 (例如,从 AUR 下载 yay 的 PKGBUILD,然后 makepkg -si)。
      • 使用示例 (以 yay 为例):
        • yay -S package_name (搜索并安装,会提示构建)
        • yay -Syu (同时更新官方仓库和 AUR 包)
        • yay -Ss search_term (搜索官方仓库和 AUR)
      • 注意: 即使使用助手,也建议在构建前检查 PKGBUILD。不要用 sudo 运行 makepkg 或 AUR 助手 (它们会在需要时调用 sudo 安装依赖或最终包)。

六、 系统维护与最佳实践

维护 Arch Linux 系统需要一些主动性:

  1. 定期更新: 运行 sudo pacman -Syu。频率可以是一天一次、几天一次或一周一次,但不建议间隔太久 (比如超过一个月),否则可能遇到更复杂的更新问题。
  2. 更新前阅读 Arch News: Arch Linux 官网 (https://archlinux.org/) 的新闻板块会发布可能需要用户手动干预的重大更新。养成更新前查看的习惯至关重要。
  3. 处理 .pacnew / .pacsave 文件:
    • 当软件包更新包含新的默认配置文件,而已存在的配置文件被用户修改过时,pacman 会将新配置文件保存为 .pacnew 文件。
    • 当软件包被移除,但其修改过的配置文件被保留时,可能会生成 .pacsave 文件。
    • 你需要定期检查这些文件 (可以使用 pacdiff 工具或 find /etc -name "*.pacnew" 等命令),并使用合并工具 (如 meld, vimdiff) 将新配置中的重要更改合并到你的现有配置中,或者决定使用哪个版本,然后删除多余的文件。忽略 .pacnew 文件可能导致系统或软件在未来出现问题。
  4. 清理系统:
    • 定期移除孤立包: sudo pacman -Rns $(pacman -Qdtq)
    • 定期清理包缓存: sudo paccache -r
  5. 备份: 使用 rsync, Timeshift, borgbackup 等工具定期备份重要数据 (/home) 和系统配置文件 (/etc)。考虑到滚动更新的特性,拥有备份可以在出现问题时快速恢复。
  6. 遇到问题时:
    • 首先查阅 Arch Wiki。 绝大多数问题 Wiki 都有涉及。
    • 查看系统日志: journalctl -b (查看本次启动日志), journalctl -p err -b (查看错误日志)。
    • 搜索 Arch Linux 论坛 (https://bbs.archlinux.org/) 或相关社区。
    • 提供清晰的问题描述、相关日志和已尝试的解决方法,以便他人帮助。

七、 学习资源与社区


结语

Arch Linux 确实不是一条“轻松”的路,它要求用户投入时间和精力去学习、配置和维护。但正是这个过程,让你能够真正理解 Linux 的运作方式,从底层构建起一个完全符合自己需求的、简洁高效的系统。它所带来的掌控感、学习成就感以及始终使用最新软件的体验,是许多用户选择并坚持使用 Arch 的原因。

不要被“高难度”的标签吓倒。只要你有耐心,愿意阅读文档,动手实践,遵循 Arch Way 的理念,并善用强大的 Arch Wiki 和社区资源,你完全可以成功驾驭 Arch Linux。这趟旅程或许充满挑战,但最终你会发现,收获的不仅仅是一个操作系统,更是宝贵的知识和解决问题的能力。

祝你在 Arch Linux 的世界里探索愉快!

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部