安裝系統
Arch Linux 安裝使用教程
以下簡述步驟,詳情去連結檢視
一. 下載映象ios
- 驗證簽名
gpg --keyserver-options auto-key-retrieve --verify archlinux-202x.0x.01-x86_64.iso.sig - 燒錄到u盤
sudo dd bs=4M if=/path/to/archlinux.iso of=/dev/sdx status=progress oflag=sync - 調整BOIS啟動方式為 UEFI
二. 進入Live CD
- 禁用 reflector
systemctl stop reflector.service - 再次確保是否為 UEFI 模式
ls /sys/firmware/efi/efivars - 連線網路
iwctl #執行iwctl命令,進入互動式命令列
device list #列出裝置名,比如無線網路卡看到叫 wlan0
station wlan0 scan #掃描網路
station wlan0 get-networks #列出網路 比如想連線YOUR-WIRELESS-NAME這個無線
station wlan0 connect YOUR-WIRELESS-NAME #進行連線 輸入密碼即可
exit #成功後exit退出
- 更新系統時鐘
timedatectl set-ntp true #將系統時間與網路時間進行同步
timedatectl status #檢查服務狀態
- 分割槽
不要用fdisk分割槽,此命令只支援MBR,不支援GPT
注意對齊分割槽,參考:使用parted命令對齊分割槽,以獲得最佳效能
parted /dev/sda
(parted) mklabel
New disk label type? gpt
Warning: The existing disk label on /dev/sda will be destroyed and all data on this disk will be lost. Do you want to continue?
Yes/No? Yes
(parted) mkpart
Partition name? []?
File system type? [ext2]? xfs
Start? 2048s
End? 100%
(parted) print
或者
lsblk #顯示分割槽情況 找到你想安裝的磁碟名稱
parted /dev/sdx #執行parted,進入互動式命令列,進行磁碟型別變更
(parted)mktable #輸入mktable
New disk label type? gpt #輸入gpt 將磁碟型別轉換為gpt 如磁碟有資料會警告,輸入yes即可
quit #最後quit退出parted命令列互動
cfdisk /dev/sdx #來執行分割槽操作,分配各個分割槽大小,型別
fdisk -l #分割槽結束後, 複查磁碟情況
示例:
/dev/sdb1 efi 800M
/dev/sdb2 / 1000G
/dev/sdb3 var 12G
/dev/sdb4 /home 剩餘
- 格式化
mkfs.xfs /dev/sdax
mkfs.ext4 /dev/sdax #格式化根目錄和home目錄的兩個分割槽
mkfs.vfat /dev/sdax #格式化efi分割槽
- 掛載
mount /dev/sdax /mnt
mkdir /mnt/efi #建立efi目錄
mount /dev/sdax /mnt/efi
mkdir /mnt/home #建立home目錄
mount /dev/sdax /mnt/home
- 映象源的選擇
vim /etc/pacman.d/mirrorlist
Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
[可選]最佳化mirrorlist列表
檢視伺服器狀態
使用reflector自動更改Pacman的軟體源
pacman -S reflector # 安裝
# 選擇最快的映象源
sudo reflector --verbose -l 200 -p https --sort rate --save /etc/pacman.d/mirrorlist
# 或者 選擇在xx的最快映象源,最新的50個
sudo reflector --verbose --latest 200 -p https --sort rate -c Japan,'South Korea',Taiwan,India,'United States',Canada,Germany,France --save /etc/pacman.d/mirrorlist
- 安裝系統
pacstrap /mnt base base-devel linux linux-headers linux-firmware #base-devel在AUR包的安裝是必須的
#必須的功能性軟體
pacstrap /mnt dhcpcd iwd vim bash-completion #一個有線所需(iwd也需要dhcpcd) 一個無線所需 一個編輯器 一個補全工具
- 生成 fstab 檔案
genfstab -U /mnt >> /mnt/etc/fstab
cat /mnt/etc/fstab
示例
# lsblk -o name,mountpoint,size,uuid #檢視UUID
# /dev/sdb2
UUID=560a74f2-582b-45c8-99c7-5572e592e263 / ext4 rw,relatime 0 1
# /dev/sdb3
UUID=1d7d0a88-411c-4a13-837f-91a760040bef /var ext4 rw,relatime 0 2
# /dev/sdb4
UUID=eeeeb548-c5ba-4f6c-b22a-c452da93fe87 /home ext4 rw,relatime 0 2
# /dev/sdb1
UUID=1DAE-DA22 /efi vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 2
# /dev/sda1
UUID=54576ec2-8019-4a5d-9837-5c7f0f145669 /data xfs rw,relatime 0 0
#swapfile
/swapfile none swap defaults 0 0
- hange root
arch-chroot /mnt
- 一些設定
# 時區設定
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock --systohc #進行硬體時間設定,將當前的正確 UTC 時間寫入硬體時間
- 設定 Locale 進行本地化
vim /etc/locale.gen # 去掉 en_US.UTF-8 所在行以及 zh_CN.UTF-8 所在行的註釋符號(#)
locale-gen
echo 'LANG=en_US.UTF-8' > /etc/locale.conf
- 設定主機名
vim /etc/hostname
- 為 root 使用者設定密碼
passwd root
- 安裝微碼
pacman -S intel-ucode #Intel
pacman -S amd-ucode #AMD
- 安裝載入程式
pacman -S grub efibootmgr #grub是啟動引導器,efibootmgr被 grub 指令碼用來將啟動項寫入 NVRAM。
grub-install --target=x86_64-efi --efi-directory=/efi --bootloader-id=GRUB
vim /etc/default/grub
# 改GRUB_CMDLINE_LINUX_DEFAULT引數:loglevel=5 nowatchdog
grub-mkconfig -o /boot/grub/grub.cfg # 生成 GRUB 所需的配置檔案
- 完成安裝
exit # 退回安裝環境#
umount -R /mnt # 解除安裝新分割槽
reboot # 重啟
systemctl start dhcpcd #立即啟動dhcp
ping www.gnu.org #測試網路連線
systemctl start iwd #立即啟動iwd
iwctl #和之前的方式一樣,連線無線網路
三、桌面環境與常用應用
pacman -Syyu #升級系統中全部包
#wheel附加組可sudo,以root使用者執行命令 -m同時建立使用者家目錄
passwd testuser
useradd -m -G wheel -s /bin/bash testuser
#編輯 sudoers 配置檔案
EDITOR=vim visudo # 需要以 root 使用者執行 visudo 命令 把#%wheel ALL=(ALL) ALL的註釋符號 # 去掉,:wq 儲存
# 安裝 KDE Plasma 桌面環境
sudo pacman -Sy plasma konsole kde-accessibility kde-graphics kde-system kde-utilities cups ffmpegthumbs noto-fonts
# 解除安裝多餘
sudo pacman -Rns discover flatpak-kcm plasma-sdk
# 安裝wayland
sudo pacman -S --needed wayland
yay -S sddm-git
pacman -S --needed xorg-xwayland xorg-xlsclients qt5-wayland glfw-wayland
pacman -S --needed plasma-wayland-session egl-wayland
# 啟動SDDM的命令
sudo systemctl enable sddm
# 啟動網路、藍芽、印表機服務
sudo systemctl enable NetworkManager bluetooth cups
不推薦安裝 plasma-meta(無法在不解除安裝元包的情況下解除安裝元件,並且所有元件被安裝為依賴)和kde-applications(裡面的東西太雜了,包括好多遊戲、專業軟體,以及兩個瀏覽器)
ArchLinux安裝KDE桌面環境
How to Install and Configure KDE Plasma Desktop in Arch Linux
在 Arch Linux 中設定 Full Wayland 的指南
KDE 應用程式列表
顯示卡管理
安裝驅動
sudo pacman -S mesa lib32-mesa vulkan-intel lib32-vulkan-intel # 英特爾核芯顯示卡
sudo pacman -S nvidia nvidia-utils nvidia-settings lib32-nvidia-utils # 英偉達獨立顯示卡
安裝nvidia-prime
sudo pacman -S nvidia-prime
#執行軟體heroic
prime-run heroic
影片硬體解碼支援
# 5代及以後的安裝intel-media-driver,其他安裝libva-intel-driver
sudo pacman -S libva-intel-driver # 影片硬解支援
sudo pacman -S libva-utils
vainfo # 檢視是否驅動安裝正確,輸出中也包含了支援硬解的格式
配置 Firefox / chromium使之支援影片硬解
firefox
about:config
layers.acceleration.force-enabled 設定為 true
gfx.webrender.all 設定為 true
media.hardware-video-decoding.force-enabled 設定為 true
chromium
增加配置檔案
vim ~/.config/chromium-flags.conf
--ozone-platform=wayland # 原生Wayland上執行
--enable-wayland-ime # 支援輸入法fcitx5
--enable-features=VaapiVideoDecodeLinuxGL # 影片硬體解碼
開啟 chrome://flags#ignore-gpu-blacklist,查詢Override software rendering list,設定為開啟enable
重啟
阻止網站提供目前還不能硬解的格式
若顯示卡較舊,設定影片網站支援的格式
嗶哩嗶哩 選擇“AVC”
Youtube 安裝 h264ify 阻止 Youtube 提供除 H.264 以外的影片格式
Firefox 使用 VAAPI 硬解影片
Plasma/Tips
安裝qBittorrent
安裝加強版qbittorrent-enhanced-git
yay -S qbittorrent-enhanced-git
配置黑名單
關於peer_blacklist.txt等檔案的存放位置
Windows: %LocalAppData%\qBittorrent
Linux: $HOME/.local/share/qBittorrent
啟動qBittorrent EE後,可在日誌(選單欄中:檢視 -> 日誌 -> 顯示)中看到如下內容
<時間戳> - 'peer_whitelist.txt' doesn't exist. The corresponding filter is disabled.
<時間戳> - 'peer_blacklist.txt' contains 2 valid rules.
搜尋需要的Jackett
yay -S jackett-bin # 安裝jackett
sudo systemctl enable --now jackett #啟動服務,加入開機啟動
開啟 http://127.0.0.1:9117 ,進入jackett配置,複製API Key,寫入jackett.json檔案
cd ~/.local/share/qBittorrent/nova3/engines
vim jackett.json # 寫入api key
{
"api_key": "xxxx",
"tracker_first": false,
"url": "http://127.0.0.1:9117"
}
完成,可以進入http://127.0.0.1:9117增加搜尋引擎
使用qBittorrent+Jackett打造一站式資源搜尋+下載神器
請問如何啟用Peer 白名單/黑名單
配置休眠檔案
若不配置,則無法休眠
Archlinux 設定休眠到swap檔案
讓Shell更易辨識
Arch Linux 終端升級zsh(oh my zsh)
更換Linux核心
Different Types of Kernel for Arch Linux and How to Use Them
安裝應用
參見Manjaro Linux安裝