U盘引导进入系统之后停止reflector服务 禁止自动更新服务器列表

systemctl stop reflector.service

连接网络

有线连接 若是连接到已经有网的路由器可以自动联网

如无法连接上网络可尝试使用dhcpcd命令

无线连接(WIFI)

iwctl

列出无线网卡设备

device list 

wlan0网卡扫描网络

station wlan0 scan

列出网络

station wlan0 get-networks

连接网络网络SSID不支持中文

station wlan0 connect 无线网名字

输入密码,连接成功后使用exit或者quit

同步网络时间

timedatectl set-ntp true

修改软件源

把中国的服务器排在前列

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 

刷新软件包

pacman -Sy

安装ssh远程软件

pacman -S openssh

启用sshd服务

systemctl start sshd

passwd设置当前root账户的密码

ip a查看ip地址

局域网内使用其他设备连接SSH操作更方便

磁盘分区

lsblk显示当前磁盘和分区情况

cfdisk /dev/nvme0n1

系统格式可使用Btrfs或者EXT4

首先创建 Swap 分区。选中 Free space > 再选中操作 [New] > 然后按下回车 Enter 以新建 swap 分区(类似 Windows 的交换文件)

我们再只需要一个分区即可(因为使用 Btrfs 文件系统,所以根目录和用户主目录在一个分区上),所以类似的:选中 Free space > 再选中操作 [New] > 然后按下回车 Enter 以新建分区

分区类型默认即可,无需更改。接下来选中操作 [Write] 并回车 Enter > 输入 yes 并回车 Enter 确认分区操作

选中操作 [Quit] 并回车 Enter 以退出 cfdisk 分区工具

EFI引导分区可使用Windows的ESP分区。如没有可自行创建300MB的EFI引导分区

格式化 Swap 分区

mkswap /dev/nvme0n1px

格式化 Btrfs 分区或者EXT4(二选一)

mkfs.btrfs -L Arch /dev/nvme0n1px
mkfs.ext4 /dev/nvme0n1px

挂载分区

Btrfs文件格式

Btrfs 分区挂载到 /mnt

mount -t btrfs -o compress=zstd /dev/nvme0n1px /mnt

创建 Btrfs 子卷

通过以下命令创建两个 Btrfs 子卷,之后将分别挂载到 / 根目录和 /home 用户主目录:

btrfs subvolume create /mnt/@
btrfs subvolume create /mnt/@home

复查子卷情况

btrfs subvolume list -p /mnt

子卷创建好后,我们需要将 /mnt 卸载掉,以挂载子卷

umount /mnt

挂载/目录

mount -t btrfs -o subvol=/@,compress=zstd /dev/nvme0n1px /mnt

创建home目录

mkdir /mnt/home

挂载/home目录

mount -t btrfs -o subvol=/@home,compress=zstd /dev/nvme0n1px /mnt/home

创建 /boot/efi 目录

mkdir -p /mnt/boot/efi 

挂载 /boot/efi 目录

mount /dev/nvme0n1px /mnt/boot/efi

EXT4文件格式

mount /dev/nvme0n1px /mnt

创建 /boot/efi 目录

mkdir -p /mnt/boot/efi 

挂载 /boot/efi 目录(使用Windows系统ESP分区)

mount /dev/nvme0n1px /mnt/boot/efi

挂载交换分区

swapon /dev/nvme0n1px

安装系统

/mnt目录里安装系统

其中最基础的四个包是base base-devel linux linux-firmware

pacstrap /mnt base base-devel linux linux-firmware dhcpcd iwd vim sudo bash-completion nano net-tools openssh man git wget zsh fish

生成 fstab 文件

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

复查一下 /mnt/etc/fstab 确保没有错误:

cat /mnt/etc/fstab

change root

使用以下命令把系统环境切换到新系统下:

arch-chroot /mnt

设置主机名与时区

首先在 /etc/hostname 设置主机名:

nano /etc/hostname

然后在 /etc/hosts 设置与其匹配的条目:

127.0.0.1       localhost
::1             localhost
127.0.1.1       myarch.localdomain    myarch

随后设置时区,在 /etc/localtime 下用 /usr 中合适的时区创建符号链接:

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

硬件时间设置

hwclock --systohc

设置 Locale

Locale 决定了软件使用的语言、书写习惯和字符集。

