Archlinux日常(其一 : 系统安装)

“时刻关注社区最新动态,一切以官方文档为准”

 

准备工作

注意
默认已经从仓库下载好了最新的安装镜像,且写入或者存入u盘(推荐 Ventoy),且已经重启进入 Archlinux live 环境

配置控制台字体(可选)

  1. 列出可选字体
    ls /usr/share/kbd/consolefonts/
  2. 设置字体(可自行选择合适字体)
    setfont ter-132b
  3. 更改 wifi 名为英文,无线连接时不支持中文 SSID

网络设置

网络设置
二选任意一个连接成功即可

网线直连

连接网线后开箱即用,ping通后即可继续后续步骤

ping baidu.com

wifi连接

#查看wifi软、硬件是否被禁用
rfkill list
#如果被禁用,使用以下命令解除限制
rfkill unblock all

解除后使用 iwctl 连接网络

#进入 iwctl 交互提示符
iwctl

#列出所有wifi设备
device list
输出: 一般为 wlan0,本次以wlan0为例

#扫描网络
station wlan0 scan

#列出所有可用网络
station wlan0 get-networks

#连接网络(不支持中文wifi名)
station wlan0 connect SSID
#wifi密码并不会显示,保证输入正确回车即可

#连接网络,确保畅通
ping baidu.com

更新系统时间

timedatectl

创建分区

#查看当前硬盘分区情况
lsblk
#或者
fdisk -l

#输出可能为 sda 或者 nvme 硬盘,确定需要安装的硬盘,本文以 nvme 硬盘为例

#使用分区工具 cfdisk、fdisk、parted 等 修改分区表,以 cfdisk 为例
cfdisk /dev/nvme0n1 #本例以1t固态分区为例(财大气粗)
设备 分区类型 分区大小 挂载点 挂载顺序(格式化后挂载)
/dev/nvme0n1p1 Efi System 2G /mnt/boot 2
/dev/nvme0n1p2 Linux filesystem 120G /mnt 1
/dev/nvme0n1p3 Linux home 剩余空间 /mnt/home 3

格式化分区

#根分区和home分区使用ext4文件系统
mkfs.ext4 /dev/nvme0n1p2
mkfs.ext4 /dev/nvme0n1p3

#efi系统分区格式化为fat32
mkfs.fat -F 32 /dev/nvme0n1p1

挂载分区

#挂载根分区到/mnt
mount /dev/nvme0n1p2 /mnt

#创建EFI系统分区挂载点
mkdir /mnt/efi
#挂载EFI系统分区到/mnt/efi
mount /dev/nvme0n1p1 /mnt/efi

#创建home分区挂载点
mkdir /mnt/home
#挂载home分区到/mnt/home
mount /dev/nvme0n1p3 /mnt/home

修改镜像源

#使用vim编辑 /etc/pacman.d/mirrorlist 
vim /etc/pacman.d/mirrorlist
#在文件的最顶端添加 USTC 镜像源以加速下载
Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
#更新镜像源
pacman -Syyu

安装软件

#先安装内核linux-zen、固件linux firmware、基础软件包/软件包组base、base-devel
pacstrap /mnt linux-zen linux-firmware base base-devel

#安装cpu微码(根据cpu二选一)
Intel CPU intel-ucode
Amd CPU amd-ucode
#安装编辑器vim、网络管理器networkmanager(内置dhcp客户端)、dhcp客户端dhcpcd(可选做备用)
#不能同时运行两个dhcp客户端
pacstrap /mnt vim networkmanager dhcpcd amd-ucode

生成fstab文件

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

#复查
cat /mnt/etc/fstab

chroot到新系统

arch-chroot /mnt

设置时区

ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

同步系统时间与硬件时间

hwclock --systohc

本地化设置

#编辑程序运行语言
vim /etc/locale.gen
#取消注释
en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8

#生成locale信息
locale-gen

#系统区域设置
vim /etc/locale.conf
#输入
LANG=en_US.UTF-8

网络设置

创建hostname文件

vim /etc/hostname

#编辑(自己设置一个主机名,我的主机名叫Cardcaptor)
Cardcaptor

本地主机名解析

#编辑hosts
vim /etc/hosts

#输入(中间空行使用tab)
127.0.0.1   localhost
::1             localhost
127.0.1.1   BlackMesa.localdomain BlackMesa

设置root账户密码

passwd root

#输入密码(不显示)

安装引导程序

#先安装引导加载程序grub,启动项管理器efibootmgr
pacman -S Grub efibootmgr

  1.  挂载efi系统分区到/efi
  2. 设置一个启动引导器标识,这将在 /efi/EFI 中创建一个与标识同名的目录来储存 EFI 二进制文件。本例设置为 Arch
  3. 将GRUB EFI 应用 grubx64.efi 安装到 /efi/EFI/Arch,并将其模块安装到 /boot/grub/x86_64-efi/
注意
/boot 是微码包安装CPU微码 initramfs 文件和 mkinitcpio 安装内核与initramfs镜像的默认位置。
grub-install --target=x86_64-efi --efi-directory=/efi --bootloader-id=Arch

生成主配置文件

grub-mkconfig -o /boot/grub/grub.cfg
#之后每次安装或移除一个内核后,都要执行一次该命令来更新grub配置

完成安装并重启

#退出
exit

#取消挂载
umount -R /mnt

#重启
reboot