Arch Linux 安装和配置小记

本文章涉及 Arch Linux 的安装, 常用软件和配置. 适用于在 UEFI 上面进行引导安装.

安装

  • 联网

    第一件事当然是联网啦, 如果是无线网络的话使用 wifi-menu.

  • 分区和挂载

    新手安装 Linux 可能会在分区这里感到很疑惑. 其实很简单, 通常我们只考虑为 Linux 分三个或四个区, 三个区的情况分别为 boot 分区, 根分区, home 分区以及交换分区.

    boot 分区是存放启动和引导的; home 分区是存放用户个人文件夹的, 它不是必选的, 但是如果有专门的 home 分区的话以后迁移会很方便; 交换分区主要用途是当虚拟内存用, 如果想要有休眠功能必须要有交换分区(或交换文件), 同样也是可选的; 根分区是必须有的, 以上所有分区都挂载到根分区中.

    Linux 的文件系统格式流行的有两种, 一种是 Ext4, 另一种是 Btrfs. Ext4 是用得最多的. Btrfs 相比 Ext4 支持写时复制以及快照, 子卷等.

    你可以运行 lsblk 命令查看当前的硬盘, 看仔细了别选错了. 假设你要安装的是 /dev/sda 上.

    • 方案一: 使用 Ext4 文件系统

    以下创建三个分区, boot 分区, swap 分区以及 / 分区. 如果需要 home 分区把 / 分区拆成两部分即可.

    parted /dev/sda
    mklabel gpt
    mkpart ESP fat32 1M 513M # Boot 分区
    set 1 boot on
    mkpart primary ext4 513M 8.5G # 交换分区
    mkpart primary ext4 8.5G 100% # 根分区
    quit

    接着运行下格式化以及设置交换分区操作.

    mkfs.fat -F32 /dev/sda1
    mkswap /dev/sda2
    swapon /dev/sda2
    mkfs.ext4 /dev/sda3

    分区就完成了. 接下来我们要进行挂载.

    mount /dev/sda3 /mnt
    mkdir /mnt/{boot,home}
    mount /dev/sda1 /mnt/boot

    这样就完成挂载了.

    • 方案二: 使用 Btrfs 文件系统

    Btrfs 不支持交换分区, 所以就不用设置了, 以下创建两个分区, boot 分区和 / 分区. Btrfs 对 SSD 提供了优化, 如果你没有用 SSD, 那么把后面的挂载参数中的 ssddiscard 都去掉.

    parted /dev/sda
    mklabel gpt
    mkpart ESP fat32 1M 513M # Boot 分区
    set 1 boot on
    mkpart primary btrfs 513M 100% # 根分区
    quit

    接着我们要在根分区创建两个子卷, 具体如下:

    mount -o defaults,ssd,discard,noatime,compress=lzo,space_cache,autodefrag /dev/sda2 /mnt
    cd /mnt
    btrfs subvolume create arch # arch 卷作为 / 分区
    btrfs subvolume create home # home 卷作为 home 分区
    umount /mnt

    接着挂载刚才创建的子卷

    mount -o subvol=arch,defaults,ssd,discard,noatime,compress=lzo,space_cache,autodefrag /dev/sda2 /mnt
    mkdir /mnt/{boot,home}
    mount -o subvol=home,defaults,ssd,discard,noatime,compress=lzo,space_cache,autodefrag /dev/sda2 /mnt/home
    mount /dev/sda1 /mnt/boot
  • 部署基本系统

    接下来就可以开始安装 Arch Linux 了.

    首先换个源

    vim /etc/pacman.d/mirrorlist

    可以使用以下这些源:

    Server = http://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
    Server = http://mirrors.neusoft.edu.cn/archlinux/$repo/os/$arch
    Server = http://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
    Server = http://mirror.lzu.edu.cn/archlinux/$repo/os/$arch

    接着运行

    pacman -Syy

    然后我们开始安装基础包

    pacstrap -i /mnt base base-devel zsh btrfs-progs dialog wpa_supplicant iw zsh vim

    第一个 base 是基础包, 第二个 base-devel 是加了一些开发构建工具. zsh 替换 bash 用的. btrfs-prog 的话只在你选择了 Btrfs 文件系统的时候安装, 再后面那几个是无线网络需要用的, 如果不装进系统后可能没办法使用无线网络. zsh, vim 后面也要用到, 先安装了.

  • 生成 fstab

    挂载完成后重要的一步不要忘了, 就是生成 fstab, 这个 fstab 记录了上面我们的挂载信息.

    genfstab -U -p /mnt >> /mnt/etc/fstab
  • 系统配置

    上面操作完成之后, 我们的 Arch Linux 已经可以宣布安装完成了, 但是, 离能够使用还有一段路要走, 接下来我们对系统进行一些配置.

    通过 chroot 我们可以进入到 /mnt 下我们刚刚装好的系统去.

    arch-chroot /mnt /bin/bash
    • 设置 Locale
    vim /etc/locale.gen

    在最上面加入以下两行

    zh_CN.UTF-8 UTF-8
    en_US.UTF-8 UTF-8

    然后执行

    locale-gen
    • 设置时区
    ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

    如果提示已被链接, 把 /etc/localtime 删掉重新运行即可.

    • 设置主机名
    echo 主机名 > /etc/hostname
    vim /etc/hosts

    hostname 下的记录改为你刚刚设置的主机名, 并把 hostname.domain.org 下的记录改为 localhost.

    • 生成初始化 ramdisk 环境

    运行以下命令:

    mkinitcpio -p linux
    • 设置用户
    passwd # 设置 root 密码
    useradd -m -g users -G wheel -s /bin/zsh 用户名 # 创建一个新用户
    passwd 用户名 # 设置上一条创建的用户的密码

    如果你不希望每次使用 sudo 都输入密码的话, 可以编辑 /etc/sudoers 文件, 新版本可能没法直接编辑. 可以运行 visudo 命令. 然后找到 %wheel ALL=(ALL) NOPASSWD: ALL 把前面的 # 去掉.

  • 引导

    上面几步配置好了之后, 我们开始安装引导, 引导也有多种方式. 不过我个人倾向于使用 bootctl. 安装过程如下:

    bootctl install

    然后运行 blkid 查看根分区的 PARTUUID

    接着编辑 /boot/loader/entries/arch.conf 文件, 添加以下内容(注意此处 Btrfs 和 Ext4 的区别):

    title Arch Linux
    linux /vmlinuz-linux
    initrd /initramfs-linux.img
    options root=PARTUUID=上面你获得的PARTUUID rw rootflags=subvol=arch # Btrfs
    options root=PARTUUID=上面你获得的PARTUUID rw # Ext4

    接着修改 /boot/loader/loader.conf, 修改后内容如下:

    timeout 3
    default arch
  • 安装驱动

    上面完成了之后没有意外我们已经可以重启进入系统了, 但是可以先不急, 我们把驱动一起装了先. 驱动的话因机而异, 我电脑是 intel 集显加 nvidia 独显, 我是执行这几条的:

    pacman -S alsa-utils # 声卡
    pacman -S mesa xf86-video-intel nvidia # 如果你不是 intel 集显 + nvidia 独显组合请谨慎操作这一步
    pacman -S xf86-input-synaptics # 触摸板
  • 安装桌面

    桌面有很多种选择, 我个人也是在 XFCE, GNOME, KDE 之间风水轮流转. 还有很多其他的桌面, 安装的时候最好谨慎点不要安装全家桶. 对于新手, 更推荐使用 KDE 或者 GNOME, 少去很多步骤.

    在安装之前, 第一步是先安装 xorg, 他是所有图形桌面的前置图形框架.

    pacman -S xorg

    下面说下 XFCE, Gnome, Kde 三种桌面的安装.

    • 方案一: XFCE

    因为 XFCE 不带显示管理器, 所以需要自己安装一个, 同样选择很多, 这里就拿 sddm 来说.

    pacman -S xfce4 xfce4-goodies sddm
    • 方案二: KDE

    KDE 的话推荐安装如下:

    pacman -S plasma dolphin kate konsole sddm kde-l10n-zh_cn

    以上只安装了 Plasma 桌面以及几个常用的 KDE 应用, 如果你需要更多的话可以安装 kde-applications-meta 或者 kde-applications.

    • 方案三: GNOME

    GNOME 的话直接安装

    pacman -S gnome

    同样如果你需要 GNOME 全家桶的话再安装上 gnome-extras 就好了.

    接着, 我们顺便安装 NetworkManager, 以上桌面环境都会使用它.

    pacman -S networkmanager

    然后我们把他们设置为开机自启动

    # KDE 或者 XFCE
    systemctl enable sddm
    # GNOME
    systemctl enable gdm
    # NetworkManager 
    systemctl enable NetworkManager
  • 安装字体

    桌面也搞定了, 继续最后一步安装字体吧. 以下根据自己需要选择运行:

    pacman -S noto-fonts noto-fonts-cjk noto-fonts-emoji # 使用 Google Noto Fonts
    pacman -S adobe-source-han-sans-otc-fonts # 使用思源黑体
    pacman -S wqy-micro-hei wqy-zenhei # 使用文泉驿字体
  • 重启

    以上安装完成后就可以重启了, 重启后使用你之前创建的新用户登入系统