编辑 /etc/locale.gen,去掉 en_US.UTF-8 UTF-8 以及 zh_CN.UTF-8 UTF-8 行前的注释符号(#):

nano /etc/locale.gen

然后使用如下命令生成 locale

locale-gen

/etc/locale.conf 输入内容:

echo 'LANG=en_US.UTF-8'  > /etc/locale.conf

为 root 用户设置密码

passwd root

开启 32 位支持库与 Arch Linux 中文社区仓库(archlinuxcn)

nano /etc/pacman.conf

ctrl+w 搜索Color注意大小写 删除#号
系统报错会彩色显示 方便用户排查

[multilib]这两行前面的#号删除

再手动添加[archlinuxcn]
我这里以中科大和网易开源镜像站为例
其他地址 如清华 阿里云 或者你所在的高校有archlinuxcn源 可以自行添加

[archlinuxcn]
Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch

官方源

[archlinuxcn]
Server = https://repo.archlinuxcn.org/$arch

添加非 root 用户

新建用户名arch 可自行更改用户名

useradd -m -G wheel -s /bin/bash arch

设置arch用户名的密码

passwd arch

编辑arch用户的权限

EDITOR=nano visudo

ctrl+w搜索%wheel

找到# %wheel ALL=(ALL:ALL)ALL

删除前面的#号

安装CPU微码和引导软件

通过以下命令安装对应芯片制造商的微码:

intel-ucode # Intel
amd-ucode # AMD
os-prober #查找已安装的操作系统 
pacman -S intel-ucode grub efibootmgr os-prober

安装 GRUB 到 EFI 分区:

grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=Arch

接下来 编辑 /etc/default/grub 文件:

nano /etc/default/grub

进行如下修改:

  • 去掉 GRUB_CMDLINE_LINUX_DEFAULT 一行中最后的 quiet 参数
  • loglevel 的数值从 3 改成 5。这样是为了后续如果出现系统错误,方便排错
  • 加入 nowatchdog 参数,这可以显著提高开关机速度
  • 为了引导 win10,则还需要添加新的一行 GRUB_DISABLE_OS_PROBER=false
# GRUB boot loader configuration

GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Arch"
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=5 nowatchdog"
GRUB_CMDLINE_LINUX=""
GRUB_DISABLE_OS_PROBER=false
...

最后生成 GRUB 所需的配置文件:

grub-mkconfig -o /boot/grub/grub.cfg

如遇到报错或无法引导Windows分区可使用下面的命令

sudo LANG=C grub-mkconfig -o /boot/grub/grub.cfg

安装KDE桌面 字体 浏览器等软件包

pacman -S plasma-meta konsole dolphin # plasma-meta 元软件包、konsole 终端模拟器和 dolphin 文件管理器
pacman -S ntfs-3g      **可以读取ntfs格式磁盘 **
pacman -S os-prober   **查找已安装的操作系统 **

中文字体 这里如果不安装 之后设置语言的时候都是框框不好辨认

pacman -S adobe-source-han-serif-cn-fonts adobe-source-han-sans-cn-fonts wqy-zenhei wqy-microhei noto-fonts-cjk noto-fonts-emoji noto-fonts-extra ttf-dejavu  

安装火狐浏览器等软件

pacman -S firefox ark gwenview packagekit-qt5 packagekit appstream-qt appstream man neofetch net-tools networkmanager openssh git wget pamac

开机启动 登陆管理器 网络管理 SSH

systemctl enable NetworkManager sddm sshd

立即启动登陆管理器

systemctl start sddm

安装完成

卸载本机的/mnt目录

umount -R /mnt

重启

reboot

输入密码登录进桌面环境

安装AUR助手 前提是开启AUR中国源

sudo pacman -S archlinuxcn-keyring && sudo pacman -S yay

启动蓝牙(若有)

sudo pacman -S  bluez bluez-utils 
sudo systemctl enable --now bluetooth

安装音频驱动

sudo pacman -S alsa-utils pulseaudio pulseaudio-alsa pulseaudio-bluetooth

安装显卡驱动

Intel 核芯显卡

sudo pacman -S mesa lib32-mesa vulkan-intel lib32-vulkan-intel

不建议安装 xf86-video-intel,而应使用 Xorg 的 modesetting 驱动(也就是什么都不用装的意思)

注意,只有 Intel HD 4000 及以上的核显才支持 vulkan。

不建议安装 xf86-video-intel,而应使用 Xorg 的 modesetting 驱动(也就是什么都不用装的意思)

注意,只有 Intel HD 4000 及以上的核显才支持 vulkan。

题外如果太久没更新 密钥环失效

sudo pacman -Sy archlinux-keyring
pacman-key --refresh-keys

题外

更换LTS内核

pacman -S linux-lts linux-lts-headers
pacman -Rsdd linux
grub-mkconfig -o /boot/grub/grub.cfg

开启BBR

echo "tcp_bbr" > /etc/modules-load.d/modules.conf
echo "net.core.default_qdisc=fq" > /etc/sysctl.d/bbr.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.d/bbr.conf
sysctl --system

校验

sysctl net.ipv4.tcp_congestion_control

安装cron定时任务

pacman -S cronie
默认 editor 为 vi, 在 /etc/environment 下配置环境变量
EDITOR=nano

清理系统日志文件 保留的最新日志文件大小为100M

journalctl --vacuum-size=100M

设置系统日志只保留100M

nano /etc/systemd/journald.conf

修改#SystemMaxUse=SystemMaxUse=100M

重新加载 systemd-journald 服务以应用更改

systemctl restart systemd-journald
Last modification:November 14, 2023
如果觉得我的文章对你有用,麻烦点个赞吧 !