Arch Linux 安装过程记录二(UEFI+GPT)

Arch Linux是一款简洁、现代、实用、以用户为中心的发行版。 Arch Linux 将简洁定义为:避免任何不必要的添加、修改和复杂增加

Arch Linux 初始安装仅提供命令行环境:用户可以从官方软件仓库成千上万的高质量软件包中进行选择,定制自己的系统。


0x00 选择GPT还是MBR

GUID Partition Table (GPT)是一种更灵活的分区方式。它正在逐步取代Master Boot Record (MBR)系统。GPT相对于诞生于MS-DOS时代的MBR而言,有许多优点。新版的fdisk(MBR)和gdisk(GPT)使得使用GPT或者MBR在可靠性和性能最大化上都非常容易。

在做出选择前,需要考虑如下内容:

  • 如果使用 GRUB legacy 作为bootloader,必须使用MBR。
  • 如果使用传统的BIOS,并且双启动中包含 Windows (无论是32位版还是64位版),必须使用MBR。
  • 如果使用 UEFI 而不是BIOS,并且双启动中包含 Windows 64位版,必须使用GPT。
  • 非常老的机器需要使用 MBR,因为 BIOS 可能不支持 GPT.
  • 如果不属于上述任何一种情况,可以随意选择使用 GPT 还是 MBR。由于 GPT 更先进,建议选择 GPT。
  • 建议在使用 UEFI 的情况下选择 GPT,因为有些 UEFI firmware 不支持从 MBR 启动。

0x01 安装

准备工作
去国内镜像站下载ISO镜像文件,刻录到U盘

启动
关闭计算机,使用U盘启动到Live模式
书写约定:以下以#开头的均为命令

验证能否联网

# ping baidu.com

更新系统时间

# timedatectl set-ntp true

建立硬盘分区

分区方案:EFI/boot分区(500Mib)+根目录+SWAP交换空间+自定义分区

# fdisk -l              查看分区
# fdisk /dev/sda        对sda进行分区
    n    新建分区
    p    新建主分区
    每次分区,一路回车直到Last Sector: +20G,就是分区20G
    w    执行分区操作 
 # fdisk -l             确认分区成功 

格式化分区

# mkfs.fat -F32 /dev/sda1  EFI分区格式化为FAT32格式
# mkfs.ext4 /dev/sda2      根目录格式化为ext4
# mkswap /dev/sda3         格式化交换分区
# swapon /dev/sda3         激活swap分区  

挂载分区

# mount /dev/sda2 /mnt     挂载根目录
# mkdir -p /mnt/boot/EFI   建立efi分区挂载点
# mount /dev/sdb1 /mnt/boot/EFI    挂载EFI分区

更换软件源 加速安装

# mv /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak
# vim /etc/pacman.d/mirrorlist
  Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch 

安装必须的软件包

# pacstrap /mnt base linux linux-firmware

Fstab

用以下命令生成fstab文件 (用-U或-L选项设置UUID 或卷标):

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

Chroot

# arch-chroot /mnt

设置时区

# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
运行hwclock以生成 /etc/adjtime
# hwclock –-systohc 

本地化

取消对应项的注释,设置成该语言

# 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 讯息

# locale-gen
# nano /etc/locale.conf
  LANG=en_US.UTF-8 输入保存 

创建hostname文件

# nano /etc/hostname
  输入主机名并保存

创建hosts文件

# nano /etc/hosts
127.0.0.1       localhost
::1             localhost
127.0.1.1       主机名.localdomain 主机名

配置网络

# pacman -S dhcpcd
# systemctl enable dhcpcd

安装intel-ucode

# pacman -S intel-ucode

安装引导程序

# pacman -S grub efibootmgr
# grub-install --target=x86_64-efi --efi-directory=/boot/EFI
# grub-mkconfig -o /boot/grub/grub.cfg

清除软件包缓存

# pacman -Scc

设置Root 密码

# passwd

启动系统

输入 exit 或按 Ctrl+D 退出 chroot 环境
手动卸载被挂载的分区
# umount -R /mnt
# reboot