树莓派3B安装 Arch Linux ARM

Arch 并不是一个对新手友好的发行版。于是打算用闲置的树莓派先试个水。吃灰太浪费了。

安装

分两个区,比较好的方式是第一个分区分为 100M 的 fat32,第二个利用余下的空间分为 ext4。

# as root
fdisk /dev/sdX
mkfs.vfat /dev/sdX1
mkfs.ext4 /dev/sdX2

需要注意的是上面的命令实际上把 sdX1 格式化为 fat16,但是并没有什么影响。也可以 mkfs.vfat -F 32 /dev/sdX1 强制分为 fat32。

把它们挂载到喜欢的地方,然后下载安装包并解压,这里用到了 bsdtar

wget http://mirrors.ustc.edu.cn/archlinuxarm/os/ArchLinuxARM-rpi-3-latest.tar.gz
# 或 wget http://os.archlinuxarm.org/os/ArchLinuxARM-rpi-3-latest.tar.gz
su
bsdtar -xpf ArchLinuxARM-rpi-3-latest.tar.gz -C <root>
sync
mv <root>/boot/* <boot>
sync
sync

<root> 是 sdX2 挂载的地方,<boot> 是 sdX1 挂载的地方。 为了安全多 sync 几次。

将 micro SD 卡插到派上应该就可以了,启动到终端登陆页面时,绿色指示灯会以两下为周期规律闪烁,如果显示屏不显示可能是显示的问题。

软件源

vi /etc/pacman.d/mirrorlist

注释掉默认的,添加中科大源

Server = https://mirrors.ustc.edu.cn/archlinuxarm/$arch/$repo

参考 中科大 Arch Linux ARM 镜像使用帮助

创建自己的账户

useradd -m -G wheel <username>

sudo

pacman -S sudo

visudo 或用自己喜欢的编辑器打开 /etc/sudoers ,将 %wheel ALL=(ALL) ALL 一行取消注释。

安装软件的签名问题

报错是这样的:

failed to commit transaction invalid or corrupted package (PGP signature)

运行

pacman-key --init
pacman-key --populate

即可

其他

后面就可以按照 Arch Wiki 安装了,只有一点点不同。一些零碎的整理在下面。
两个传送门: Installation guide (简体中文) Raspberry Pi (简体中文)

  • 一些驱动
sudo pacman -S firmware-raspberrypi

没多探究这是啥,看到有就装上了。

  • 音频
sudo pacman -S alsa-utils alsa-firmware alsa-lib alsa-plugins

设置自动选择音频输出

amixer cset numid=3 0
sudo pacman -S xf86-video-fbdev xorg

性能不错。

sudo pacman -S lxde
sudo systemctl enable lxdm

~/.xinitrc 中添加

exec startlxde
  • 显示设置

树莓派没有正确地自动设置我的 1080p 屏,其他分辨率可以参考 这里

#1080p  60Hz
hdmi_group=2
hdmi_mode=82
#1440x900  60Hz
hdmi_group=2
hdmi_mode=47
sudo pacman -S networkmanager network-manager-applet
sudo systemctl enable NetworkManager
sudo systemctl start NetworkManager
sudo pacman -S wireless_tools wpa_supplicant

似乎没能正确和我的耳机配对,我也不太用

sudo pacman -S bluez bluez-utils blueman
sudo systemctl enable bluetooth
sudo systemctl start bluetooth
  • 域名解析不了

可以 ping 8.8.8.8 等但是不能 ping baidu.com

发现是 /etc/nsswitch.conf 禁用了 dns,文件内容如下

# Name Service Switch configuration file.
# See nsswitch.conf(5) for details.

passwd: files mymachines systemd
group: files mymachines systemd
shadow: files

publickey: files

hosts: files mymachines myhostname resolve [!UNAVAIL=return] dns
networks: files

protocols: files
services: files
ethers: files
rpc: files

netgroup: files

删除 [!UNAVAIL=return] 即可。

sudo pacman -S fcitx fcitx-sunpinyin fcitx-qt5

~/.pam_environment 中加入

GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx

如果 Qt 程序下不能切换输入法,可以用 fcitx-diagnose 检查是否有错误配置。

  • 自动挂载和回收站

PCManFM 是 LXDE 的默认文件管理器,默认不能自动挂载也没有回收站。回收站由 gvfs 实现。

sudo pacman -S udisks2 gvfs
sudo vim /usr/share/polkit-1/actions/org.freedesktop.UDisks2.policy

修改 allow_any 一行为 <allow_any>yes</allow_any>

  • 安装 yay
sudo pacman -S git base-devel go
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si

AUR 源修改 AUR 镜像使用帮助

yay --aururl "https://aur.tuna.tsinghua.edu.cn" --save

今天中科大源宕机了,愿他们早日恢复~

树莓派3只有 1G 的内存,不足以支持编译开发工作。我们可以建立 swap 文件来解决,通常是内存的 1-2 倍大小。

# as root
fallocate -l 2G /swapfile
# /swapfile 名称可以按需自定义,比如我是 /var/swap
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile

然后修改 /etc/fstab 加入

/swapfile none swap defaults 0 0

swapon -s 可以看到已经生效了, free -m 可以查看使用情况。

  • 删掉系统自带的普通账户
sudo userdel -r alarm
  • 视频

综合看 Vlc 比较好。我们没有现成的 Raspbian 上的 omxplayer 用,视频体验大打折扣。

sudo pacman -S vlc

By SDUST weilinfox

版权声明:本页面文字除了外部链接外允许在 CC-BY-SA 4.0 的协议下使用。

原文地址:https://www.cnblogs.com/weilinfox/p/12683275.html

posted @ 2020-04-12 00:14  八衛門狸  阅读(560)  评论(0编辑  收藏