概述
自用的简明ArchLinux安装教程, 主要参考官方Guide, 部分组件按照自己的喜好来
- 引导管理采用grub2
- 网络管理采用systemd-networkd
- 文件系统用的btrfs
启动ArchISO
略 (这都不会还是立刻右上角吧
网络配置
ArchLinux的安装需要网络, 如果是DHCP的动态网络应该默认就配置好了.
如果是静态配置, 那么将需要手动进行配置, 下面将使用systemd-networkd作为网络管理器, 网络配置采用Arch官方推荐的iproute2而不是经典的net-tools.
动态网络配置
'/etc/systemd/network/$interface.network'
[Match]
Name=$interface
[Network]
DHCP=yes
systemctl start systemd-networkd.service systemd-resolved.service
静态网络配置
确认网卡名称并启动网卡(如果没有启动的话)
ip addr
ip link set $interface up
配置systemd-networkd
'/etc/systemd/network/$interface.network'
[Match]
Name=$interface
[Network]
Address=$address/$prefix
Gateway=$gateway
DNS=$dns_server
systemctl start systemd-networkd.service systemd-resolved.service
手动配置静态IP, 路由和DNS
ip address add $address/$prefix broadcast + dev $interface
ip route add default via $gateway dev $interface
echo 'nameserver $dns_server' >> /etc/resolv.conf
检测网络是否联通
ping ip.cn
时间和地区设置
设置正确的时区
timedatectl set-timezone Asia/Shanghai
启用NTP服务(TLS连接需要正确的时间)
timedatectl set-ntp true
timedatectl status
设置正确的Locales
locale-gen
locale | sed 's/=.*/="en_US.UTF-8"/g' > /etc/locale.conf
磁盘分区
- 确定DiskName
fdisk -l
- 磁盘分区
我一般习惯会分一个swap
, 因为使用btrfs所以还要再分一个根卷/
, 如果使用EFI则需要再分一个 /efi
.
fdisk $disk
o: create DOS partition table
g: create GPT partition table
n: add a new partition
d: delete a partition
t: change a partition type
p: print the partition table
w: write table to disk and exit
如果使用的是传统BIOS的话, 需要使用t命令将启动分区的类型设置为BIOS boot(4).
- 格式化分区
mkfs.ext4 $partition # /
mkswap $partition && swapon $partition # swap
mkfs.btrfs -L $label $partition # / (btrfs)
mkfs.vfat $partition # /efi
- 挂载分区
mount $partition /mnt
mkdir /mnt/efi && mount $partition /mnt/efi # EFI分区
解压基本系统
- 修改软件源
/etc/pacman.d/mirrorlist
- 解压基本系统和安装基本包
pacstrap /mnt grub base linux linux-firmware btrfs-progs sudo openssh
pacstrap /mnt vim wget zsh git # 其他的一些基本包
- 生成fstab
genfstab -U /mnt >> /mnt/etc/fstab
- 复制网络配置
cp /etc/systemd/network/$interface.network /mnt/etc/systemd/network/$interface.network
- Chroot
arch-chroot /mnt
配置基本系统
- 配置网络并默认启动SSH
systemctl enable systemd-networkd.service
systemctl enable systemd-resolved.service
systemctl enable sshd.service
- 配置Root密码
passwd
- 添加新用户并配置Sudo
useradd -m -G root $user && passwd $user
cat '%sudoers ALL=(ALL) ALL' >> /etc/sudoers
- 生成Initramfs
mkinitcpio -P
- 配置grub
grub-install --target=i386-pc /dev/sdX
grub-mkconfig -o /boot/grub/grub.cfg
至此, 重启就可以进入到Arch的系统里了
额外的系统配置
- 设置时区和硬件时钟
ln -sf /usr/share/zoneinfo/$Region/$City /etc/localtime
hwclock --systohc
- 配置Locale
/etc/locale.gen
locale-gen
locale | sed 's/=.*/="en_US.UTF-8"/g' > /etc/locale.conf
- 配置主机名和Hosts
echo $hostname > /etc/hostname
/etc/hosts
127.0.0.1 localhost
::1 localhost
尾声
这样就配置好了ArchLinux的基本系统, 其他的图形配置可以重启以后在SSH里慢慢配置.
还不快抢沙发