[Linux] Arch Linux 基本安裝流程

此為純文字介面 Arch Linux 安裝流程分享

(1) 硬體規格
筆電:HP Pavilion 14-bf133TX
內建兩顆硬碟,SSD(加大到240G)跟HDD


(2) 前置作業
首先以EFI模式將Win10灌好,保留大概一半的分割區給Arch Linux
然後至Arch官網下載最新版的Live CD iso檔後用像rufus之類的軟體燒到USB中

(3) 進入正式安裝流程
重開機時選擇USB開機,選USB就進入Live CD環境了

==================================
                          進入Live CD
==================================
root@archiso ~ #  <-目前所在目錄,以下省略不打

[分割硬碟]
cgdisk /dev/sdb # CGI分割工具(也可用cfdisk)
    
[格式化與掛載]
mkfs.btrfs -f /dev/sdb5   # 根目錄(/),格式化成btrfs
mkswap /dev/sdb6          # Swap分區
mount /dev/sdb5 /mnt      # 掛載根目錄(/)
mkdir /mnt/boot           # 建立開機磁區資料夾
mkdir /mnt/home           # 建立家目錄資料夾
mount /dev/sdb2 /mnt/boot # 掛載開機磁區(/boot)
mount /dev/sda1 /mnt/home # 掛載家目錄(/home)
swapon /dev/sdb6          # 掛載Swap分區
free                      # 釋放記憶體

# 確認目前分割與掛載狀況
lsblk -o NAME,FSTYPE,SIZE,PARTLABEL,MOUNTPOINT
-------------------------------------------------
NAME     FSTYPE   SIZE PARTLABEL                    MOUNTPOINT
sda           931.5G                              
└─sda1 exfat  931.5G                              /home
sdb           232.9G                              
├─sdb1 ntfs     499M Basic data partition         
├─sdb2 vfat     100M EFI system partition         /boot
├─sdb3           16M Microsoft reserved partition
├─sdb4 ntfs   115.9G Basic data partition         
├─sdb5 btrfs    110G Arch Linux root partition    /
└─sdb6 swap       2G Linux Swap                   [SWAP]
-------------------------------------------------
[下載與安裝]
wifi-menu                        # 搜尋與選擇wifi網路
cd /etc/pacman.d                # 進入下載鏡像清單資料夾
cp mirrorlist mirrorlist.backup # 備份鏡像清單
# 讓系統測試鏡像速度,按速度排序鏡像,此步驟需要一些時間
rankmirrors -n 6 mirrorlist.backup > mirrorlist
pacstrap /mnt base              # 下載安裝基本套件群組
# 群組明細: https://www.archlinux.org/groups/x86_64/base/
==================================================
             下載安裝中請耐心等候,安裝時間取決於網路速度
==================================================
genfstab -U /mnt >> /mnt/etc/fstab # 建立fstab檔案

[進入新系統]
arch-chroot /mnt # 暫時切換根目錄到正式系統根目錄
==================================================
                        以下在新系統根目錄操作(預先設定)
==================================================
[root@archiso /]#  <-目前所在目錄,以下省略不打

[設定主機名稱與root密碼]
echo 你的主機名稱 > /etc/hostname  # 設定主機名稱
passwd                               # 設定root密碼

[新增使用者]
useradd -m 使用者名稱              # 新增使用者(-m 在Home建立目錄)
passwd 使用者名稱                  # 設定密碼

[安裝常用套件]
pacman -S base-devel               # 安裝常用套件(詳情:https://goo.gl/tU5jzZ)
pacman -S wpa_supplicant dialog    # 安裝Wifi連線所需工具(對筆電來說較方便)
pacman -S btrfs-progs exfat-utils  # 下載btrfs與exFAT相關套件(根目錄還有home需要)

[設定開機管理]
pacman -S refind-efi               # 下載rEFInd套件
refind-install                     # 安裝rEFInd
nano boot/refind_linux.conf        # 編輯開機選單

將前兩行註解掉
-------------------------------------------------
#"Boot with standard options"  "archisobasedir=arch archisolabel=ARCH_xxxxxx"
#"Boot to single-user mode"    "archisobasedir=arch archisolabel=ARCH_xxxxxx single"
"Boot with minimal options"   "root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
-------------------------------------------------

[卸載與重新開機]
exit            # 退回Live CD
cd /            # 跳回根目錄
umount -R /mnt  # 卸載
reboot

# 此時進BIOS調整EFI開機順序,會看到同一顆硬碟中有兩個選項
# 將rEFInd那個調到最上面後儲存離開
https://imgur.com/EKdoFZz

# 重開機後若看到以下畫面表示安裝成功---
https://imgur.com/qmky83U

==================================================
             以下為重開機後進入新系統的操作(需輸入帳號密碼)
==================================================
[root@hostname /]#
mkrlconf --force  # 強制重建boot/refind_linux.conf檔案
                  # 因為在Live CD 環境會出現誤差

重建後結果如下
-------------------------------------------------
"Boot with standard options"  "ro root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
"Boot to single-user mode"    "ro root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx single"
"Boot with minimal options"   "ro root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
-------------------------------------------------


[連線網路]
wifi-menu                  # 搜尋與選擇wifi網路
ping -c 3 www.google.com  # 測試網路


[設定時區]
timedatectl set-timezone Asia/Taipei  # 把時區設定為台北時間
timedatectl set-ntp true              # 開啟網路時間同步
timedatectl set-local-rtc false       # 將硬體時間設定為與UTC相同
hwclock -w                            # 將 Linux 系統時間寫到 RTC 中


[設定終端機預設字型]
#=======================相關路徑=======================
/usr/share/kbd/consolefonts # 預設字型目錄
/usr/share/kbd/unimaps      # 預設Unicode maps 目錄
/usr/share/kbd/consoletrans # 預設Screen Mappings 目錄
/usr/share/fonts            # pacman下載回來的字型所在目錄
#======================================================

nano /etc/vconsole.conf #編輯終端機預設字型設定檔
# 輸入以下內容(不含註解)
-------------------------------------------------
KEYMAP=us      # 預設鍵盤配置
FONT=sun12x22  # 預設終端機字型,這個是內建字型中比較大的,眼睛比較舒服
-------------------------------------------------
reboot # 重開機即可讓設定生效

================================================
以上基本安裝流程完成,每個人硬體規格不同多少會有出入就加減參考吧
至於剩下的中文跟圖形介面安裝待研究完成後再來發表