Date
Jul. 19th, 2024
 
2024年 6月 14日

Post: Arch Installation

Arch Installation

Published 17:01 Jan 15, 2022.

Created by @ezra. Categorized in #UNIX/Linux, and tagged as #Cheatsheet, #UNIX/Linux.

Source format: Asciidoc

Table of Content

发行版

你可以选择安装纯粹的 Arch Linux, 或者选择传承 Arch Linux 哲学、漂亮且易于安装的 EndeavourOS 发行版, 又或者选择对易用性有巨大提升的 Manjaro 发行版。

本文将介绍最纯粹的 Arch Linux 的安装过程。

安装程序

首先在 ArchLinux.org 下载安装镜像。

你可以直接下载 torrent 文件, 或选择你所在的国家或地区的镜像服务器并下载。

下载完成后, 通过 balena etcher 等工具制作可启动的 USB 安装器, 或在虚拟机中选择链接该镜像文件。

准备安装

字体显示

启动计算机并进入 archiso 后, 根据实际情况, 你可能想要设置更大的字体以便改善安装体验, 例如:

setfont ter-132n

EFI

接下来, 确认是否支持 EFI:

efivar -l

如果该指令可以输出许多非错误信息, 则表示支持。

网络状况

接下来测试一下网络状况:

ping gnu.org

如果超时, 可能你的计算机并未接入网络。

如果你正在虚拟机中安装并且使用 NAT 方式连接网络, 或你的计算机正在使用有线网络, 那么你应当看到多次输出结果。

按下 CTRL + C 终止。

如果你需要使用 Wi-Fi 网络, 输入下面的指令:

iwctl

查看设备列表:

device list

确认你的无线网卡设备, 假设为 wlan0, 开始扫描网络:

station wlan0 scan
station wlan0 get-networks

连接其中一个无线网络:

station wlan0 connect SSID-STRING

退出 iwd:

exit

再次测试网络:

ping archlinux.org

同步时间

有了网络连接后, 我们便可以同步设备时间:

timedatectl set-ntp true

镜像源

接下来我们需要调整镜像源的配置以便加快包管理器的下载速度。

如果你在中国大陆地区, 你可能会需要添加阿里云的镜像源:

nano /etc/pacman.d/mirrorlist

在镜像源列表中追加一条:

Server = http://mirrors.aliyun.com/archlinux/$repo/os/$arch

接下来, 备份一下镜像源列表:

cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak

刷新包信息:

pacman -Syy

安装 pqcman-contrib:

pacman -S pacman-contrib

对备份的镜像源列表进行排序, 并将其中前 5 条覆盖写入到镜像源列表文件:

rankmirrors -n 5 /etc/pacman.d/mirrorlist.bak > /etc/pacman.d/mirrorlist

分区配置

创建分区

首先查看当前磁盘和分区情况:

lsblk

找到你要安装的磁盘设备, 假设为 sda

根据情况, 你可能希望抹除该磁盘 (请在此之前务必做好数据备份) :

gdisk /dev/sda

通过 x 命令进入专家模式, 通过 z 命令擦除磁盘, 后面的确认项均输入 Y

接下来开始进行分区:

cfdisk /dev/sda

一般我们选择 GPT 方式, 接下来根据你的需要进行分区。

你可能希望有:

  • 512MB 以上的 EFI 分区, `FAT32`格式

  • [可选] 8GB 以上的交换分区, 取决于你的内存大小和睡眠设置, `linux swap`格式

  • 20GB 以上的系统分区, ext4 格式

  • [可选] 10GB 以上的用户目录分区, 可以与系统分区合并在一起, 但在使用多系统时可能会很有用, ext4 格式

你可以使用 lsblk 查看写入的分区信息。此处假设我们按照以上方式和顺序规划并创建分区, 则分区依次为设备 sda1sda2sda3sda4

首先格式化 EFI 分区:

mkfs -t fat -F 32 /dev/sda1

格式化交换分区:

mkswap /dev/sda2

格式化系统分区和用户目录分区:

mkfs.ext4 /dev/sda3
mkfs.ext4 /dev/sda4

交换分区大小

内存 交换分区 (无休眠) 交换分区 (有休眠)

256MB

256MB

512MB

512MB

512MB

1GB

1GB

1GB

2GB

2GB

1GB

3GB

3GB

2GB

5GB

4GB

2GB

6GB

6GB

2GB

8GB

8GB

3GB

11GB

12GB

3GB

15GB

16GB

4GB

