連接網絡
確認網絡接口
ip link
A. 使用有線 Ethernet
正常情況下,使用有線網絡無需任何操作便以自動透過 DHCP 動態分配了 IP 地址 和 DNS 伺服器地址。
用 ping
檢查網絡連接
ping www.google.com
B. 使用無線 Wi-Fi
Arch Linux wifi 推薦使用 iwctl
(軟件包為 iwd,Live CD 上是默認安裝並啟動的)
我以前是用 wifi-menu,但在 2020 年 7 月,ArchISO 拿掉了 netctl (wifi-menu 的軟件包),也讓 iwctl 取代了的 wifi-menu。
因為 iwctl 更好用啦。
1.進入交互模式 :
$ iwctl
2.列出所有 WiFi 設備,查看自己的網絡設備名稱
[iwd]# device list
我的無線網卡名稱叫 wlan0
3.掃描網絡
[iwd]# station wlan0 scan
4.列出可連連接的網絡
[iwd]# station wlan0 get-networks
5.連接,SSID 改成找到的 Wifi 名稱
[iwd]# station wlan0 connect SSID
6.顯示連線狀態,見到 State 是 connected 的話基本沒問題
[iwd]# station wlan0 show
7.測試連線
[iwd]# exit
ping www.google.com
建立硬盘分區
由於我是用 UEFI 啟動,所以按照下面指引分割
UEFI with GPT
掛載點 | 分割區 | 分割區類型 | 大小 |
---|---|---|---|
/mnt/efi | /dev/efi_system_partition | EFI system partition | 1001 MiB |
/mnt | /dev/root_partition | Linux x86-64 root (/) | 40 GiB |
[SWAP] | /dev/swap_partition | Linux swap | 10 GiB |
/mnt/home | /dev/home_partition | Linux x86-64 home (/home) | 剩下的所有空間 |
使用 parted 進行分區 (UEFI/GPT 示範)
其實還有很多分割的工具如 fdisk 和 gdisk。
如果有好幾顆硬碟,我一般會習慣先用 fdisk -l
看看我要硬式化的硬碟名稱
1.查看所有硬碟狀態
$ fdisk -l
Disk /dev/sdb: 465.76 GiB, 500107862016 bytes, 976773168 sectors
Disk model: ST9500325AS
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 08B7163A-5858-9090-8081-828310111213
像我就是要安裝到第二顆 SSD 上,名稱是 /dev/sdb
2.進入 /dev/sdb 的交互模式。print 是查看分區、help 是查看可用指令、quit 是退出 parted 的交互模式。
parted /dev/sdb
(parted) print
(parted) help
(parted) quit
3.為 UEFI 系統創建 GPT 分區表
(parted) mklabel gpt
4.按上述表格分割,先建立第一個 EFI 分區。如果是和Windows雙系統啟動,此分區已經存在,不要重新創建
(parted) mkpart "EFI system partition" fat32 1MiB 1001MiB
(parted) set 1 esp on
5.按上述表格分割,建立餘下分區:
(parted) mkpart "root partition" ext4 1001MiB 40GiB
(parted) mkpart "swap partition" linux-swap 40GiB 50GiB
(parted) mkpart "home partition" ext4 50GiB 100%
格式化分區
mkfs.vfat /dev/sdb1 #(EFI 分區)
mkfs.ext4 /dev/sdb2 #(根目錄分區)
mkfs.ext4 /dev/sdb4 #(家目錄分區)
mkswap /dev/sdb3 #(swap 分區)
掛載分區
1.掛載根目錄
# mount /dev/sdb2 /mnt
2.建立 /mnt/efi 目錄,並掛載
# mkdir /mnt/efi
# mount /dev/sdb1 /mnt/efi
3.建立家目錄,並掛載
# mkdir /mnt/home
# mount /dev/sdb4 /mnt/home
4.啟用 swap 分區
# swapon /dev/sdb3(交換空間分區)
正式安裝
確認鏡像文件列表
這文件可定義所下載的軟件包來自哪個鏡像源。用 reflector 可按照連線速度修改鏡像列表。不過在 Live CD 上默認是已經排序好,所以可以不用理會它,看一眼就好。
vim /etc/pacman.d/mirrorlist
安裝
安裝必要的系統軟件包,包括 base 和 base-devel 軟件包、Linux 內核和常規硬件的韌體,我順便把我常用的 vim 也一拼裝進去。(當然這裡可以按自己喜好更少化)
pacstrap /mnt base base-devel linux linux-firmware vim
對的,其實安裝 Arch Linux 實際上就只有這麼一句命令就完成。
配置系统
生成 fstab 文件
# genfstab -U /mnt >> /mnt/etc/fstab
這個十分重要,關乎到系統能不能認出掛載好的分區,最好 vim /mnt/etc/fstab
看一眼 :
# Static information about the filesystems.
# See fstab(5) for details.
# <file system> <dir> <type> <options> <dump> <pass>
# /dev/sdb2
UUID=0e21e936-5360-49b0-8b68-b9cd48be73ee / ext4 rw,relatime 0 1
# /dev/sdb1
UUID=C1B5-CE8B /efi vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed
,utf8,errors=remount-ro 0 2
# /dev/sdb4
UUID=416f2f7d-8743-4159-a9a2-b6fc35d95139 /home ext4 rw,relatime 0 2
# /dev/sdb3
UUID=e090651b-e2d7-4ef7-b070-57ed8e5452e8 none swap defaults 0 0
可以看到我建立的 4 個分區都在
Chroot
Change root 到新安裝的系統,以後原系統故障都可以使用這方法進入原系統
# arch-chroot /mnt /bin/bash
# df -Th #看看分區大小是否正確
更換密碼
# passwd
時區
查看時間與時區
date
或
timedatectl
設置時區
ln -sf /usr/share/zoneinfo/Asia/Macau /etc/localtime
本地化
编輯/etc/locale.gen
,取消下面註解
en_US.UTF-8 UTF-8
zh_TW.UTF-8 UTF-8
生成 locale 信息
locale-gen
新增 /etc/locale.conf
文件並加入以下內容
LANG=en_US.UTF-8
查看 locale 設定
$ locale
LANG=en_US.UTF-8
LC_CTYPE=zh_TW.UTF-8
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
網絡配置
創建 hostname 文件
編輯 /etc/hostname
並加入:
MyArchLinux
隨意命名,這會是以後主機的名稱
安裝網絡工具
由於 base 軟件包不含任何網絡管理工具,因此需事先下載,不然進入系統後會遇到無法使用 WiFi 等窘境
pacman -S systemd
pacman -S iwd
pacman -S dhcpcd
安裝引導程序
安裝 Grub 軟件包
pacman -S grub
pacman -S efibootmgr
它可以在開機時協助選擇系統(雙系統或多系統功能就靠它了)
安裝啟動加載器 (僅適用於 UEFI)
/efi
是 EFI 分區、而 GURB 是加載器名稱可任意命名
grub-install --target=x86_64-efi --efi-directory=/efi --bootloader-id=GRUB
生成 grub.cfg
grub-mkconfig -o /boot/grub/grub.cfg
重啟
退出 chroot 環境
exit
卸載被掛載的分區
umount -R /mnt
重新開機
reboot