树莓派Manjaro体验
警告:下面的教程仅仅是记录自己的尝试过程,并非教程,请勿按照下面的教程烧录系统。
如果按照个人喜好来说,我更加喜欢Arch系的Manjaro,因为很多Ubuntu下,一些虽然很小但是让人很不舒服的问题,在Manjaro下很简单就能解决或是压根不存在。仓库方面pacman就比apt要丰富的多,或者是再加上yay,基本上能满足我的所有需求。安装一个tim或者是微信只需一个命令,根本就不需要Ubuntu下面wine折腾框架,字体,启动环境。每次在Ubuntu下想安装一个自己日常而非工作使用的Ubuntu桌面版都是让我非常头疼的一件事。但是考虑到工作使用,很多硬件平台官方支持的是Ubuntu(比如Jetson)。为了避免不必要的麻烦,我还是持着“用Manjaro也就图一乐,真要干活还得Ubuntu”的原则。
但是到了树莓派上,还是尝尝鲜吧,之前使用官方的Raspbian,使用体验属实不好,这次就试试Manjaro ARM,看它能不能满足我的需求吧。
烧录系统
- 登录https://manjaro.org/download/,选择ARM v8,随便选一个自己喜欢的发行版下载,我这里选择KDE。
要安装Arch系的ARM系统,Arch官方文档要求的是需要有一台Linux系统的主机,将下载好的文件直接右键-Disk Image Writer,直接选下载好的镜像烧录即可(我的系统是Ubuntu 18.04,居然有这么傻瓜化的GUI烧录,好评!)。然后静静等待烧录结束。
然后,淦,没点亮成功,我佛了。我树莓派坏了吧。行,我们来尝试一下Arch官方的教程,首先查看插入的SD卡对应分区
sudo fdisk -l
查看输出,得知SD卡挂载在
/dev/sdb
Disk /dev/sdb: 29 GiB, 31104958464 bytes, 60751872 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x5b712f04 Device Boot Start End Sectors Size Id Type /dev/sdb1 2048 60749823 60747776 29G c W95 FAT32 (LBA)
在SD卡挂载的分区启动fdisk
sudo fdisk /dev/sdb
删除旧分区,建立新分区,下面是对应的步骤
- 输入o,清除分区
- 输入p,列出分区,现在应该没有分区剩下
- 输入n,再输入p设置成primary type,输入1进入第一个分区,回车设置默认的分区大小,再输入+100M设置最后一个分区
- 输入t,再输入c把第一个分区的类型设置成W95 FAT32(LBA)
- 输入n,输入p,输入2,连续输入回车两次
- 输入w写入分区
创建并且挂载FAT filesystem:
mkfs.vfat /dev/sdb1 mkdir boot mount /dev/sdb1 boot
创建并挂载ext4 filesystem:
mkfs.ext4 /dev/sdX2 mkdir root mount /dev/sdX2 root
下载并解压根文件系统(注意这里是直接sudo su 在root下输入命令)
wget http://os.archlinuxarm.org/os/ArchLinuxARM-rpi-2-latest.tar.gz bsdtar -xpf ArchLinuxARM-rpi-2-latest.tar.gz -C root sync
然而会报如下的错误
bsdtar: Ignoring malformed pax extended attribute bsdtar: Error exit delayed from previous errors.
查了一下发现是需要bsdtar版本需要3.3以上,直接在git上安装最新版本(建议先去github看下最新版本的版本号,然后对下面的命令进行更改)
wget http步骤s://github.com/libarchive/libarchive/archive/v3.4.0.tar.gz tar xf v3.4.0.tar.gz cd libarchive-3.4.0 cmake . make -j8 make install -j8
编译成功后输入
bsdtar --help
查看下版本号是不是3.4.0,如果是的话就继续进行刚才的步骤。把boot文件移动到第一个分区
mv root/boot/* boot
解除挂载
umount boot root
插上SD卡和电源,开机但是发现黑屏,比较脑瘫的事情就是烧写好的系统默认是没有HDMI输出的。这里将SD卡取出,修改config.txt文件(先备份),在下面加入
hdmi_force_hotplug=1 #强制使用HDMI输出 config_hdmi_boost=4 #HDMI信号增强 hdmi_group=2 #HDMI输出适配与计算机显示器 hdmi_mode=9 #HDMI输出的分辨率及刷新频率 hdmi_ignore_edid=0xa5000080 #禁止树莓派检测显示器分辨率,直接使用配置文件中指定的分辨率输出 disable_overscan=1 #禁止黑边
修改之后重新插入SD卡链接显示器就有视频输出了
常用的分辨率
hdmi_mode=4 640x480 60Hz hdmi_mode=9 800x600 60Hz hdmi_mode=16 1024x768 60Hz hdmi_mode=23 1280x768 60Hz hdmi_mode=32 1280x960 60Hz hdmi_mode=35 1280x1024 60Hz hdmi_mode=39 1360x768 60Hz hdmi_mode=47 1440x900 60Hz hdmi_mode=81 1366x768 60Hz hdmi_mode=82 1920x1080 60Hz
登录的初始用户名和密码都是alarm,然后进入root模式
su root
初始密码为root
初始化
pacman-key --init pacman-key --populate archlinuxarm