ArchLinux 旧记录归档
以前有一段时间,我主要用 ArchLinux。那时候留下了不少零散笔记:裸机安装、GNOME 桌面、ArchLinuxCN、Yay、Zsh、Docker、Samba、GRUB、WPS、OneDrive、Python 环境、命令行工具,还有几份已经找不到原文的 Yay 包清单。
这篇就是把那些没有必要继续单独放着的旧记录收在一起。它不是新的安装教程,也不是推荐清单,只是给自己留个索引:当时我到底装过什么、配过什么、迁移前又想保留哪些命令。
ArchLinux 本身挺好的。文档完整,包管理清楚,系统细节也摊得很开。这里写的是我当时的使用痕迹,不评价发行版本身。
裸机安装
我当时把裸机安装拆成几步:先处理磁盘和文件系统,再进 arch-chroot,最后补引导、网络、SSH 和普通用户。
parted /dev/sdb
mklabel gpt
# 或旧 BIOS 场景使用:
# mklabel msdos
cfdisk /dev/sdb
mkfs.ext4 /dev/sdb2
mkfs.fat -F 32 /dev/sdb1
mount /dev/sdb2 /mnt
mkdir /mnt/boot
mount /dev/sdb1 /mnt/boot后面是基础系统和引导:
vim /etc/pacman.d/mirrorlist
# Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
pacman -Syy
pacstrap /mnt base linux linux-firmware
genfstab -U /mnt >> /mnt/etc/fstab
arch-chroot /mnt
pacman -S grub efibootmgr
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
grub-mkconfig -o /boot/grub/grub.cfg
pacman -S vi networkmanager openssh sudo
systemctl enable NetworkManager
systemctl enable sshd现在看这段,最需要提醒自己的还是磁盘路径。/dev/sdb、/dev/sda 这种东西不能凭记忆敲,得按当时机器确认。
GNOME 桌面
桌面环境那套记录比较完整。我先装 GNOME 和 Nautilus 这类基础包,再启用 GDM。
sudo pacman -S gdm \
xdg-user-dirs-gtk \
gnome-shell \
gnome-control-center \
gnome-keyring \
gnome-menus \
gnome-terminal \
gnome-tweaks \
gnome-logs \
gnome-power-manager \
gnome-system-monitor \
nautilus
sudo systemctl enable gdmIntel 核显和 ArchLinuxCN 也放在这套桌面初始化里:
sudo pacman -S intel-media-sdk intel-gpu-tools vulkan-intel
sudo vi /etc/pacman.conf
[archlinuxcn]
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch
sudo pacman -Syy
sudo pacman -S archlinuxcn-keyring
sudo pacman -S yay桌面常用包我当时装得很全:
# 桌面常用包(安装用途)
yay -S alsa-utils # ALSA 声音工具
yay -S wqy-zenhei # 中文字体
yay -S ibus-libpinyin # IBus 拼音输入法
yay -S vlc # 视频播放器
yay -S telegram-desktop # Telegram 桌面客户端
yay -S chromium # Chromium 浏览器
yay -S remmina # 远程桌面客户端
yay -S gimp # 图片编辑
yay -S audacity # 音频编辑
yay -S inkscape # 矢量图编辑
yay -S wps-office # WPS Office
yay -S wps-office-mui-zh-cn # WPS Office 中文语言包
yay -S netease-cloud-music # 网易云音乐客户端GNOME 扩展和桌面美化也留了一串:
yay -S gnome-shell-extension-dash-to-dock-git gnome-shell-extension-bing-wallpaper \
newaita-icons-git chrome-gnome-shell ocs-url gvfs-smbYay 和包清单
Yay 是当时这套环境的核心工具之一。安装、查询、导出显式安装包清单,这几条命令反复出现。
sudo pacman -S archlinuxcn-keyring
sudo pacman -S yay
yay -Qe > soft/yay.Qe.txt
yay -Si yay当时还提到过几份备份:
# Yay 包清单备份文件(历史记录)
echo "yay.book.txt" # 70 个包
echo "yay.company.txt" # 78 个包
echo "yay.mini.txt" # 37 个包
echo "yay.workstation.txt" # 80 个包这些原始文件现在不在工作树里了,只剩下当时写过的说明。能恢复出来的包,我按用途放在下面。
基础构建与 Shell
# 基础构建与 Shell(常用基础工具)
yay -S base-devel # AUR 构建常用基础工具集合
yay -S fakeroot # 构建包时模拟 root 权限
yay -S binutils # 编译、链接和二进制处理工具
yay -S zsh # Shell
yay -S zsh-autosuggestions # Zsh 历史命令建议
yay -S zsh-completions # Zsh 补全扩展
yay -S zsh-syntax-highlighting # Zsh 命令高亮
yay -S pkgfile # 查询文件归属包(command-not-found 类体验)开发环境
# 开发环境相关包
yay -S git # 版本控制
yay -S visual-studio-code-bin # VS Code 二进制版本
yay -S jdk-temurin # Temurin JDK
yay -S python # Python 运行时
yay -S python-pip # Python 包管理工具
yay -S pyenv # Python 版本管理
yay -S nodejs # Node.js
yay -S npm # Node.js 包管理工具
yay -S maven # Java 构建工具
yay -S dotnet-sdk-bin # .NET SDK 二进制包
yay -S aspnet-targeting-pack-bin # ASP.NET 目标包服务端与同步
# 服务端与同步相关包
yay -S docker # 容器运行时
yay -S docker-compose # Docker Compose 包(后续常用 docker compose)
yay -S samba # SMB 文件共享
yay -S metasploit # 安全测试框架
yay -S onedrive-abraunegg # OneDrive 第三方同步客户端
yay -S zram-generator # systemd ZRAM 配置生成器工具与实验项
# 工具与实验项
yay -S grub-customizer # 图形化配置 GRUB
yay -S linux-lts # LTS 内核
yay -S anything-sync-daemon # 将指定目录同步到内存策略中,减少高频写盘
yay -S viddy # 增强版 watch 的命令输出观察工具
yay -S duf # 磁盘空间查看工具初始化和服务器
初始化脚本里,我主要在处理镜像源、Pacman keyring、ArchLinuxCN、Yay、Zsh 和 Docker。
sudo vim /etc/pacman.d/mirrorlist
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
killall gpg-agent
rm -rf /etc/pacman.d/gnupg/
pacman-key --init
pacman-key --populate archlinux
pacman -Syyu
pacman -S git openssh服务器那边更偏小主机和服务节点:
yay -S zsh zsh-autosuggestions zsh-completions zsh-syntax-highlighting pkgfile
yay -S git docker docker-compose samba
yay -S metasploit
yay -S jdk-temurin python nodejs
yay -S maven python-pip npm
yay -S dotnet-sdk-bin aspnet-targeting-pack-binDocker 和 Samba 的服务启用命令也一并留着:
sudo systemctl enable docker
sudo systemctl start docker
sudo groupadd -f docker
sudo usermod -aG docker $USER
sudo systemctl daemon-reload
sudo systemctl restart docker
sudo systemctl enable nmb smb
sudo systemctl start nmb smb小内存机器上还配过 ZRAM 和 2G 静态 swap:
[zram0]
zram-size = ram / 2
compression-algorithm = zstd
swap-priority = 100
fs-type = swapsudo dd if=/dev/zero of=/swapfile bs=1M count=2048 status=progress
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon --priority 99 /swapfile办公和同步
WPS 这段当时就是为了在 Linux 桌面上装主程序、中文包、字体和 MIME 支持。
yay -S wps-office
yay -S wps-office-mui-zh-cn当时还记了可选依赖:
cups
libjpeg-turbo
pango
curl
ttf-wps-fonts
ttf-ms-fonts
wps-office-fonts
wps-office-mime
wps-office-mui-zh-cn原脚本里标注过这几个已经装了:
libjpeg-turbo
pango
curlOneDrive 同步主要留下了安装、查看配置、dry-run 和正式同步这几步。
yay -S onedrive-abraunegg
onedrive --display-config
onedrive --synchronize --verbose --dry-run
onedrive --synchronize同步目录和账号信息没有放进正文,只保留命令形态。
其他片段
Termux 里也试过 PRoot-Distro 的 ArchLinux / ArchLinux ARM:
proot-distro install archlinux
proot-distro login archlinux
echo 'Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxarm/$arch/$repo' >> /etc/pacman.d/mirrorlistDocker 那边还留下过一个观察:以前常见的是 docker-compose 包,后来更常用 Docker Compose plugin,也就是 docker compose。
tools.md 里还写过一句对 ArchLinux 的主观评价。那就是当时的个人感受,留在页面里就行,不在这里展开。
回头看
这些旧记录放在一起,能看出当时的使用路径:先装系统,再补桌面和输入法;桌面能用之后,开始补开发环境、Docker、Samba、同步工具;最后再把显式安装包导出来,给下一台机器复用。
它们现在不一定还是最佳写法,但作为旧记录是有价值的。以后再看到某条 yay -S 或某段 pacman 命令,至少知道它曾经属于哪一段使用经历。