Featured image of post ArchLinux安裝

ArchLinux安裝

# 前言

本來有寫這個博客的想法,但無奈最近時間比較忙

一心想去編譯Samsung內核,中間一波多折.

故一拖再拖。幸好最近內核的進程一直擱置,我就打算今晚扔到Stackoverflow然後收穫一堆downvote,或者去XDA看看。

# 材料準備

電腦,U盤各一個,在ArchLinux官方選擇鏡像站下載鏡像,用Etcher製作啓動U盤

  • Etcher 有個非常好的優點——全平臺兼容,醬紫就不怕出現在Linux很難製作Windows啓動U盤的尷尬場面。

# 安裝步驟

# 製作啓動盤

打開Etcher 直接選擇iso文件再選擇U盤安裝即可

# 進入BIOS

每個主板或筆電進入BIOS的方法,各不相同故請自行Google 記得在BIOS裏面關閉secure boot

# 連接網路

# 有線網路

接上網路,稍等片刻即可

# 無線網路

iwctl #進入無線網路工具         
device list # 列出網路設備 通常爲Wlan0
station wlan0 scan #掃描無線網路
station wlan0 get-networks #列出可用無線網路
station wlan0 connnect WiFiname
  • WiFiname 爲WiFi 名稱,輸入一部分可用Tab補全,然後輸入密碼回車,最後輸入exit退出

# 測試網路連接是否正常

ping www.bing.com

# 設定鏡像網站

把我们要设定的镜像站放在前面

  • 使用上下左右鍵移動,按i輸入文字,改好後按Esc,再輸入「:wq」退出VIM
  • 如果真的不會如何使用vim那就Google一下再回來吧
vim /etc/pacman.d/mirrorlist #打開文件按需求把下面的源加進去

中國大陸用戶設定清華源和中科大即可

#China 
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch

臺灣用戶的可用使用

Server = https://mirror.archlinux.tw/ArchLinux/$repo/os/$arch

# 分割磁盤

archlinux安裝需要分三個分區

efi分區 512MB.

swap分區 運存的60%

主分區 剩餘部分即爲主分區 .

下面將會把磁盤轉化爲gpt格式,固態硬盤一般爲nvme0n1,我們是直接但系統故直接裝在固態硬盤

lsblk #顯示分區情況
parted /dev/nvme0n1
(parted)mktable            #輸入mktable
New disk label type? gpt   #輸入gpt 輸入yes即可
quit                       #退出

下面將會用cfdisk分割磁盤,efi分區格式type爲 EFI Ssystem,Swap分區爲Swap System,主分區爲Lnux System

cfdisk /dev/nvme0n1 #執行分割分區大小,類型
fdisk -l 
# 配置分區
mkfs.vfat /dev/nvmexn1p1 #格式化EFI分區
mkfs.ext4 /dev/nvmexn1p3 # 格式化主分區爲ext4

mount /dev/nvmexn1p3 /mnt #掛載主分區到/mnt
mkdir -p /mnt/boot/efi 
mount /dev/nvmexn1p1 /mnt/boot/efi #掛載efi分區

mkswap /dev/nvmexn1p2 
swappon /dev/nvmexn1p2 #設定Swao分區
fdisk -l #查看分區掛載是否正確

# 用pacstrap安裝基本Linux檔案系統base、核心linux

pacstrap /mnt linux linux-firmware linux-headers base base-devel vim

# 生成fstab

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

# 檢視掛載狀況

cat /mnt/etc/fstab

# chroot到系統。

arch-chroot /mnt

# 設定主機名和時區

# 首先在/etc/hostname設定主機名字

vim /etc/hostname #輸入ArchLinux 再:wq保存退出即可

ArchLinux 爲主機名

# 在vim /etc/hosts配置hosts

127.0.0.1   localhost
::1         localhost
127.0.1.1   ArchLinux.localdomain ArchLinux

# 設定時區

ln -sf /usr/share/zoneinfo/Asia/Taipei /etc/localtime # 設定臺北爲時間同步時區 二選一
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime # 設定上海爲時間同步時區 

# 硬體時間

用命令將同步時間設定到硬體

hwclock --systohc

# 安裝微碼

pacman -S intel-ucode # Intel
pacman -S amd-ucode # AMD

# 設定locale

編輯 /etc/locale.gen,去掉 en_US.UTF-8 UTF-8 以及 zh_CN.UTF-8 UTF-8 tw_CN.UTF-8 UTF-8

 vim /etc/locale.gen
locale-gen 

在 /etc/locale.conf 設定爲英文,防止亂碼

echo 'LANG=en_US.UTF-8'  > /etc/locale.conf

# 安装桌面程式

# 安装基本软体

pacman -S sudo networkmanager vim firefox noto-fonts-cjk noto-fonts-emoji
pacman -S xorg xorg-server pipewire intel-ucode nvtop
pacman -S fcitx5-im fcitx5-chewing fcitx5-qt fcitx5-gtk fcitx5-chinese-addons
pacman -S git openssh fakeroot base-devel

# 安装gnome 桌面

