

Share Dialog
Share Dialog

Subscribe to bgeer

Subscribe to bgeer
https://archlinux.org/download/
请自行前往Arch官网下载镜像,并使用 Rufus 制作启动盘。
注意分区类型为 GPT 而非默认的 MBR,写入方式为推荐的 ISO。

Windows 默认使用的时间表示标准为 localtime,Arch Linux 默认为 UTC。在此修改 Windows 的为 UTC 以保持统一,Windows 11 中执行如下命令。
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f
重新启动 Windows 11 生效。
启动盘插入电脑,重启电脑,同时不停按 DEL 进入 BIOS,确认以下几点:
引导模式为 UEFI;
禁用 Secure Boot;
如果硬盘是 NVMe 的,硬盘的启动方式需为 AHCI。
启动项选择界面,键盘上下键选择带“EFI”“USB”字样的,F10 保存退出 BIOS。
执行后输入两次密码就可以了 (输入密码不显示)
ssh root@ip
以上步骤可省略,直接在本机运行也可,只是要手动敲代码而已
要验证引导模式,执行下列命令列出 efivars 目录。
ls /sys/firmware/efi/efivars
如果命令结果显示了目录且没有报告错误,则系统以 UEFI 模式引导。
rfkill unblock wifi #解锁无线网卡
iwctl #执行iwctl命令,进入交互式命令行
device list #列出设备名,比如无线网卡看到叫 wlan0
station wlan0 scan #扫描网络
station wlan0 get-networks #列出网络 比如想连接YOUR-WIRELESS-NAME这个无线
station wlan0 connect YOUR-WIRELESS-NAME #进行连接 输入密码即可
exit #成功后exit退出
使用 timedatectl 确保系统时间是准确的:
timedatectl set-ntp true #将系统时间与网络时间进行同步
timedatectl status #检查服务状态
查看分区情况:
我的硬盘名字为 nvme1n1,使用 cfdisk 进行管理:
cfdisk /dev/nvme1n1
找到安装arch的空闲空间,选择 New,首先是给根分区分配 32GB

接着选择 New,给交换分区分配空间(1~32G按需分配,我这里把多的8.9G分配给了swap),选择 Type,设定分区类型为 Linux swap

选择剩下的 220GB,选择 New,给家分区分配剩下的空间,选择 Type,设定分区类型为 Linux home。

选择 Write,输入 yes 回车:(write前请确保分区无误,该步骤会删除数据)