常用配置

  • 使用 AUR

    AUR 是我对 Arch Linux 爱不释手的重要原因之一了, 通过使用 AUR 我们可以安装到更多的软件. 编辑 /etc/pacman.conf 在最下方加入:

    [archlinuxcn]
    SigLevel = Optional TrustAll
    Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch

    然后执行:

    pacman -Syu
    pacman -S archlinux-keyring yaourt

    之后可以使用 yaourt 替代 pacman 命令了.

  • 输入法

    推荐使用 fcitx 以及搜狗拼音, 当然你也可以使用 rime 或其他的.

    yaourt -S fcitx-im fcitx fcitx-configtool(gnome) kcm-fcitx(kde) fcitx-gtk2 fcitx-sogoupinyin

    然后编辑 ~/.xprofile 文件加入以下几行 (如果是 GNOME 桌面则编辑 /etc/enviroment 文件:

    export GTK_IM_MODULE=fcitx
    export QT_IM_MODULE=fcitx
    export XMODIFIERS=@im=fcitx
  • 安装字体

    之前因为还没有加上 aur 有些字体我们还没法安装, 加了之后就可以安装上了. 以下字体如有需要的话就装上, 有的需要 aur 有的可能不需要.

    yaourt -S ttf-google-fonts-git # droid sans
    yaourt -S ttf-ubuntu-font-family # ubuntu fonts
    yaourt -S otf-fira-code ttf-fira-code # Fira code
  • 读写 NTFS 分区

    如果你需要读写 NTFS 分区的话, 安装 ntfs-3g

    yaourt -S ntfs-3g
  • 图形解压

    图形解压应该 GNOME 和 KDE 自带了, XFCE 应该没有. 如果需要的话运行下面命令.(XFCE 缺的东西多着呢, 所以要装 XFCE 的话很多东西就要自己去装和配置了)

    yaourt -S fire-roller(gnome) ark(kde) p7zip unrar lrzip unace
  • 常用软件

    根据需要安装

    yaourt -S git wps-office proxychains-ng shadowsocks visual-studio-code screenfetch netease-cloud-music dropbox jdk nodejs npm firefox chromium firefox-i18n-zh-cn wiznote typora mongochef wireshark dbeaver htop telegram-desktop deluge aria2 uget

    有了 yaourt 安装软件就是这么简单任性.

标签: Linux, Arch Linux, KDE, GNOME, XFCE

知识共享许可协议
本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。

仅有一条评论

  1. inbeen inbeen

    很不错的安装指南,连我这种小白都能在你的指导下顺利安装配置linux。666

添加新评论

This page loaded in 0.001103 seconds