Archlinux安裝(Wiki方式)

按照 Archlinux Wiki 安裝,并結(jié)合網(wǎng)上現(xiàn)有的文檔進(jìn)行了梳理。個人在進(jìn)行雙系統(tǒng)的 grub 部署時,windows系統(tǒng)啟動項一直無法生成,最后仔細(xì)查閱Wiki后解決。另外中文的Wiki有些地方翻譯不夠準(zhǔn)確,可對比英文食用。

一、安裝準(zhǔn)備

下載并引導(dǎo)安裝介質(zhì)。啟動完成后將會自動以 root 身份登錄虛擬控制臺并進(jìn)入 Zsh 命令提示符。

鍵盤布局 (使用默認(rèn)即可)

控制臺鍵盤布局默認(rèn)為 us(美式鍵盤映射)。列出所有可用的鍵盤布局,可以使用:

# ls /usr/share/kbd/keymaps/**/*.map.gz

如果您想要更改鍵盤布局,可以將一致的文件名添加進(jìn),但請省略路徑和擴(kuò)展名。比如,要添加 German鍵盤布局:

# loadkeys de-latin1

驗證啟動模式

如果以在 UEFI 主板上啟用 UEFI 模式,Archiso 將會使用 systemd-boot 來 啟動 Arch Linux。可以列出 efivars 目錄以驗證啟動模式:

# ls /sys/firmware/efi/efivars

如果目錄不存在,系統(tǒng)可能以 BIOS 或 CSM 模式啟動。如下圖


image

連接到因特網(wǎng)

守護(hù)進(jìn)程 dhcpcd 已被默認(rèn)啟用來探測 有線網(wǎng)絡(luò)設(shè)備,并會嘗試連接。如果未啟用,可手動啟用:

# dhcpcd

可以使用 ping 驗證連接是否正常:

# ping archlinux.org

如果沒有可用網(wǎng)絡(luò)連接,利用 systemctl stop dhcpcd@網(wǎng)絡(luò)接口,TAB 停用dhcpcd 進(jìn)程,網(wǎng)絡(luò)接口 名可以通過 Tab補(bǔ)全。要加載驅(qū)動配置網(wǎng)絡(luò)等,查看Wiki。

更新系統(tǒng)時間

可以先使用 timedatectl status 檢查服務(wù)狀態(tài),查看時間是否準(zhǔn)確。
如果時間有問題,使用 timedatectl 確保系統(tǒng)時間是準(zhǔn)確的:

# timedatectl set-ntp true

建立硬盤分區(qū)

1、查看磁盤情況

磁盤若被系統(tǒng)識別到,就會被分配為一個 塊設(shè)備,如 /dev/sda 或者 /dev/nvme0n1??梢允褂?lsblk 或者 fdisk 查看存儲設(shè)備情況:

# fdisk -l

結(jié)果中以 rom,loop 或者airoot 結(jié)束的可以忽略。

2、分區(qū)方案

對于選擇安裝系統(tǒng)的磁盤,采用如下分配方案基本滿足需求:

  • 一個根分區(qū)(掛載在根目錄,必須)/;
  • 一個home分區(qū) (建議進(jìn)行分區(qū));
  • 交換分區(qū),Swap可以在一個獨立的分區(qū)上設(shè)置,也可以直接建立 交換文件;
  • 如果使用UEFI/GPT 模式引導(dǎo),必須有一個 EFI 引導(dǎo)分區(qū)(如果安裝了其他UEFI引導(dǎo)的系統(tǒng),則記下其EFI分區(qū)路徑。如果是全新的硬盤則需要新建一個EFI的引導(dǎo)分區(qū))
3、建立分區(qū)

建立分區(qū),可以使用 fdisk 或 parted。例如使用 fdisk進(jìn)入分區(qū)狀態(tài)

# fdisk /dev/sda

