- ArchLinux基础环境的安装,参考自ArchLinux官方Wiki的安装指南与建议阅读。
- ArchLinux基础软件的安装与配置,参考自ArchLinux官方Wiki的建议阅读与应用程序列表。
一、基础环境的安装
最新版本的ArchLinux镜像已经默认集成了
archinstall
安装脚本,可快速完成ArchLinux基础环境的安装,详见官方文档。
(一)硬盘分区
1. 创建引导分区和根分区
fdisk /dev/sda
(进入第一个硬盘)
g
(如果是全新硬盘,使用g创建新的gpt分区表)
n
回车
回车
+500M
(创建新的分区作为引导分区,大小为500M)
t
1
(修改分区类型为EFI System)
n
回车
回车
+10G
(创建新的分区作为根分区,大小为10G)
p
(打印所有更改)
w
(保存所有更改)
2. 格式化分区
mkfs.fat -F32 /dev/sda1
(格式化引导分区)
mkfs.ext4 /dev/sda2
(格式化根分区)
- 挂载分区
mount /dev/sda2 /mnt
(挂载根分区到airrootfs下的mnt目录)
mkdir /mnt/boot
(在airrootfs下的mnt目录创建boot子目录)
mount /dev/sda2 /mnt/boot
(挂载引导分区到airrootfs下的mnt/boot目录)
(注意!!!chroot之前,所有的操作均是在内存中进行,airrootfs挂载为系统根目录,chroot在后面有介绍)
(二)联网安装
1. 联网
wifi-menu
(使用无线局域网)
dhcp
(使用自动拨号)
(注意!使用手机开热点时,电脑可能不能正常解析DNS服务器,需要手动设置。)
vim /etc/resolv.conf
--------------------------------------------
nameserver 114.114.114.114)
--------------------------------------------
2. 选择镜像源
vim /etc/pacman.d/mirrolist
(修改镜像源)
--------------------------------------------------
Server = http://mirrors.neusoft.edu.cn/archlinux/$repo/os/$arch (选择镜像源)
--------------------------------------------------
(大多数镜像源格式一致,只需要更改http与archlinux之间的内容即可)
3. 安装基本包
pacstrap /mnt base base-devel
(三)配置基础系统
1. 设置分区自动挂载(生成fstab文件)
genfstab -L /mnt >> /mnt/etc/fstab
(自动生成fstab文件,如若按tab未正常补齐,说明前面安装错误)
cat /mnt/etc/fstab
(查看fstab文件是否生成成功,若内容不正确,会导致下次无法启动系统!)
2. 更换根目录挂载点,系统操作权转移(Chroot)
arch-chroot /mnt
(将根目录挂载点由由airrootfs变为/dev/sda2(即airrootfs下的mnt目录))
(注意!!!chroot之前,大部分操作是在内存中进行,chroot之后,一切操作均在硬盘上进行)
3. 趁现在有网,将必须的安装包下载下来
pacman -S vim dialog wpa_supplicant ntfs-3g networkmanager
(安装vim和网络相关的软件)
pacman -S intel-ucode
(安装intel相关驱动)
pacman -S os-prober grub efibootmgr
(安装引导相关软件)
4. 设置Locale,主机名,Root密码
vim /etc/locale.gen
(去掉相关注释)
--------------------------------------------
en_US.UTF-8
zh_CN.UTF-8
zh_HK.UTF-8
zh_TW.UTF-8
--------------------------------------------
locale-gen
(使local生效)
vim /etc/locale.conf
(编辑本地化文件)
--------------------------------------------
LANG=en_US.UTF-8 (设置默认本地本地化标准)
--------------------------------------------
echo Archlinux > /etc/hostname
(设置主机名)
vim /etc/hosts
(添加主机名对应信息,非必要)
passwd
(设置root密码)
5. 新建用户并赋予其sudo权限
useradd -m -G wheel luanrz
(创建用户luanrz)
passwd luanrz
(修改luanrz密码)
pacman -S sudo
(安装sudo)
vim /etc/sudoers
(配置sudo)
6. 设置时间
timedatectl set-ntp true
(更新系统时间)(在前面设置)
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
(设置时区为上海)
hwclock --systohc --utc
(设置时间标准为UTC)
7. 部署启动文件
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=arch
(在引导分区安装grub)
vim /etc/lvm/lvm.conf
--------------------------------------------
use_lvmetad = 0 (大约在40%处,将1改为0)
--------------------------------------------
grub-mkconfig -o /boot/grub/grub.cfg
(生成grub配置文件)
8. 创建交换文件(可选)
fallocate -l 4G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
vim /etc/fstab
9. 重启系统
exit
reboot
至此,ArchLinux基础环境已经安装成功了!图形界面与声音系统的安装过程,请参考后续步骤。
(四)安装图形界面
1. 公共组件
# 安装显卡驱动
pacman -S mesa vulkan-intel
# 安装NetworkManager
pacman -S networkmanager
# 开机自动启动NetworkManager
systemctl enable NetworkManager
# 取消开机自动启动netctl(netctl和networkmanager互斥!)
systemctl disable netctl
2. GNOME
# 安装gnome桌面桌面环境
pacman -S gdm gnome-shell gnome-control-center gnome-console
# 开机自动启动gdm)
systemctl enable gdm
3. XFCE
# 安装xfce4桌面桌面环境
pacman -S lightdm xfce4 xfce4-goodies xorg
# 开机自动启动lightdm)
systemctl enable lightdm
# 安装NetworkManager插件)
pacman -S network-manager-applet
(五)安装声音系统
1. 安装ALSA支持
pacman -S alsa-utils alsa-firmware sof-firmware alsa-ucm-conf
启动alsamixer
,在master、HeadPhone、Speaker项下输入M
解除限制,随后通过↑
、↓
键调整音量。
2. 使用Pipewire声音服务
除了使用alsamixer
外,也可通过PulseAudio
或Pipewire
管理声音,以Pipewire
为例:
# 安装pipewire
pacman -S pipewire wireplumber pipewire-audio pipewire-alsa pipewire-pulse
# 启用pipewire服务
systemctl --user --now enable pipewire{,-pulse}.{socket,service}
3. 使用声音管理前端应用
启动声音管理前端应用:
pacman -S pavucontrol
pavucontrol
也可安装其它前端应用,如:
pacman -S helvum easyeffects
xfce桌面环境可以安装pulseaudio面板插件便捷控制音量:
pacman -S xfce4-pulseaudio-plugin
二、基础软件的安装与配置
(一)安装yay
vim /etc/pacman.conf
------------------------------
[archlinuxcn]
SigLevel = Optional TrustAll
Server = http://repo.archlinuxcn.org/$arch
------------------------------
pacman -Syu yay
(二)安装中文环境
1. 中文字体
# 谷歌出品的noto字体,大而全
pacman -S noto-fonts-cjk
# 文泉驿微米黑/正黑字体,小而精,只支持中文
pacman -S wqy-microhei wqy-zenhei
# JetBrains出品的编程友好的等宽字体
pacman -S ttf-jetbrains-mono
字体文件夹:/usr/share/fonts/(全局) ~/.local/share/fonts/(用户)
安装部分字体后(如:wps-office-fonts
),系统字体优先级可能会乱,可通过以下配置修改字体优先级:(可选)
mkdir ~/.config/fontconfig
vim ~/.config/fontconfig/fonts.conf
------------------------------------------------------------
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<!-- 默认无衬线字体 -->
<!-- Default sans-serif font -->
<match target="pattern">
<test qual="any" name="family">
<string>sans-serif</string>
</test>
<edit name="family" mode="prepend" binding="same">
<string>Noto Sans CJK SC</string>
</edit>
</match>
<!-- 默认衬线字体 -->
<!-- Default serif fonts -->
<match target="pattern">
<test qual="any" name="family">
<string>serif</string>
</test>
<edit name="family" mode="prepend" binding="same">
<string>Noto Serif CJK SC</string>
</edit>
</match>
<!-- 默认等宽字体 -->
<!-- Default monospace fonts -->
<match target="pattern">
<test qual="any" name="family">
<string>monospace</string>
</test>
<edit name="family" mode="prepend" binding="same">
<string>JetBrains Mono</string>
</edit>
</match>
</fontconfig>
------------------------------------------------------------
2. ibus输入法
(1)安装ibus输入法
pacman -S ibus
(2)使用ibus-rime输入源
安裝与配置ibus-rime
:
pacman -S ibus-rime
在GNOME【设置】-【键盘】-【添加输入源】,选择【中文(Rime)】
安装与配置rime-ice
(雾凇拼音):
yay rime-ice-git
# 启用雾凇拼音
cat > ~/.config/ibus/rime/default.custom.yaml << EOF
patch:
__include: rime_ice_suggestion:/
EOF
# 修改候选方向
sed -i 's/horizontal: false/horizontal: true/' ~/.config/ibus/rime/build/ibus_rime.yaml
(3)使用ibus-libpinyin输入源(不建议)
ibus-libpinyin
存在众多问题,如:在导入词库后存在内存占用过高等等,建议使用上面的ibus-rime
安裝libpinyin
:
pacman -S ibus-libpinyin
在GNOME【设置】-【键盘】-【添加输入源】,选择【中文(智能拼音)】
下载与导入词库:
wget https://github.com/broly8/libpinyin-dict/raw/refs/heads/master/dict.txt
在GNOME【设置】-【键盘】-【中文(智能拼音)】-【…】-【首选项】-【用户数据】-【用户词典】-【导入】,选择下载的词库文件。导入的词条位于~/.cache/ibus/libpinyin
下。
3. fcitx输入法
(1)安装fcitx输入法
pacman -S fcitx5-im fcitx5-chinese-addons fcitx5-lua
yay fcitx5-input-support
打开【Fcitx配置】-【输入法】,将【拼音】移动到左边区域(如果安装了fcitx5-input-support,默认已经配置了)
Fcitx配置(
fcitx5-configtool
)修改的是~/.config/fcitx5/
下的文件
(2)配置主题
yay fcitx5-skin-fluentdark-git
打开【Fcitx配置】-【附加组件】-【界面】-【经典用户界面】-【配置】-【主题】,选择上述安装的主题
(3)安装词库
pacman -S fcitx5-pinyin-zhwiki
yay fcitx5-pinyin-sougou
yay fcitx5-pinyin-moegirl
打开【Fcitx配置】-【附加组件】-【输入法】-【拼音】-【配置】-【管理词库】-【配置】,在此处查询刚刚安装好的词库
自定义词库可拷贝至~/.local/share/fcitx5/pinyin/dictionaries/
(4)关闭单行模式
打开【Fcitx配置】-【全局选项】,取消勾选【在程序中显示预编辑文本】
(5)关闭冲突快捷键
打开【Fcitx配置】-【附加组件】-【模块】-【Unicode】-【配置】,删除【Control+Shift+U
】
打开【Fcitx配置】-【附加组件】-【模块】-【简繁转换】-【配置】,删除【Control+Shift+F
】
(6)支持GNOME
安装kimpanel插件以支持GNOME托盘:
yay gnome-shell-extension-kimpanel
在【扩展】应用中,启用【Input Method Panel】(可能需要重启系统才能看到此选项)
(7)支持Wayland:配置部分软件以原生Wayland启动,解决无法输入的问题
# Chrome
echo "--ozone-platform-hint=auto" > ~/.config/chrome-flags.conf
# Chromium
echo "--ozone-platform-hint=auto" > ~/.config/chromium-flags.conf
# Edge
echo "--ozone-platform-hint=auto" > ~/.config/microsoft-edge-stable-flags.conf
# VSCode
echo "--ozone-platform-hint=auto --enable-wayland-ime --wayland-text-input-version=3" > ~/.config/code-flags.conf
GNOME下xwayland应用(如钉钉、Typora)无法正常使用fcitx,暂时没找到解决方案,切换到ibus
4. 输入法词库转换
(1)imewlconverter
# 安装imewlconverter
yay imewlconverter
# 格式转换:scel(搜狗) -> txt(ibus-libipin)
imewlconverter -i:scel ./*.scel -o:libpy ~/Downloads/sougou_imewlconverter.txt
# (可选)txt排序去重
cd ~/Downloads
LC_ALL=C sort -u sougou_imewlconverter.txt -o sougou_imewlconverter_sort.txt
(2)scel2org5
# 安装scel2org5
pacman -S fcitx5-chinese-addons
# 格式转换:scel(搜狗) -> txt
find . -name "*.scel" -exec scel2org5 {} -o {}.txt \;
cat *.txt > ~/Downloads/sougou_scel2org5.txt
rm *.txt
# (可选)txt排序去重
cd ~/Downloads
LC_ALL=C sort -u sougou_scel2org5.txt -o sougou_scel2org5_sort.txt
(3)libime_pinyindict
# 安装ibime_pinyindict
pacman -S libime
# 格式转换:txt -> dict(fcitx)
libime_pinyindict sougou.txt -d ~/.local/share/fcitx5/pinyin/dictionaries/sougou.dict
# 格式转换:dict(fcitx) -> txt (需要提前安装fcitx5-pinyin-zhwiki)
libime_pinyindict -d /usr/share/fcitx5/pinyin/dictionaries/zhwiki.dict ~/Downloads/zhwiki.txt
(三)界面美化
1. 主题样式
# 主题
pacman -S orchis-theme
# 图标
pacman -S papirus-icon-theme
其它可选主题:arc-gtk-theme
、whitesur-gtk-theme
其它可选图标:numix-icon-theme
、numix-circle-icon-theme
2. 终端
安装字体:
yay ttf-meslo-nerd-font-powerlevel10k
修改终端字体:
xfce-terminal:【首选项】-【外观】- 选择
MesloLGS NF Regular
vscode:【设置】-【功能】-【终端】-
"terminal.integrated.fontFamily": "'MesloLGS NF'"
idea:【Editor】-【Color Scheme】-【Console Font】- 选择
MesloLGS NF
其它终端软件的字体配置类似
下载zsh主题powerlevel10k:
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
配置zsh主题powerlevel10k:
vim ~/.zshrc
# 删除原来的主题,修改为powerlevel10k主题
ZSH_THEME="powerlevel10k/powerlevel10k"
退出重进终端或执行source ~/.zshrc
,随后,在交互界面根据指引配置powerlevel10k。后续希望重新配置,可执行:p10k configure
。
3. GRUB
pacman -S grub-theme-vimix
sudo vim /etc/default/grub
# 设置GRUB界面等待时间(设置为0即可取消延迟启动GRUB)
GRUB_TIMEOUT=3
# 设置主题路径
GRUB_THEME="/usr/share/grub/themes/Vimix/theme.txt"
# 识别Windows启动路径
GRUB_DISABLE_OS_PROBER=false
# 备份GRUB配置文件
sudo cp /boot/grub/grub.cfg /boot/grub/grub.cfg.bak
# 重新生成GRUB配置文件
sudo grub-mkconfig -o /boot/grub/grub.cfg
grub-mkconfig
是一个危险操作!!!执行grub-mkconfig
前建议备份grub.cfg文件,使GRUB出现故障时也能及时回滚。例如:grub 2.04升级到2.12时,引入了fwsetup
命令,如果在执行grub-mkconfig
之前没有执行grub-install
,覆盖原有grub.cfg文件后,将会导致系统无法启动(详见官方说明)。这个时候有两种解决方案:1. 进入live系统,将之前的grub.cfg备份文件还原;2. 如果没有备份grub.cfg,也可以在GRUB命令行中,手动执行linux
、initrd
、boot
等操作进入系统,然后重新生成grub.cfg文件。
4. LightDM
(1)lightdm-gtk-greeter
安装LightDM配置界面程序:
pacman -S lightdm-gtk-greeter-settings
执行lightdm-gtk-greeter-settings-pkexec
进入配置界面。或直接修改配置文件:
sudo vim /etc/lightdm/lightdm-gtk-greeter.conf
[greeter]
theme-name = WhiteSur-Dark
icon-theme-name = Papirus-Dark
indicators = ~spacer;~clock;~spacer;~session;~power
clock-format = %Y-%m-%e(%a) %H:%M:%S
(2)lightdm-slick-greeter
安装lightdm-slick-greeter与其配置界面程序:
pacman -S lightdm-slick-greeter
yay lightdm-settings
执行sudo lightdm-settings
进入配置界面。或直接修改配置文件:
sudo vim /etc/lightdm/slick-greeter.conf
[Greeter]
content-align=center
background=/usr/share/pixmaps/desktop.jpg
theme-name=Orchis-Dark
icon-theme-name=Papirus-Dark
随后,修改默认greeter:
sudo vim /etc/lightdm/lightdm.conf
[Seat:*]
greeter-session=lightdm-slick-greeter
5. GNOME
安装GNOME扩展:
pacman -S gnome-shell-extensions gnome-shell-extension-dash-to-panel gnome-menus
yay gnome-shell-extension-blur-my-shell
在【扩展】应用中,打开扩展按钮,并启用Blur my Shell
、Dash to Panel
、Status Icons
、User Themes
等扩展。
安装GNOME优化:
pacman -S gnome-tweaks
在【优化】应用中,调整字体、外观等选项。
6. XFCE
(1)Dock栏
pacman -S plank
修复底部出现阴影问题:点击【设置】-【窗口管理器微调】-【合成器】,取消【在dock窗口下显示阴影】
(2)全局菜单
yay appmenu-glib-translator-git --asdeps
yay vala-panel-git --asdeps
yay vala-panel-appmenu-xfce-git
yay vala-panel-appmenu-registrar-git --asdeps
yay appmenu-gtk-module-git --asdeps
pacman -S xfce4-whiskermenu-plugin
安装完成后,在【面板首选项】中添加【Whisker菜单】和【全局菜单插件】项目,随后重启计算机。
JetBrains IDEA 关闭全局菜单的方式:
Ctrl + Shift + A
-> 输入Experimental Features
-> 取消勾选linux.native.menu
。
VSCode 关闭全局菜单的方式:将
window.titleBarStyle
配置项的native
修改为custom
。
(3)锁屏
安装i3lock
yay i3lock-fancy-rapid-git
让xflock4调用i3lock
xfconf-query -c xfce4-session -p /general/LockCommand -s "i3lock-fancy-rapid 5 3" --create -t string
(四)绑定快捷键
1. GNOME
在【设置】-【键盘】-【键盘快捷键】中,修改常用系统快捷键,或新增自定义快捷键:
名称 | 命令 | 快捷键 |
---|---|---|
打开终端 | kgx | Super + Enter |
交互式截图 | /usr/local/bin/flameshot.sh | Shfit + Super + S |
cat > ~/flameshot.sh << EOF
flameshot gui
EOF
chmod +x ~/flameshot.sh
sudo mv ~/flameshot.sh /usr/local/bin
快捷键配置一般存于dconf配置文件中,可以直接修改dconf来调整对应快捷键:
# 导航-将窗口右移一个工作区
dconf write /org/gnome/desktop/wm/keybindings/move-to-workspace-right "['<Shift><Control><Alt>Right']"
# 导航-将窗口左移一个工作区
dconf write /org/gnome/desktop/wm/keybindings/move-to-workspace-left "['<Shift><Control><Alt>Left']"
# 导航-切换到右侧工作区
dconf write /org/gnome/desktop/wm/keybindings/switch-to-workspace-right "['<Shift><Alt>Right']"
# 导航-切换到左侧工作区
dconf write /org/gnome/desktop/wm/keybindings/switch-to-workspace-left "['<Shift><Alt>Left']"
# 窗口-关闭窗口
dconf write /org/gnome/desktop/wm/keybindings/close "['<Super>q']"
# 打字-切换至上个输入源
dconf write /org/gnome/desktop/wm/keybindings/switch-input-source-backward "['<Shift><Control>space']"
# 打字-切换至下个输入源
dconf write /org/gnome/desktop/wm/keybindings/switch-input-source "['<Control>space']"
# 系统-显示全部应用
dconf write /org/gnome/shell/keybindings/toggle-application-view "['<Super>space']"
2. XFCE
(1)终端
进入【XFCE设置】-【XFCE终端设置】-【快捷键】界面:
- 【打开终端】设置为【Super + Enter】
(2)窗口
进入【XFCE设置】-【窗口管理器】-【键盘】界面:
【关闭窗口】设置为【Alt + Q】
【切换同一应用程序的窗口】设置为【Alt + `】
(3)应用
进入【XFCE设置】-【键盘】-【应用程序快捷键】界面:
- 【xfce4-appfinder】设置为【Alt + Space】
- 【exo-open –launch TerminalEmulator】设置为【Alt + Enter】
- 【xflock4】 设置为 【Super + L】
(五)其它
1. 支持蓝牙连接
# 安装蓝牙服务
pacman -S bluez bluez-utils blueman
# 启动蓝牙服务
sudo systemctl enable --now bluetooth.service
# 启动蓝牙前端应用
blueman-manager
2. 支持手机数据传输
# MTP支持
pacman -S mtpfs
# GNOME Files文件管理器集成
pacman -S gvfs-mtp
# 让其他用户也可以访问挂载点上的文件
vim /etc/fuse.conf
------------------------------
mtpfs -o allow_other ~/mnt
------------------------------
3. 设置LightDM免密登录
sudo vim /etc/lightdm/lightdm.conf
------------------------------
[Seat:*]
autologin-user=luanrz
------------------------------
默认启动
~/.dmrc
中配置的会话(如xfce),如果需要在自定义自动登录的启动会话,可指定autologin-session项
将当前用户加入autologin
组:
sudo groupadd autologin
sudo gpasswd -a luanrz autologin
4. 关闭蜂鸣器beep
# 临时关闭
sudo rmmod pcspkr
# 永久关闭
sudo vim /etc/modprobe.d/nobeep.conf
--------------------
blacklist pcspkr
--------------------
5. dconf配置备份与还原
cd ~/.config/dconf
# 备份
dconf dump / > user-dump
mv user user.bak
# 重置
dconf reset -f /
# 还原
dconf load / < ./user-dump