請將這篇文章當作筆記就好,一切還是依照 Arch wiki 為準
前製安裝
首先先去下載 ISO 檔案作為安裝工具。這裡選擇交大的鏡像站作為下載點。下載好後可以選擇燒入 USB,之後開機調整 BIOS 選擇 USB 開機即可開始安裝Arch。然後寫這篇文章剛好在交大要變成陽交時所以可能有些交大的東西之後大概就不能用了。
開始安裝
網路
Arch Linux在安裝時是需要網路的,如果各位有有線網路可以直接插上網路線應該就可以連到了,如果是使用 wifi 的推薦可以使用 iwctl 這個工具。
iwctl #從zsh進入iwctl
device list #列出裝置,通常都是使用wlan0
station device scan #掃描網路,device請換成你的裝置
station device get-networks #列出可用的網路,device請換成你的裝置
station device connect SSID #連線,device換成你的裝置,SSID換成網路的SSID
iwctl --passphrase passphrase station device connect SSID #需要密碼的可以換成在zsh使用這個指令
如果有需要設定固定ip 可以用systemd-networkd來設定,參照上圖。最後在重啟一次就好了,systemctl restart systemd-networks。
這時應該使用ping
指令就可以正常連線了。
設定基本配置
以下的設定是2020/12/20參考Arch linux Installation guide,如果之後 Installation guide有更改還是以Installation guide為準。
首先是設定系統時間
timedatectl set-ntp true
接下來開始分割硬碟,有兩個可以使用的工具 fdisk
和cfdisk
,大概需要三個區塊,第一個是存放主系統,第二個是 swap,第三個是 boot。boot 的區塊260MiB以上就好了,Swap則是 512Mib 以上就好了,建議可以到 2Gb。分割好後可以用以下指令格式化。
mkfs.ext4 /dev/root_partition #格式化主要系統區,後面的位置請自行更改,可以參考fdisk -l
mkswap /dev/swap_partition #格式化swap區,後面位置請自行更改
mkfs.fat -F32 /dev/boot_partition #格式化boot區,後面位置請自行更改
分割完後就可以進行掛載
mount /dev/root_partition /mnt #掛載主系統區
swapon /dev/swap_partition #掛載swap
cd /mnt #創建資料夾並且掛載boot
mkdir boot
mount /dev/boot_partition /mnt/boot
接下來要安裝基本套件,不過為了加快速度我們可以修改一下下載的地點。編輯/etc/pacman.d/mirrorlist
然後在第一行加入,Server = http://archlinux.cs.nctu.edu.tw/$repo/os/$arch
這是交大鏡像站的位置。(以下為國網中心的Server = http://free.nchc.org.tw/arch/$repo/os/$arch
)
pacstrap /mnt base linux linux-firmware base-devel networkmanager vim vi bash-completion pkgfile sudo#後面可以把自己習慣用到的軟體都先一併安裝
設定系統
genfstab -U /mnt >> /mnt/etc/fstab #產生fstab filearch-chroot /mnt #切換root到新系統ln -sf /usr/share/zoneinfo/Asia/Taipei /etc/localtime #設定系統時區hwclock --systohc #設定硬體時間
編輯/etc/locale.gen
把一些常用的語系取消註解,像是en_US.UTF-8
或是zh_TW
系列和zh_CN
系列
locale-gen
編輯/etc/locale.conf
在第一行加入LANG=en_US.UTF-8
設定系統語系。
編輯/etc/hostname
在第一行加入你的電腦名稱。
編輯/etc/hosts
加入以下內容
127.0.0.1 localhost
::1 localhost
127.0.1.1 myhostname.localdomain myhostname
創建新的Initramfs
mkinitcpio -P
修改密碼
passwduseradd -m -G wheel username #註冊帳號,之後可以直接用使用者帳號登入
passwd username
visudo #讓新使用者可以使用sudo
#將%wheel ALL=(ALL) ALL取消註解將可讓wheel群組的使用者可以使用sudo
安裝boot loader,這裡選擇使用grub
pacman -Sy efibootmgr grub
pacman -S os-prober ntfs-3g #如果有安裝windows,要在多裝這個才會找到windowsgrub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=Arch
#--bootloader-id可以自由修改成想要的idgrub-mkconfig -o /boot/grub/grub.cfg
#如果出現Warning: os-prober will not be executed to detect other bootable partitions.就要編輯/etc/default/grub然後新增這一行
GRUB_DISABLE_OS_PROBER=false
其他設定
開啟之前裝的network manager
systemctl enable --now NetworkManager.service #開啟網路功能
更改開機預設執行系統,編輯/etc/default/grub
GRUB_DEFAULT=0 #這邊可以預設要優先選擇grub列表中哪個系統,通常windows是第3個但從0開始所以要打2
GRUB_TIMEOUT=5 #設定grub等待時間,以秒為單位grub-mkconfig -o /boot/grub/grub.cfgpacman -S --needed git base-devel
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
桌面環境
此次紀錄所挑選的桌面環境為KDE的plasma,可根據自己需求下載不同的桌面
pacman -S xorg-server
pacman -S xorg-xinit
pacman -S xf86-video-intel #安裝intel內顯驅動
cp /etc/X11/xinit/xinitrc ~/.xinitrc
pacman -S plasma-meta
pacman -S kde-applications #這個為kde附加功能可以不下載
編輯~/.xinit
刪除最後幾行直到#start some nice programs
的if語句結束前,並加入以下指令。
export DESKTOP_SESSION=plasma
exec startplasma-x11
之後直接使用startx
即可進入桌面環境。
字體
pacman -S noto-fonts noto-fonts-cjk noto-fonts-emoji noto-fonts-extra
pacman -S firefox-i18n-zh-tw
pacman -S ttf-arphic-ukai
安裝中文輸入
pacman -S rime-bopomofo librime ibus-rime
新增一個檔案 default.custom.yaml
在~/.config/ibus/rime
並打入以下內容
patch:
schema_list:
- schema: bopomofo
接下來在bash裡面輸入
rm ~/.config/ibus/rime/default.yaml && ibus-daemon -drx
然後在IBus Preferences這個程式設定rime輸入法,在Input Method裡面選擇Add,然後選Chinese裡面的Rime。
然後再~/.xinitrc
的exec startplasma-x11
前面加上這幾行開機預設開啟ibus。
ibus-daemon -drx &
export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus
zsh
pacman -S zsh
chsh #進去後輸入/bin/zshsh -c "$(curl -fsSL https://raw.githubusercontent.com/zdharma/zinit/master/doc/install.sh)" #安裝zinityay -S --noconfirm zsh-theme-powerlevel10k-git
echo 'source /usr/share/zsh-theme-powerlevel10k/powerlevel10k.zsh-theme' >>~/.zshrcyay autojump #要選autojump不要選autojump-git
pacman -S neovim
pacman -S openssl zlib
yay pyenv
https://gist.github.com/grorge123/ccf361d13b7cde188442b05778091f9c
plasma設定
接下來紀錄的都是一些我個人的習慣設定而已,並不一定要設定。
touchpad
開啟System settings到Hardware尋找Input Devices選擇Touchpad然後把tap-to-click勾選,和invert scroll direction (Natural scrolling)勾選。
Windows
裝完Arch linux回到windows,應該會發現Windows的時間變成很奇怪的時間,這是因為Arch linux使用的是UTC時間,以下紀錄的方法是修改Windows,讓他也使用UTC時間,使用管理員權限執行CMD打以下指令
reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1 /f