**注意: **如果需要需要創(chuàng)建多級存儲例如 LVM、disk encryption 或 RAID,請在此時完成。

  1. 建立分區(qū)表:先執(zhí)行# fdisk /dev/sda,之后按 o建立分區(qū)表
  2. 進(jìn)行分區(qū)(一般建立 / , /swap , /home三個分區(qū)):執(zhí)行 n ,依次選擇主分區(qū)、擴(kuò)展分區(qū),第幾分區(qū),起始扇區(qū),結(jié)束扇區(qū)或者直接使用 +30G設(shè)置分區(qū)為30G大小。
  3. 如需修改分區(qū)類型:執(zhí)行t,將swap分區(qū)類型改為Linux Swap類型。
  4. 保存分區(qū)。保存之前可輸入p查看分區(qū)結(jié)果,確認(rèn)無誤執(zhí)行w保存分區(qū)。
    image.png

格式化分區(qū)

當(dāng)分區(qū)建立好了,這些分區(qū)都需要使用適當(dāng)?shù)?文件系統(tǒng) 進(jìn)行格式化。例如將 /dev/sda1 格式化成 ext4,可以運行:

# mkfs.ext4 /dev/sda1

如果您創(chuàng)建了交換分區(qū)(例如 /dev/sda3),使用 mkswap 將其初始化:

# mkswap /dev/sda3
# swapon /dev/sda3

分別根據(jù)分區(qū)類型進(jìn)行格式化。

掛載分區(qū)

首先將根分區(qū) 掛載 到 /mnt,例如:

# mount /dev/sda1 /mnt

如果使用多個分區(qū),還需要為其他分區(qū)創(chuàng)建目錄并掛載它們(/mnt/boot、/mnt/home 等,swap不需要掛載)。

# mkdir /mnt/boot
# mount /dev/sda2 /mnt/boot

接下來 genfstab 將會自動檢測掛載的文件系統(tǒng)和 swap 分區(qū)。

二、安裝

選擇鏡像

文件 /etc/pacman.d/mirrorlist 定義了軟件包會從哪個鏡像源下載。在列表中越前的鏡像在下載軟件包時有越高的優(yōu)先權(quán)。修改文件 /etc/pacman.d/mirrorlist,并將地理位置最近的鏡像源挪到文件的頭部。這個文件接下來還會被 pacstrap 拷貝到新系統(tǒng)里,所以請確保設(shè)置正確。
找到標(biāo)有China的鏡像源,normal模式下按下dd可以剪切光標(biāo)下的行,按gg回到文件首,按P(注意是大寫的)將行粘貼到文件最前面的位置(優(yōu)先級最高)。其他源:

Server = http://mirrors.163.com/archlinux/$repo/os/$arch
Server = http://mirrors.cqu.edu.cn/archlinux/$repo/os/$arch

安裝基本系統(tǒng)

使用pacstrap腳本,安裝 base ,base-devel包組:

# pacstrap /mnt base base base-devel

base-devel也可以在#Chroot之后使用pacman 手動安裝軟件包或組:

# pacstrap -i /mnt base base-devel

三、 配置系統(tǒng)

Fstab

用以下命令生成 fstab文件 (用 -U-L 選項設(shè)置UUID 或卷標(biāo)):

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

強(qiáng)烈建議 在執(zhí)行完以上命令后,后檢查一下生成的 /mnt/etc/fstab 文件是否正確。

# nano /mnt/etc/fstab
image.png

Chroot

Change root到新安裝的系統(tǒng):

# arch-chroot /mnt

時區(qū)

設(shè)置時區(qū)

# ln -sf /usr/share/zoneinfo/Region/City /etc/localtime

例如:

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

運行 hwclock以生成 /etc/adjtime

# hwclock --systohc

這個命令假定硬件時間已經(jīng)被設(shè)置為 UTC時間 。

本地化

本地化的程序與庫若要本地化文本,都依賴 Locale,后者明確規(guī)定地域、貨幣、時區(qū)日期的格式、字符排列方式和其他本地化標(biāo)準(zhǔn)等等。在下面兩個文件設(shè)置:locale.genlocale.conf。
/etc/locale.gen 是一個僅包含注釋文檔的文本文件。指定您需要的本地化類型,只需移除對應(yīng)行前面的注釋符號()即可,建議選擇帶 UTF-8 的項:

# nano /etc/locale.gen

en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8
zh_TW.UTF-8 UTF-8

接著執(zhí)行 locale-gen 以生成 locale 訊息,/etc/locale.gen 會生成指定的本地化文件。:

# locale-gen

生成locale

創(chuàng)建 locale.conf 并編輯 LANG 這一 變量,比如:

# nano /etc/locale.conf

LANG=en_US.UTF-8

Tip: 將系統(tǒng) locale 設(shè)置為 en_US.UTF-8,系統(tǒng)的 Log 就會用英文顯示,這樣更容易問題的判斷和處理。不推薦在此設(shè)置任何中文 locale,會導(dǎo)致 TTY 亂碼。
另外,如果你需要修改鍵盤布局,并想讓這個設(shè)置持續(xù)生效,編輯vconsole.conf,例如:

# nano /etc/vconsole.conf

KEYMAP=de-latin1

主機(jī)名

要設(shè)置 hostname,將其 添加/etc/hostname,myhostname 是需要的主機(jī)名:

# nano /etc/hostname

myhostname

并且添加 對應(yīng)的信息hosts

# nano /etc/hosts

127.0.0.1 localhost
::1 localhost
127.0.1.1 myhostname.localdomain myhostname

如果機(jī)器有一個永久的 IP 地址,請使用這個 IP 而不是 127.0.1.1。

網(wǎng)絡(luò)配置

對新安裝的系統(tǒng),需要再次設(shè)置網(wǎng)絡(luò)。具體請參考Wiki Network configuration
對于 無線網(wǎng)絡(luò)配置,安裝 軟件包 iw、wpa_supplicantdialog 以及需要的 固件軟件包 。

Initramfs

你通常不需要創(chuàng)建 initramfs,因為在你執(zhí)行 pacstrap 時已經(jīng)安裝 linux,這時 mkinitcpio會被自動運行。
如果修改了 mkinitcpio.conf ,用以下命令創(chuàng)建一個 Initramfs:

# mkinitcpio -p linux

Root 密碼

設(shè)置 Root 密碼 :

# passwd

安裝引導(dǎo)程序

你需要安裝 Linux 引導(dǎo)程序以在安裝后啟動系統(tǒng),你可以使用的的引導(dǎo)程序在 啟動加載器 中,請選擇一個并且安裝并配置它,比如 GRUB 。
如果你使用 Intel 或者 AMD 的 CPU,那么需要 啟用微碼更新

  1. 安裝 os-prober 包 (多系統(tǒng)引導(dǎo)需要安裝)
# pacman -S os-prober
  1. 安裝 grub 包:
# pacman -S grub
  1. 部署 grub (下面僅為BIOS方式):
# grub-install --target=i386-pc /dev/sdx

Note:

  • --target=i386-pc指示grub-install是為使用BIOS的系統(tǒng)安裝.
  • /dev/sdx 是已經(jīng)完成 分區(qū) 的磁盤,grub 將安裝到它上面。
  1. 生成配置文件:
# grub-mkconfig -o /boot/grub/grub.cfg

Note: 如果是安裝多系統(tǒng)引導(dǎo):

  • 必須安裝第1步 os-prober
  • 并且mount其他系統(tǒng)所在的磁盤的引導(dǎo)分區(qū)(例如:/dev/sda1)
    之后grub-mkconfig 才可以自動搜索已經(jīng)安裝的其它系統(tǒng)并添加到啟動菜單。一般出現(xiàn)在其他已安裝系統(tǒng)在別的磁盤的情況。個人卡在這一步,并且找了好多文檔,都沒有提到提到這一步。
  • 如果還是沒有生成其他系統(tǒng)的入口,可能是處于U盤安裝環(huán)境下無法檢測到其他系統(tǒng)的入口,請重啟登陸之后重新運行第4步命令。如下圖,請核對是否搜索到所有系統(tǒng):


    生成配置文件

四、重啟

輸入 exit 或按 Ctrl+D 退出 chroot 環(huán)境。
可選用 umount -R /mnt 手動卸載被掛載的分區(qū):這有助于發(fā)現(xiàn)任何「繁忙」的分區(qū),并通過 fuser 查找原因。
最后,通過執(zhí)行 reboot 重啟系統(tǒng),systemd 將自動卸載仍然掛載的任何分區(qū)。不要忘記移除安裝介質(zhì),然后使用 root 帳戶登錄到新系統(tǒng)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容