20GB

24GB

5GB

29GB

32GB

6GB

38GB

64GB

8GB

72GB

128GB

11GB

139GB

装载分区

首先要装载系统分区, 依照刚才的分区:

mount /dev/sda3 /mnt

成功后, 装载 EFI 分区:

mkdir /mnt/boot/efi
mount /dev/sda1 /mnt/boot/efi

装载用户目录分区:

mkdir /mnt/home
mount /dev/sda4 /mnt/home

装载交换分区:

swapon /dev/sda2

确认装载信息:

lsblk

开始安装

base and kernel

pacstrap -i /mnt base base-devel linux linux-firmware linux-headers [intel-ucode] [amd-ucode] vim nano

此处 [intel-ucode][amd-ucode] 请根据自己的 CPU 选择其一 (不包含括号) 。如果是虚拟机安装, 可以忽略。

另外, 你也可以根据自己的需要安装其他包, 例如 iwdbash-completion 等。

fstab

生成 fstab:

genfstab /mnt
genfstab -U -p /mnt >> /mnt/etc/fstab

chroot

接下来, 切换根目录到我们创建的系统分区:

arch-chroot /mnt /bin/bash

GRUB

安装网络管理工具和 GRUB 等工具:

pacman -S networkmanager grub dhcpcd dialog efibootmgr

NetworkManager

激活 NetworkManager 服务:

systemctl enable NetworkManager

安装和配置 GRUB:

grub-install /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg

主要配置

用户和密码

首先为 root 用户设置密码:

passwd

创建用户, 并加入一些用户组:

useradd -m -g users -G wheel,storage,power,root -s /bin/bash USERNAME

为该用户设置密码:

passwd USERNAEM

赋予 wheel 用户组权限:

EDITOR=nano visudo

找到这一条并解除注释:

# Uncomment to allow members of group wheel to excute any commands
# %wheel ALL=(ALL) ALL

并添加下面一行:

Defaults rootpw

地区和语言

打开本地化配置文件:

nano /etc/locale.gen

找到你要使用的条目并解除注释。

设置语言, 例如:

nano /etc/locale.conf
LANG=en-US.UTF-8
# LANG=zh-CN.UTF-8

时区

设置时区, 例如香港:

ln -sf /usr/share/zoneinfo/HongKong /etc/localtime

你可以在输入 /usr/share/zoneinfo/ 后通过 Tab 键查看可用的选项。

hwclock --systohc

主机名称

nano /etc/hostname

例如设置为 archbox

同时设置回环信息:

nano /etc/hosts
127.0.0.1   localhost
::1 localhost
127.0.1.1   HOSTNAME.localdomain HOSTNAME

完成安装

首先退出 chroot 环境:

exit

卸载分区:

umount -R /mnt

重启计算机:

reboot

neofetch

现在, 你已经成为 Arch Linux 社区的一员:

pacman -S neofetch
neofetch

桌面环境

完成前面的安装后, 你的系统仍然只有命令行界面, 你可以根据喜好安装一款桌面环境。

xfce

安装 xfce 环境会是个不错的选择:

sudo pacman -S xfce4 xfce4-goodies

安装完成后重启计算机:

reboot

Gnome

Gnome 也是一款十分受欢迎的桌面环境:

sudo pacman -S xorg xorg-server
sudo pacman -S gnome
sudo systemctl start gdm.service
sudo systemctl enable gdm.service

你也许希望启用插件等功能:

gnome-shell
gnome-shell-extensions gnome-tweaks

不过, 在 Arch Linux 中安装的 Gnome 中还存在一些问题, 例如默认的终端模拟器可能无法启动, 你可以选择 Xterm 等其它替代品:

sudo pacman -S xterm

实用工具

现在你可以安装一些实用工具了, 例如:

sudo pacman -S firefox chromium vlc gimp gedit gparted virtualbox evolution xterm wget curl net-tools python3 ruby kate duf exa ncdu iwd git
Pinned Message
HOTODOGO
I'm looking for a SOFTWARE PROJECT DIRECTOR / SOFTWARE R&D DIRECTOR position in a fresh and dynamic company. I would like to gain the right experience and extend my skills while working in great teams and big projects.
Feel free to contact me.
For more information, please view online résumé or download PDF
本人正在寻求任职 软件项目经理 / 软件技术经理 岗位的机会, 希望加⼊某个新鲜⽽充满活⼒的公司。
如有意向请随时 与我联系
更多信息请 查阅在线简历下载 PDF