
Arch Linux 基础安装
禁用 reflector
reflector 会为你选择速度合适的镜像源,但其结果并不准确,同时会清空配置文件中的内容,对于新人来讲并不适用,我们首先对其进行禁用。
1
| systemctl stop reflector.service
|
再次确保是否为 UEFI 模式
1
| ls /sys/firmware/efi/efivars
|
连接网络
1 2 3 4 5 6 7 8 9
|
rfkill unblock wifi iwctl device list station wlan0 scan station wlan0 get-networks station wlan0 connect YOUR-WIRELESS-NAME exit
|
更新系统时钟
1 2
| timedatectl set-ntp true timedatectl status
|
分区
首先将磁盘转换为 gpt 类型
1 2 3 4 5
| lsblk parted /dev/nvme0n1 (parted)mktable New disk label type? gpt quit
|
使用 cfdisk 命令对磁盘分区
1 2
| cfdisk /dev/sdx fdisk -l
|
格式化分区
1 2
| mkfs.ext4 /dev/nvme0n1p2 mkfs.vfat /dev/nvme0n1p1
|
挂载分区
在挂载时,挂载是有顺序的,先挂载根分区,再挂载 EFI 分区
1 2 3 4 5
| mount /dev/sda2 /mnt mkdir /mnt/efi mkdir /mnt/home mount /dev/sda1 /mnt/efi mount /dev/sda3 /mnt/home
|
镜像源的选择
编辑镜像源
1 2 3 4 5
| nano /etc/pacman.d/mirrorlist
Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
|
安装系统
1 2
| pacstrap /mnt base base-devel linux-zen linux-zen-headers linux-firmware pacstrap /mnt dhcpcd iwd vim bash-completion fish networkmanager
|
生成 fstab 文件
fstab 用来定义磁盘分区
1
| genfstab -U /mnt >> /mnt/etc/fstab
|
change root
把环境切换到新系统的/mnt 下
时区设置
设置时区,在 /etc/localtime 下用/usr 中合适的时区创建符号连接。如下设置上海时区。
1
| ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
|
随后进行硬件时间设置,将当前的正确 UTC 时间写入硬件时间。
设置 Locale 进行本地化
1 2
| nano /etc/locale.gen locale-gen
|
向 /etc/locale.conf 导入内容
1
| echo 'LANG=en_US.UTF-8' > /etc/locale.conf
|
设置主机名
接下来在 /etc/hosts 设置与其匹配的条目。
加入如下内容
1 2 3
| 127.0.0.1 localhost ::1 localhost 127.0.1.1 archname
|
为 root 用户设置密码
安装微码
1 2
| pacman -S intel-ucode pacman -S amd-ucode
|
安装引导程序
1 2
| pacman -S grub efibootmgr grub-install --target=x86_64-efi --efi-directory=/efi --bootloader-id=GRUB
|
接下来编辑/etc/default/grub 文件,去掉 GRUB_CMDLINE_LINUX_DEFAULT 一行中最后的 quiet 参数,同时把 log level 的数值从 3 改成 5。这样是为了后续如果出现系统错误,方便排错。同时在同一行加入 nowatchdog 参数,这可以显著提高开关机速度。
最后生成 GRUB 所需的配置文件
1
| grub-mkconfig -o /boot/grub/grub.cfg
|
完成安装
1 2 3
| exit umount -R /mnt reboot
|
重启后,开启 networkmanager 服务,即可连接网络
1
| systemctl enable --now NetworkManager
|
若为无线链接,则还需要启动 iwd 才可以使用 iwctl 连接网络
1 2
| systemctl start iwd iwctl
|
准备非 root 用户
1
| useradd -m -G wheel -s /bin/fish testuser
|
设置新用户 testuser 的密码
编辑 sudoers 配置文件
找到下面这样的一行,把前面的注释符号 # 去掉,保存即可
到此为止,一个基础的,无 UI 界面的 Arch Linux 已经安装完成了。