闲暇时也许会更新吧

0%

Arch Linux 的安装

本文参照 Arch Linux 官方 Wiki ,地址:Installation guide
现在已经提供了与本文环境相搭配的安装脚本,在https://github.com/lengqing-org/arch-install里可以根据README使用。

创建虚拟机(这不是必须的,也可以不一样,实机建议UEFI引导,本文只介绍UEFI引导)

主要就是客户机系统类型的选择,
system

还有就是引导的选择,我这里选用UEFI引导。
UEFI

准备启动盘

下载启动镜像,由于在中国大陆地区,我选择网易163的下载地址:
http://mirrors.163.com/archlinux/iso/
下载好后检查 MD5 值,
然后可以自行制作启动U盘,或者挂载进虚拟机。

开机

start
准备好了
already

联网以及更新系统时间

1
2
dhcpcd
ping -c 4 baidu.com

查看结果显示可以 ping 通,联网成功
network

更新系统时间,没啥输出,不用管

1
timedatectl set-ntp true

分区及挂载分区

列出磁盘

1
fdisk -l

disklist
我这里第一块是 60GiB 的盘,设备是 /dev/sda 。
第二块应该是启动盘,不用管。

对 /dev/sda 进行分区

1
fdisk /dev/sda

创建 GPT 分区表

1
g

创建一个新的分区

1
n

输入分区号,从1开始

1
1

输入起始扇区,默认回车即可
回车
输入 +200M 创建一个 esp 分区

1
+200M

继续创建新分区做根目录分区

1
n

回车
回车
由于没有其它分区,硬盘剩余空间都分配,所以直接回车分配所有空间
回车

查看创建的分区

1
p

可以看到两个分区,分别是 200M 的 sda1 和 59.8G 的 sda2 (都没有格式化)
diskparts

改变 200M 的esp 分区的类型

1
t

选择分区号

1
1

选择分区类型,按L可以列出所有类型,应该序号1是”EFI System”

1
1

esp
保存更改

1
w

格式化 esp 分区和根分区

1
2
mkfs.fat -F32 /dev/sda1
mkfs.ext4 /dev/sda2

挂载根分区

1
mount /dev/sda2 /mnt

挂载 esp 分区

1
2
mkdir /mnt/boot
mount /dev/sda1 /mnt/boot

安装基本系统

选择镜像源
编辑源列表文件

1
nano /etc/pacman.d/mirrorlist

将 China 的那一行挪到最前面(也可以直接在最前面加上 China 的源地址,上面的具有优先权)
找到那一行,光标在最前面的时候直接按下 Ctrl+K ,然后回到第一行按下 Ctrl+U ,手打也行
mirror
然后按下 Ctrl+X ,输入 y ,回车,即可保存

安装基本包( base-devel 不是必须的,可以不加)

1
pacstrap /mnt base linux linux-firmware

base
这个样子就是系统装好了,只不过还不能开机

开机前配置

生成自动挂载分区的 fstab 文件

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

检查是否正确

1
cat /mnt/etc/fstab

fstab
理论上格式应该与我的完全相同,假如格式差别很大的可能就有问题了,也许手动检查 UUID 并创建 fstab 文件是个好主意。

切换到新系统操作

1
arch-chroot /mnt

chroot
如图所示,即为成功

设置时区(我比较靠近上海,便以上海为例)

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

根据硬件时间调整时间( UTC 时间为例)

1
hwclock --systohc

本地化
编辑文件

1
nano /etc/locale.gen

将下面的几行前面的 # 删掉,保存

en_US.UTF-8 UTF-8

zh_CN.UTF-8 UTF-8

zh_TW.UTF-8 UTF-8

接着执行 locale-gen 以生成 locale 讯息:

1
locale-gen

选择英文作为默认语言(暂不推荐中文,以防乱码,等装了字体桌面什么的可以考虑中文)

1
nano /etc/locale.conf

加入以下内容并保存

LANG=en_US.UTF-8

设置主机名

1
nano /etc/hostname

输入你要的主机名并保存

编辑 hosts 文件
加入下面的内容,其中的 arch 替换为你的主机名

127.0.0.1 localhost.localdomain localhost

::1 localhost.localdomain localhost

127.0.1.1 arch.localdomain arch

设置 root 密码

1
passwd

Intel CPU 需要安装的 intel-ucode

1
pacman -S intel-ucode

安装引导

1
pacman -S os-prober grub efibootmgr

部署grub

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

生成配置文件(我这里会出错)

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

报错

warning failed to connect to lvmetad,falling back to device scanning.

编辑 /etc/lvm/lvm.conf 文件,找到 use_lvmetad = 1 将1修改为0
(这一行在很下面,翻半天),保存,重新生成配置文件

重启进入新系统

安装基本上结束了

1
2
exit
reboot

顺便拔掉启动盘
开机就算是进入新系统了,如果不能开机我也不管了,教程到这里结束
正常的开机应该跟我的一样
boot
然后滚更新,最新的,很棒!
update