pacman -S gnome gdm 

# 安装KDE桌面

pacman -S sddm plasma-meta kde-applications plasma-wayland-session
  • sddm 为kde桌面的登錄管理器,而gdm为gnome的, 两个桌面二選一即可

僅適用於我的華碩vivobook筆電的聲卡軟體

  • 如果聲卡不行,可以去arch.wiki查詢
sudo pacman -S sof-firmware
sudo pacman -S alsa-ucm-conf

# 爲Root用戶設定密碼

passwd root

# 配置Root用戶默認編輯器

  • 在git 和visudo archlinux會使用vi而不是vim,有時候會出錯,所以需要設置默認編輯器
vim ~/.bash_profile
export EDITOR='vim'

# 創建普通用戶

  • username 爲用戶名,可自行改成自己的名字如 black useradd -m -G wheel -s /bin/bash username passwd user # 設定普通用戶密碼

# 給予普通用戶sudo權限

EDITOR=vim visudo # 設定visudo的編輯器爲vim,上面的配置尚未生效
  • 找到這行#%wheel ALL=(ALL:ALL) ALL,並把前面的註釋符 # 去掉

# 設定開機服務

systemctl enable sddm.service #kde桌面需要
systemctl enable gdm.service #gnome桌面需要
systemctl enable NetworkManager.service #網路管理員,會自動處理網路連線變更
systemctl enable sshd.service #ssh服務
sudo systemctl enable --now bluetooth 啓用藍牙服務(若有)

# 安裝引導程式

# 安裝對應的軟體

pacman -S grub efibootmgr

# 安装grub 到EFI分区

grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=ARCH

# 生成grub所需文件

grub-mkconfig -o /boot/grub/grub.cfg

# 系統安裝完成。退出chroot,取消掛載,重啓

exit
umount /mnt
reboot 重啓 

# 系統後續安裝優化

# 配置中文輸入法

sudo vim /etc/environment

把下面這幾行加入即可

GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
SDL_IM_MODULE=fcitx
GLFW_IM_MODULE=ibus

# Clash for windows 代理軟體

開啓Clash for windows GitHub倉庫,下載含linux字符文件並解壓運行cfw即可,如有不明之處可查看官網

# pacman套件管理員使用方式

pacman 相當於ubuntu 的apt-get,此節列出Arch Linux的套件管理員pacman的常用指令。 搜索線上倉庫軟體

sudo pacman -Ss <套件名稱>

用此指令安裝套件

sudo pacman -S <套件名稱>

移除套件

sudo pacman -R <套件名稱>

以下指令會更新整個系統的套件。因為Arch Linux是滾動發行版,建議每半個月進行一次全系統更新。更新前建議看ArchLinux的新聞有無嚴重bug再更新。

sudo pacman -Syu

強制同步套件庫。某個套件無法下載的時候才執行此指令。

sudo pacman -Syu

刪除本機套件快取 sudo pacman -Sc

查看本地已安裝套件

sudo pacman -Qt

可用來移除桌面冗餘的套件

# 安裝AUR套件管理員

AUR (Arch User Repository) 是Arch Linux官方套件庫以外的主要套件來源。AUR沒有收錄套件檔案,只有編譯套件的設定檔。AUR套件最直接的裝法是手動git clone儲存庫,然後檢查依賴項目,再用makepkg指令打包安裝。

但是這樣太麻煩了,所以我們通常會安裝一個AUR Helper來自動化處理,我使用yay,語法跟pacman很像

sudo pacman -S --needed git base-devel
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si

yay 安裝套件

yay -S google-chrome # 按下Enter同意安裝,並按照螢幕提示輸入密碼

yay 移除套件

yay -R google-chrome

更新所有AUR套件,並順便更新整個系統的套件:

yay -Syu

# 自用gnome 插件

先安裝gnome-browser-connector

yay -S gnome-browser-connector

# blur-my-shell 模糊抽屜界面不再是灰色

# Caffeine 禁用熒幕保護和自動暫停

# Clipboard Indicator 剪貼板管理器,記錄你複製過的內容

# Coverflow Alt-Tab 此插件可以實現Mac系統的快速切換任務且自帶流暢切換動畫

Dash to Dock 固定Dock欄,gnome在某次更新砍了這個功能

Extension List 在狀態欄開啓插件清單

OpenWeather 在頂欄顯示天氣狀況

Vitals 一個很好用的插件可快速查看系統的CPU,Ram,存儲佔用狀況

# Android 刷機工具

sudo pacman -S android-tools

# 配置Android Rom 編譯環境

這裏不得不說一下,Archlinux的優點Aur,得益於Aur,安裝編譯Android Rom 的套件僅需開啓32位庫

# 開啓32位庫支援

vim /etc/pacman.conf

僅需把下面兩行前面的#去掉,輸入:wq保持並推出即可

#[community]
#Include = /etc/pacman.d/mirrorlist

sudo pacman -Syyu #更新套件

# 安裝所需套件

yay -S lineageos-devel android-devel

# 文章引用

使用 Hugo 建立
主題 StackJimmy 設計