选择 Quit 退出。
fdisk -l #分区结束后, 复查磁盘情况,会发现多了3个新分区
mkfs.ext4 /dev/nvme1n1p5 #将根分区格式化为 ext4 格式
mkswap /dev/nvme1n1p6 #将交换分区格式化
mkfs.ext4 /dev/nvme1n1p7 #将家分区格式化为 ext4 格式
mount /dev/nvme1n1p5 /mnt #将根分区所对应硬盘卷挂载到/mnt
swapon /dev/nvme1n1p6 #激活交换分区
mkdir /mnt/home #建立目录 home
mount /dev/nvme1n1p7 /mnt/home #将家分区所对应硬盘卷挂载到目录 home
fdisk -l #查看硬盘,找到 EFI System 分区所对应硬盘卷为 nvme1n1p1
mkdir /mnt/boot #建立目录 boot
mount /dev/nvme1n1p1 /mnt/boot #将 EFI System 分区所对应硬盘卷挂载目录 boot
挂载是有顺序的,先挂载根分区,再挂载 EFI 分区
使用 reflector 来获取速度最快的 6 个镜像,并将地址保存至目录 mirrorlist。
reflector -c China -a 6 --sort rate --save /etc/pacman.d/mirrorlist
reflector 会为你选择速度合适的镜像源 ,但其结果并不准确,同时会清空配置文件中的内容。
可手动配置,编辑镜像源,选择ustc等国内源提到最前面。
vim /etc/pacman.d/mirrorlist
更新应用软件库(源),检查下载速度
pacman -Syy
base/base-devel 软件包(base-devel在AUR包的安装是必须的)、 Linux 内核(可选linux 和 linux-headers)、常规硬件的固件、intel CPU 驱动
vim编辑器、bash补全工具、fish替代bash、networkmanager网络管理、wqy-zenhei中文字体,避免安装界面后乱码、ssh工具
pacstrap /mnt base base-devel linux-zen linux-zen-headers linux-firmware intel-ucode
pacstrap /mnt vim bash-completion fish networkmanager wqy-zenhei openssh
出现如下报错是,之前安装过arch 去/mnt/boot下删除intel-ucode.img即可
error: failed to commit transaction (conflicting files)
intel-ucode: /mnt/boot/intel-ucode.img exists in filesystem
Errors occurred, no packages were upgraded.
==> ERROR: Failed to install packages to new root
用以下命令生成文件 fstab(用-U设置 UUID):
genfstab -U /mnt >> /mnt/etc/fstab
检查生成的文件 fstab:
cat /mnt/etc/fstab
切换到装好的系统:
arch-chroot /mnt
设置时区,在 /etc/localtime 下用/usr 中合适的时区创建符号连接。如下设置上海时区。
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
同步硬件时钟:
hwclock --systohc
编辑文件 locale.gen:
vim /etc/locale.gen
取消掉 en_US.UTF-8 UTF-8 和 zh_CN.UTF-8 UTF-8 前的注释(# 光标移动到当前行“#”符号上 按x删除)。
生成 locale 信息:
locale-gen
创建 locale.conf(5) 文件,设定 LANG 变量:
echo 'LANG=en_US.UTF-8' > /etc/locale.conf
创建文件 hostname,自定义设定主机名
vim /etc/hostname
ArchOS #加入你想为主机取的主机名
修改文件 hosts:
vim /etc/hosts
增加行如下(中间的空白用 tab 而非空格,ArchOS 替换为你自己的主机名)。
# Static table lookup for hostnames.
# See hosts(5) for details.
127.0.0.1 localhost
::1 localhost
127.0.0.1 ArchOS.localdomain ArchOS
vim /etc/resolv.conf
删除已有条目,并将如下内容加入其中 (待测试)
nameserver 8.8.8.8
nameserver 2001:4860:4860::8888
nameserver 8.8.4.4
nameserver 2001:4860:4860::8844
固化文件
chattr +i /etc/resolv.conf
输入并确认密码(密码没有回显,输完直接回车即可)。
安装基本软件包,使用 GRUB 为启动器:grub是启动引导器,efibootmgr被 grub 脚本用来将启动项写入 NVRAM,os-prober用来识别其他操作系统
pacman -S grub efibootmgr os-prober mtools dosfstools ntfs-3g reflector git sudo
编辑文件 grub:
vim /etc/default/grub
修改GRUB_DEFAULT=2,默认windows开机
修改GRUB_TIMEOUT=10,默认等待10秒开机
修改GRUB_DISTRIBUTOR="ArchOS",默认名称改为ArchOS
去掉GRUB_CMDLINE_LINUX_DEFAULT一行中最后的 quiet 参数,同时把 log level 的数值从 3 改成 5。这样是为了后续如果出现系统错误,方便排错。同时在同一行加入 nowatchdog 参数,这可以显著提高开关机速度。
最后一行,取消掉 GRUB_DISABLE_OS_PROBER=false 前的注释(#)。
再执行以下命令:出现Installation finished. No error reported.即可
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=Arch

生成 grub.cfg:第一次执行并不会找到Windows Boot,重启之后再次执行即可找到
grub-mkconfig -o /boot/grub/grub.cfg

exit #退回安装环境
umount -R /mnt #取消挂载
reboot #重启
启动网络服务:有线直接连接
systemctl enable --now NetworkManager
设置 WiFi:
创建用户xxx,创建家目录,加入 wheel 组, wheel附加组可sudo,以root用户执行命令 -m同时创建用户家目录 ,指定 shell:
useradd -m -G wheel -s /bin/fish xxx
为用户 ql 设定密码:
编辑文件 sudoers:
EDITOR=vim visudo
取消掉%wheel ALL=(ALL:ALL) NOPASSWD: ALL前的注释(#)。
基本安装到处
https://archlinux.org/download/
请自行前往Arch官网下载镜像,并使用 Rufus 制作启动盘。
注意分区类型为 GPT 而非默认的 MBR,写入方式为推荐的 ISO。

Windows 默认使用的时间表示标准为 localtime,Arch Linux 默认为 UTC。在此修改 Windows 的为 UTC 以保持统一,Windows 11 中执行如下命令。
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f
重新启动 Windows 11 生效。
启动盘插入电脑,重启电脑,同时不停按 DEL 进入 BIOS,确认以下几点:
引导模式为 UEFI;
禁用 Secure Boot;
如果硬盘是 NVMe 的,硬盘的启动方式需为 AHCI。
启动项选择界面,键盘上下键选择带“EFI”“USB”字样的,F10 保存退出 BIOS。
执行后输入两次密码就可以了 (输入密码不显示)
ssh root@ip
以上步骤可省略,直接在本机运行也可,只是要手动敲代码而已
要验证引导模式,执行下列命令列出 efivars 目录。
ls /sys/firmware/efi/efivars
如果命令结果显示了目录且没有报告错误,则系统以 UEFI 模式引导。
rfkill unblock wifi #解锁无线网卡
iwctl #执行iwctl命令,进入交互式命令行
device list #列出设备名,比如无线网卡看到叫 wlan0
station wlan0 scan #扫描网络
station wlan0 get-networks #列出网络 比如想连接YOUR-WIRELESS-NAME这个无线
station wlan0 connect YOUR-WIRELESS-NAME #进行连接 输入密码即可
exit #成功后exit退出
使用 timedatectl 确保系统时间是准确的:
timedatectl set-ntp true #将系统时间与网络时间进行同步
timedatectl status #检查服务状态
查看分区情况:
我的硬盘名字为 nvme1n1,使用 cfdisk 进行管理:
cfdisk /dev/nvme1n1
找到安装arch的空闲空间,选择 New,首先是给根分区分配 32GB

接着选择 New,给交换分区分配空间(1~32G按需分配,我这里把多的8.9G分配给了swap),选择 Type,设定分区类型为 Linux swap

选择剩下的 220GB,选择 New,给家分区分配剩下的空间,选择 Type,设定分区类型为 Linux home。

选择 Write,输入 yes 回车:(write前请确保分区无误,该步骤会删除数据)

选择 Quit 退出。
fdisk -l #分区结束后, 复查磁盘情况,会发现多了3个新分区
mkfs.ext4 /dev/nvme1n1p5 #将根分区格式化为 ext4 格式
mkswap /dev/nvme1n1p6 #将交换分区格式化
mkfs.ext4 /dev/nvme1n1p7 #将家分区格式化为 ext4 格式
mount /dev/nvme1n1p5 /mnt #将根分区所对应硬盘卷挂载到/mnt
swapon /dev/nvme1n1p6 #激活交换分区
mkdir /mnt/home #建立目录 home
mount /dev/nvme1n1p7 /mnt/home #将家分区所对应硬盘卷挂载到目录 home
fdisk -l #查看硬盘,找到 EFI System 分区所对应硬盘卷为 nvme1n1p1
mkdir /mnt/boot #建立目录 boot
mount /dev/nvme1n1p1 /mnt/boot #将 EFI System 分区所对应硬盘卷挂载目录 boot
挂载是有顺序的,先挂载根分区,再挂载 EFI 分区
使用 reflector 来获取速度最快的 6 个镜像,并将地址保存至目录 mirrorlist。
reflector -c China -a 6 --sort rate --save /etc/pacman.d/mirrorlist
reflector 会为你选择速度合适的镜像源 ,但其结果并不准确,同时会清空配置文件中的内容。
可手动配置,编辑镜像源,选择ustc等国内源提到最前面。
vim /etc/pacman.d/mirrorlist
更新应用软件库(源),检查下载速度
pacman -Syy
base/base-devel 软件包(base-devel在AUR包的安装是必须的)、 Linux 内核(可选linux 和 linux-headers)、常规硬件的固件、intel CPU 驱动
vim编辑器、bash补全工具、fish替代bash、networkmanager网络管理、wqy-zenhei中文字体,避免安装界面后乱码、ssh工具
pacstrap /mnt base base-devel linux-zen linux-zen-headers linux-firmware intel-ucode
pacstrap /mnt vim bash-completion fish networkmanager wqy-zenhei openssh
出现如下报错是,之前安装过arch 去/mnt/boot下删除intel-ucode.img即可
error: failed to commit transaction (conflicting files)
intel-ucode: /mnt/boot/intel-ucode.img exists in filesystem
Errors occurred, no packages were upgraded.
==> ERROR: Failed to install packages to new root
用以下命令生成文件 fstab(用-U设置 UUID):
genfstab -U /mnt >> /mnt/etc/fstab
检查生成的文件 fstab:
cat /mnt/etc/fstab
切换到装好的系统:
arch-chroot /mnt
设置时区,在 /etc/localtime 下用/usr 中合适的时区创建符号连接。如下设置上海时区。
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
同步硬件时钟:
hwclock --systohc
编辑文件 locale.gen:
vim /etc/locale.gen
取消掉 en_US.UTF-8 UTF-8 和 zh_CN.UTF-8 UTF-8 前的注释(# 光标移动到当前行“#”符号上 按x删除)。
生成 locale 信息:
locale-gen
创建 locale.conf(5) 文件,设定 LANG 变量:
echo 'LANG=en_US.UTF-8' > /etc/locale.conf
创建文件 hostname,自定义设定主机名
vim /etc/hostname
ArchOS #加入你想为主机取的主机名
修改文件 hosts:
vim /etc/hosts
增加行如下(中间的空白用 tab 而非空格,ArchOS 替换为你自己的主机名)。
# Static table lookup for hostnames.
# See hosts(5) for details.
127.0.0.1 localhost
::1 localhost
127.0.0.1 ArchOS.localdomain ArchOS
vim /etc/resolv.conf
删除已有条目,并将如下内容加入其中 (待测试)
nameserver 8.8.8.8
nameserver 2001:4860:4860::8888
nameserver 8.8.4.4
nameserver 2001:4860:4860::8844
固化文件
chattr +i /etc/resolv.conf
输入并确认密码(密码没有回显,输完直接回车即可)。
安装基本软件包,使用 GRUB 为启动器:grub是启动引导器,efibootmgr被 grub 脚本用来将启动项写入 NVRAM,os-prober用来识别其他操作系统
pacman -S grub efibootmgr os-prober mtools dosfstools ntfs-3g reflector git sudo
编辑文件 grub:
vim /etc/default/grub
修改GRUB_DEFAULT=2,默认windows开机
修改GRUB_TIMEOUT=10,默认等待10秒开机
修改GRUB_DISTRIBUTOR="ArchOS",默认名称改为ArchOS
去掉GRUB_CMDLINE_LINUX_DEFAULT一行中最后的 quiet 参数,同时把 log level 的数值从 3 改成 5。这样是为了后续如果出现系统错误,方便排错。同时在同一行加入 nowatchdog 参数,这可以显著提高开关机速度。
最后一行,取消掉 GRUB_DISABLE_OS_PROBER=false 前的注释(#)。
再执行以下命令:出现Installation finished. No error reported.即可
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=Arch

生成 grub.cfg:第一次执行并不会找到Windows Boot,重启之后再次执行即可找到
grub-mkconfig -o /boot/grub/grub.cfg

exit #退回安装环境
umount -R /mnt #取消挂载
reboot #重启
启动网络服务:有线直接连接
systemctl enable --now NetworkManager
设置 WiFi:
创建用户xxx,创建家目录,加入 wheel 组, wheel附加组可sudo,以root用户执行命令 -m同时创建用户家目录 ,指定 shell:
useradd -m -G wheel -s /bin/fish xxx
为用户 ql 设定密码:
编辑文件 sudoers:
EDITOR=vim visudo
取消掉%wheel ALL=(ALL:ALL) NOPASSWD: ALL前的注释(#)。
基本安装到处
<100 subscribers
<100 subscribers
No activity yet