【NOTE】树莓派4B使用archlinux aarch64
2024年2月1日上午7:50
吃灰好几个月的树莓派被我翻出来了,apt用着太不习惯了,就想着换回吃豆人
清点
树莓派4B 4GB内存 有屏幕有键鼠,接网线,32GB内存卡
攻略
archlinuxarm官方的wiki【小部分内容是过时的且不宜使用的 截至20240131】
https://archlinuxarm.org/platforms/armv8/broadcom/raspberry-pi-4
大部分内容都没问题,开干吧!
开始吧
操作环境为linux系统
- 在北外的开源站上 https://mirrors.bfsu.edu.cn/archlinuxarm/os/ 找到ArchLinuxARM-rpi-aarch64-latest.tar.gz下载(包名可能会变所以不放直链)
- 读卡器插卡接上PC,用fdisk分区,跟wiki的操作几乎一毛一样(除了不用wget再下载一次)。不要使用gpt分区格式,在第七步umount前暂停下,需要额外处理下boot分区
- uboot应该是有问题的,这样直接插树莓派会出现
mmc1: unrecognized SCR structure version 4``mmc1: error -22 whilst initialising SD card
的提示(不懂,后续学下),根据论坛上老哥给出的处理方法。修改boot分区下的uboot.txt的以booti开头的两行,用vim直接改就行,内容放在最后面 - 安装uboot-tools
pacman -S uboot-tools
,然后在boot分区下执行./mksrc
- umount后插卡到树莓派开机,不要执行wiki的sed操作,可能是过时的内容,实操发现SD卡设备名并没有变成mmcblk1,而是默认的mmcblk0,所以不用改。
uboot.txt的内容如下
# After modifying, run ./mkscr
# Set root partition to the second partition of boot device
part uuid {devtype}{devnum}:2 uuid
setenv bootargs console=ttyS1,115200 console=tty0 root=PARTUUID={uuid} rw rootwait smsc95xx.macaddr="{usbethaddr}"
if load {devtype}{devnum}:{bootpart}{kernel_addr_r} /Image; then
if load {devtype}{devnum}:{bootpart}{fdt_addr_r} /dtbs/{fdtfile}; then
if load{devtype} {devnum}:{bootpart} {ramdisk_addr_r} /initramfs-linux.img; then
# booti{kernel_addr_r} {ramdisk_addr_r}:{filesize} {fdt_addr_r}; # 修改
booti{kernel_addr_r} {ramdisk_addr_r}:{filesize} {fdt_addr};
else
# booti{kernel_addr_r} - {fdt_addr_r}; # 修改
booti{kernel_addr_r} - ${fdt_addr};
fi;
fi;
fi
然后
这样应该就能启动成功了,如果没有网线的话,可以连下wifi,wifi-menu
按提示连接就行
默认用户名是alarm:alarm以及root:root。ssh默认不允许root登录。
第一件事当然是先换源,参考https://mirrors.bfsu.edu.cn/help/archlinuxarm/
然后
pacman-key --init
pacman-key --populate archlinuxarm
pacman -Syyu
reboot
pacman -S vim sudo
后面好像没啥需要再说明的了。