实话实说:Arch Linux有点让人望而生畏。但如果你喜欢尝试,并且想完全掌控你的树莓派,它却是个不错的选择。不过有个问题:标准版的Arch无法在树莓派上运行,需要一个特殊的ARM版本才能运行,接下来我会详细介绍如何安装运行。
你可以通过下载Arch Linux的“ARM”版(而非主发行版)在树莓派上安装Arch Linux。它是专为ARM处理器构建的,可在所有近期的树莓派型号上运行。
安装过程比典型的操作系统设置稍长,但比看起来更直接。在这个过程中你会学到很多关于Linux如何工作的知识。让我来教你如何构建自己的ArchPi。
在树莓派上安装Arch Linux需要些什么
在开始安装步骤之前,我们先快速检查一下是否有在树莓派上安装Arch所需的硬件和软件。
硬件
以下部件包括你可能已经用于树莓派的标准外设。值得注意的是需要一个U盘。
树莓派:目前支持Arch的型号有树莓派4、3、2和Zero 2。Arch至少需要512MB内存,这些受支持的型号都有足够的RAM。我推荐标准型号,如树莓派4B或3B+,以获得更强的计算能力。
电源适配器:使用官方树莓派电源,以避免电压不足的问题。
键盘和鼠标:我插入了标准的USB键盘和鼠标。如果需要,你可以在这里找到我推荐的键盘。
SD卡:8GB的SD卡足够安装Arch,但我推荐32GB或更大。这是我目前最喜欢的SD卡,列出了我的基准测试结果。
U盘:你将从U盘启动树莓派。这样可以把SD卡解放出来安装Arch。
软件
树莓派操作系统:安装Arch需要Linux环境,树莓派操作系统将提供完成安装所需的工具。
树莓派Imager:我们通常用来安装树莓派操作系统的工具。在本教程中,我们将使用Imager创建可启动U盘。
Arch Linux ARM:安装这个操作系统是你的最终目标。有时被称为ALARM,这个Linux发行版是支持树莓派处理器的Arch变种。
1.安装前:用树莓派操作系统制作可启动U盘
安装Arch的最佳方式是从另一个正在运行的Linux系统进行安装。因此,第一步我们将创建一个启动到树莓派操作系统的U盘。这样,你将有一个Linux环境来操作,同时释放SD卡插槽用于Arch。
注意:我认为在本指南中使用U盘更方便。但另一种方法是使用两张SD卡——一张安装Linux系统,另一张插入USB SD卡读卡器。
1.1 用树莓派操作系统创建可启动U盘
以下是创建启动树莓派操作系统的U盘的步骤:
启动树莓派Imager,并进行以下选择。如果你还没有Imager,可以在这里下载。https://www.raspberrypi.com/software/
设备:选择你的型号。在本例中,我将使用树莓派4。
操作系统:树莓派操作系统Lite。我们不需要完整的图形用户界面(GUI),选择Lite可以节省下载和安装时间。
存储:插入U盘并在此选择。
自定义:我建议设置创建第一个用户的选项,或者如果你想在遵循本指南的同时复制/粘贴,则启用SSH。(更多详情,请查看我的树莓派Imager入门完整指南:https://raspberrytips.com/raspberry-pi-imager-guide/)
写入:点击“WRITE”开始过程。
现在U盘上有了Linux系统,我们需要告诉树莓派加载它。
1.2 为树莓派开启USB启动
树莓派从USB启动的步骤取决于你的板型。找到你的型号并跳转到下面的相应小节。
为较新的树莓派板开启USB启动
较新的树莓派型号,如Pi 5 / 500 / 500+、Pi 4 / 400和Pi 3B+,应该已经支持开箱即用的USB启动。
以下是开启USB启动的方法:
启动树莓派软件配置工具:
sudo raspi-config
导航至高级选项 -> 启动顺序。
选择NVMe/USB启动:
退出工具。
插入U盘到树莓派准备。
重启树莓派。
为较旧的树莓派板开启USB启动
较旧的型号,如Pi 3B、Pi 3A+、Pi 2B,可能需要做更复杂的操作。你必须为这些型号开启USB主机启动模式并编程这些主板从USB启动。
警告:进行此更改是永久性的,因为它会对你的主板进行编程。
启用USB主机模式:
echo program_usb_boot_mode=1 | sudo tee -a /boot/firmware/config.txt
重启:
sudo reboot now
验证更改:
vcgencmd otp_dump | grep 17:
成功:如果在输出中看到0x3020000a,你的主板已成功编程。
从配置文件中移除命令:
sudo sed -i 's/program_usb_boot_mode=1//g' /boot/config.txt
1.3 从USB启动
现在是时候启动到树莓派操作系统了。
移除SD卡,插入U盘。
启动树莓派。
使用你之前用Imager创建的用户账户登录。
你已经越过了第一个障碍。你现在直接从U盘运行树莓派操作系统。这意味着你现在有一个可用的Linux环境用于安装过程,并且你的SD卡可以自由地接受Arch。
2.安装前:为Arch准备SD卡
现在你正在从U盘运行Linux系统,你可以准备SD卡用于Arch Linux。主要步骤是:
识别SD卡卷。
格式化以创建新的分区表。
挂载分区以便我们可以将文件复制到上面。
让我们详细介绍每个步骤。
2.1 确定你的SD卡名称
首先,将你想用于Arch的SD卡插入树莓派。
操作系统会自动为你的SD卡分配一个设备名称。让我们用fdisk找出它是什么:
sudo fdisk -l
设备名称跟在/dev/后面,所以在我上面的例子中,设备名称是:mmcblk0。在大多数情况下这是默认的。
(我们需要整个设备的名称,所以我们不想要mmcblk0p1或mmcblk0p2,这些指的是它的分区。)
2.2 删除现有分区
接下来,我们开始编辑SD卡上的分区:
使用设备名称与fdisk:
sudo fdisk /dev/mmcblk0
(如果你有不同的设备名称则进行更改。)
在fdisk实用程序中,你可以预览所有命令:m。
删除SD卡的分区表以获得一个干净的开始:o。
列出所有现有分区,现在应该没有:p。
2.3 为Arch Linux创建新分区
然后,你将继续使用fdisk实用程序创建两个新分区以安装Arch。
分区 #1: 启动
你将创建的第一个分区是启动分区:
创建新分区:n。
使其类型为主分区:p。
使其为第一个分区:1。
当提示“First sector”时:输入(接受默认值)。
当提示“Last sector”时:+512M。
这将使你的启动分区为512MB。我建议使用这个较大的值以避免以后出现问题,并获得更好的Arch体验。如果你不能节省存储空间,可以使用最小值+200M。
更改文件系统类型:t。
将其设置为W95 FAT32:c。(这种格式与启动加载器易于兼容。)
分区 #2:根
你将创建的第二个分区将包含操作系统文件和所有用户文件。以下是创建根分区的方法:
创建新分区:n。
使其类型为主分区:p。
使其为第二个分区:2。
当提示“First sector”时:回车。
这个默认值从第一个分区结束的地方开始第二个分区。
当提示“Last sector”时:回车。
这个默认值意味着使用SD卡上所有剩余空间。
这次你不需要设置文件系统类型。这个分区需要是Linux类型分区,默认已经是。
回顾你提议的更改:p。
它应该类似于下面的图像,除了存储大小将与你的SD卡匹配。
最终确定你的更改:w。
检查它是否正确写入:
sudo fdisk -l
两个分区——启动和根——一切按计划进行。
2.4 挂载文件系统
安装Arch Linux ARM与其他操作系统的过程不同:没有一个安装程序引导你完成。相反,你要手动复制操作系统文件。
为了准备这个过程,你将挂载你刚刚创建的分区。还有一种复杂的说法,即你将获得访问SD卡复制文件的权限。Download now
格式化并挂载启动分区
在SD卡的启动分区上创建FAT32文件系统:
sudo mkfs.vfat /dev/mmcblk0p1
创建一个临时目录用于挂载:
mkdir boot
将启动分区挂载到该目录:
sudo mount /dev/mmcblk0p1 boot
格式化并挂载根分区
你将重复类似的步骤来挂载根分区,但这次你将创建一个ext4文件系统。ext4文件系统是用户文件的强大Linux默认选择。
创建ext4文件系统:
sudo mkfs.ext4 /dev/mmcblk0p2
(注意:如果你的系统似乎在“Creating Journal”上挂起,请耐心等待——它仍在处理。等到它说“done”并返回到命令行。)
创建一个临时目录用于挂载:
mkdir root
将SD卡的根分区挂载到该目录:
sudo mount /dev/mmcblk0p2 root
成功!现在你已经创建了分区并且可以在系统上访问它们,你可以将Arch安装到SD卡上了。
3.在树莓派上安装Arch Linux ARM
现在你已经用适当的分区格式化了SD卡,是时候安装Arch了。主要步骤是:
下载Arch Linux ARM操作系统。
直接将其文件提取到树莓派的SD卡上。
激活启动加载器。
让我们详细介绍每个步骤。
3.1 下载Arch Linux ARM
首先,我们需要从Arch Linux ARM的下载页面获取Arch。
https://archlinuxarm.org/about/downloads
你需要的文件取决于你拥有的Pi型号。
对于树莓派4、3B+和Zero 2:你需要ARMv8文件。
对于树莓派2:你需要ARMv7文件。
对于树莓派5:截至本次更新,此型号未正式支持。
在此查看更新列表:https://archlinuxarm.org/about/downloads
使用wget下载你选择的版本。例如:
wget http://os.archlinuxarm.org/os/ArchLinuxARM-rpi-aarch64-latest.tar.gz
3.2 提取Arch Linux ARM存档
接下来,你必须以一种特殊的方式解压此存档——保留文件属性——以正确安装Arch。对于此任务,我们将使用bsdtar命令。
安装 bsdtar:
sudo apt install libarchive-tools
你必须以root用户身份运行bsdtar。仅仅添加sudo是不够的。因此,让我们提升到root用户以完成本节的剩余步骤:
sudo su
将存档提取到SD卡上挂载的根分区:
bsdtar -xpf ArchLinuxARM-rpi-aarch64-latest.tar.gz -C root
(注意:请耐心等待——它可能看起来像你的系统冻结了,但它只是在后台默默地提取文件。当它将你送回到命令行时,你就知道它完成了。)
提交更改:
sync
3.3 使启动加载器激活
然后,我们必须将适当的文件复制到SD卡上的启动分区,并准备在启动Arch时正确加载。
移动启动文件
由于所有内容都被提取到了一个目录中,我们需要将启动文件移动到它们适当的分区。
移动启动文件:
mv root/boot/* boot
检查你的fstab以正确启动
Fstab是一个系统文件,指示Arch如何在启动时挂载特定分区。
问题:Arch需要被fstab明确告知启动分区在哪里。
解决方案:
对于树莓派3A和Pi 2:fstab默认已经是正确的。跳到下一部分,安全关机以准备首次启动。
对于树莓派4、3B+和Pi Zero 2:它默认设置为错误的设备号,因此在首次加载Arch时找不到启动分区。因此,你必须编辑fstab以解决此问题。
为树莓派4、3B+和Pi Zero 2修复fstab
重要:如果你不对fstab进行以下更改,Arch将无法启动并将你送入紧急模式。
查看当前fstab:
cat root/etc/fstab
修改文件:
sed -i 's/mmcblk0/mmcblk1/g' root/etc/fstab
回顾更改:
cat root/etc/fstab
3.4 安全关机以准备首次启动
最后,我们完成了,并且需要为首次启动到Arch做好准备:
卸载SD卡分区:
umount boot root
关机
shutdown now
拔出U盘:我们只需要使用这个系统进行安装,但现在我们已经完成了。在本指南的其余部分中,你将不再需要它。
在下一节中,你将首次启动到Arch。
4.树莓派上首次启动Arch Linux
现在你已经安装了操作系统,你准备启动到Arch。你的目标是激活系统并为其使用进行配置。在本节中,主要步骤是:
首次登录。
连接到互联网。
配置本地设置。
初始化Arch软件包管理器。
更改默认用户账户。
让我们详细介绍每个步骤。
4.1 登录
再次启动你的系统。你将看到你的Pi在寻找U盘,当它找不到时,它将从你的SD卡启动到Arch。
作为默认用户登录:
默认用户登录名和密码:
alarm / alarm
默认root登录名和密码:
root / root
我建议在使用root用户进行后续步骤中的sudo设置之前,用root用户配置所有内容。
4.2 连接到互联网
如果你使用的是以太网电缆,你的互联网连接可能已经工作了。测试一下:
ping archlinux.org
如果你得到响应,你就在线了。
Wi-Fi
如果你需要使用Wi-Fi连接,你必须首先设置它:
wifi-menu
选择你的网络并按Enter。再次按Enter为连接分配一个默认名称。接下来,系统将提示你输入Wi-Fi密码。完成后,你应该就连接上了。测试一下:
ping archlinux.org
如果你得到响应,你就在线了。
4.3 配置本地化
你将配置你的Arch系统,使其理解你的语言、时区和其他本地设置。
键盘布局
默认键盘是us。如果你需要更改键盘布局,首先搜索你的键位图:
localectl list-keymaps | grep -i [yourlanguage]
搜索你的语言(例如法语)
localectl list-keymaps | grep -i fr
设置你的键位图(将us替换为你上面选择的键位图)
loadkeys us
时区
要设置你的时钟,你必须告诉Arch你的本地时区是什么。
使用类似以下的命令搜索可用时区:
timedatectl list-timezones | grep -i europe
记下哪个与你的位置匹配。
使用你选择的时区设置时区:
timedatectl set-timezone Europe/London
检查你的新时区:
timedatectl status
用户区域设置
设置你的区域对于显示你的语言、货币、符号以及你国家特有的其他标准很重要。
打开区域设置列表:
nano /etc/locale.gen
选择你的区域设置:
向下滚动找到你的语言-国家-字符集。如果不确定,请选择UTF-8作为字符集。
取消注释该行:删除前面的#符号以取消注释该行。在下面的例子中,我选择了英语-美国-UTF8。
保存:Ctrl+X退出。Y确认。Enter保存。
生成:
locale-gen
回顾更改:
locale -a
4.4 初始化Arch的软件包管理器:Pacman
Arch的软件包管理器pacman是你将用来安装软件的方式。Pacman从仓库下载并安装软件包——在这种情况下,是Arch Linux ARM仓库。以下步骤将激活pacman并确保你获得签名的软件包。
首先提升到root:
su
初始化pacman:
pacman-key --initpacman-key --populate archlinuxarm
4.4 出于安全考虑更改默认账户
你将更改默认登录详情以保护你的系统。请直接以root身份登录完成以下步骤,使用exit命令注销。你可能需要这样做两次,直到你返回到登录屏幕。现在以root身份登录。
更改root密码
更改你的root密码:
passwd
更改默认用户账户
使用usermod -l [新用户名] [旧用户名]更改默认用户名:
usermod -l pat alarm
更改用户密码:
passwd pat
使用usermod -d /home/[新用户] -m [新用户]更改家目录:
usermod -d /home/pat -m pat
授予你的用户sudo权限
你希望你的用户账户具有管理员权限,以便你可以更新系统并安装新软件包。这是通过授予你的用户sudo权限来实现的。
安装sudo软件包:
pacman -S sudo
使用特殊命令编辑/etc/sudoers文件:
EDITOR=nano visudo
添加你的用户:
向下滚动到“User privilege specification”
在“root”条目下方添加你的用户名。使其余部分与“root”条目匹配。
下面的例子显示了sudo权限被授予用户‘pi’
保存:Ctrl+X,Y,Enter。
以你的新用户身份登录:exit直到你返回到登录屏幕。以你的新用户名登录,sudo命令应该对你有效了。
4.5 完成
重启:
systemctl reboot now
欢迎使用你正常工作的Arch系统。继续阅读以了解如何获取新软件并安装桌面环境。
5.安装后:获取新软件包和桌面环境
现在你已经完成了系统配置,还剩下什么要做?为了充分利用Arch,你将想使用pacman获取新程序。在这一步中,我将向你展示如何更新系统、安装软件包以及设置图形桌面环境。
5.1 使用Pacman:命令速查表
更新一切:
pacman -Syu
安装一个软件包:
pacman -S <pkgname>
搜索软件包名称:
pacman -Ss <yourkeyword>
卸载特定软件包:
pacman -Rsc <pkgname>
5.2 更新系统软件包
让我们首先获取软件包列表并更新我们现有的软件包:
sudo pacman -Syu
提示:首次运行pacman时,你可能会得到一个令人困惑的提示,要求你选择一个提供者。对于新用户来说,默认的是最好的。
确认,Y,继续安装。你现在将看到所有软件包下载并更新。
注意:在首次更新期间,你可能会看到关于缺失固件模块的警告。这没关系;这些警告在Arch中很常见,它们与你的Pi未使用的硬件相关。
5.3 安装新软件包
要查找可用的程序和实用工具,请使用sudo pacman -Ss <关键词>搜索仓库。以下是一个例子:
搜索软件包:
sudo pacman -Ss neofetch
安装软件包:
sudo pacman -S neofetch
你可能想安装的其他软件包:
wget:从命令行下载文件。
udiskie:自动挂载可移动媒体,如U盘。
zip:将文件压缩为zip存档。
unzip:解压压缩的zip存档。
unrar:解压压缩的rar存档。
yay:允许你从AUR(Arch用户仓库)安装第三方软件包。
5.4 安装桌面环境
由于Arch没有GUI,你需要安装自己的。在Linux术语中,GUI被称为桌面环境(DE)。Arch支持许多DE,可以选择你最喜欢的一个。
每个的安装过程可能略有不同,但以下是总体步骤:
安装DE的元软件包:元软件包安装许多其他软件包,以提供完整的桌面体验。
安装显示管理器:图形显示管理器使你能够自动启动到带有GUI登录的桌面。不要忘记在安装后启用显示管理器。
安装终端模拟器:在DE内工作的命令提示符。
安装网络浏览器:Chromium、Firefox等让你能够浏览网页。
重启并登录。
5.5 桌面环境安装示例:XFCE
我常常倾向于推荐我最喜欢的桌面环境:Cinnamon和KDE Plasma。不幸的是,我遇到了它们崩溃的问题——这些问题我在其他硬件/发行版上没有遇到过。相反,在下面的例子中,我将向你展示如何安装一个受欢迎且轻量级的桌面环境:XFCE。
安装XFCE元软件包:
sudo pacman -S xfce4 xfce4-goodies
安装LightDM显示管理器并启用它:
sudo pacman -S lightdm lightdm-gtk-greeter
sudo systemctl enable lightdm
安装网络管理器(如果你需要Wi-Fi):
sudo pacman -S networkmanager network-manager-applet
安装终端模拟器:xfce4-terminal已经由上面的元软件包安装。
安装网络浏览器:
sudo pacman -S chromium
重启:
systemctl reboot now
如果你看到图形显示管理器提示你登录,成功!
恭喜你,你现在在树莓派上运行Arch了!如果你在蓝牙、板载传感器或I/O引脚方面遇到硬件问题,请查看专门针对Pi的Arch Linux ARM维基。
https://archlinuxarm.org/wiki/Raspberry_Pi
如果你需要进一步支持,古老的Arch维基将提供许多其他人已经解决的问题的答案。
https://wiki.archlinux.org/
前进吧,享受你的新ArchPi的力量。有了它,你几乎可以实现任何你能想象到的梦想。现在你也可以说,“我使用的是Arch”。
扫码加入树莓派交流群!
Tip:对于刚接触树莓派的新手来说,面对英文文档、零散教程和复杂配置,很容易无从下手。pidoc.cn( https://pidoc.cn/ )就是为解决这些痛点而生的树莓派中文一站式学习平台,界面清晰、内容系统、更新及时,堪称新手入门的“保姆级” 网站,让零基础用户也能轻松上手树莓派。
912