记录一下树莓派4B安装ArchLinuxARM的过程以及一些基本配置
软硬件准备
树莓派4B、8G以上的microSD卡、读卡器、安装了Windows系统的电脑、Linux虚拟机、1条网线、5V3A电源
下载系统镜像并写入到SD卡
以下步骤在虚拟机中完成(将会清除SD卡所有数据, 如有重要文件要提前做好备份)
将SD卡插入电脑并连接至虚拟机
$ wget https://mirrors.tuna.tsinghua.edu.cn/archlinuxarm/os/ArchLinuxARM-rpi-4-latest.tar.gz # 下载系统镜像
$ sudo fdisk -l # 查看SD卡的设备名
$ sudo fdisk /dev/sdX # 对SD进行分区,将sdX替换为SD卡的设备名
欢迎使用 fdisk (util-linux 2.34)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
命令(输入 m 获取帮助):o
创建了一个磁盘标识符为 0xe303deb5 的新 DOS 磁盘标签。
命令(输入 m 获取帮助):n
分区类型
p 主分区 (0个主分区,0个扩展分区,4空闲)
e 扩展分区 (逻辑分区容器)
选择 (默认 p):
将使用默认回应 p。
分区号 (1-4, 默认 1):
第一个扇区 (2048-62333951, 默认 2048):
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (2048-62333951, 默认 62333951): +128M
创建了一个新分区 1,类型为“Linux”,大小为 128 MiB。
命令(输入 m 获取帮助):t
已选择分区 1
Hex 代码(输入 L 列出所有代码):c
已将分区“Linux”的类型更改为“W95 FAT32 (LBA)”。
命令(输入 m 获取帮助):n
分区类型
p 主分区 (1个主分区,0个扩展分区,3空闲)
e 扩展分区 (逻辑分区容器)
选择 (默认 p):
将使用默认回应 p。
分区号 (2-4, 默认 2):
第一个扇区 (264192-62333951, 默认 264192):
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (264192-62333951, 默认 62333951):
创建了一个新分区 2,类型为“Linux”,大小为 29.6 GiB。
命令(输入 m 获取帮助):w
分区表已调整。
将调用 ioctl() 来重新读分区表。
正在同步磁盘。
$ sudo mkfs.vfat /dev/sdX1
$ mkdir boot
$ sudo mount /dev/sdX1 boot
$ sudo mkfs.ext4 /dev/sdX2
$ mkdir root
$ sudo mount /dev/sdX2 root
$ sudo bsdtar -xpf ArchLinuxARM-rpi-4-latest.tar.gz -C root
$ sudo mv root/boot/* boot
$ sync
$ sudo umount root boot
上电启动并通过网线直连树莓派
将SD卡插入树莓派, 用网线连接树莓派和电脑, 上电启动树莓派.
打"开网络和共享中心""更改适配器设置",右键点击"WLAN",选择属性.
在"共享"选项卡中勾选"允许其他网络用户通过此计算机的Internet连接来连接", "家庭网络连接"选择以太网, 点击"确定".
打开CMD运行 arp -a 命令, 查看树莓派的IP地址.
SSH远程登录&一些配置
ArchLinuxARM默认启用了ssh, 可以使用ssh工具远程登录树莓派, ip地址上一步已经知道了, 端口是22端口. root用户的默认密码是root, ArchLinux默认不允许root远程登录, 可以用普通用户alarm来登录, 默认密码是alarm.
接下来是一些配置(可以参考一下, 没必要和我一样)
连接wifi
$ su root
# wifi-menu
添加清华大学的软件源
# nano /etc/pacman.d/mirrorlist
# # 在文件头部添加"Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxarm/$arch/$repo", 按"Ctrl+X"退出编辑器
# pacman-key --init
# pacman-key --populate archlinuxarm
# pacman -Syyu && reboot # 更新系统并重新启动,重启后树莓派的ip地址可能会改变,用新ip重新登录
安装一些常用的工具和软件
# pacman -S vim htop sudo gcc make cmake git unzip unrar nmap mtr samba networkmanager dnsmasq hostapd gdb python-pip dnsutils
# systemctl enable NetworkManager
# systemctl start NetworkManager
允许alarm用户无需输入密码使用 sudo
# vim /etc/sudoers # 如图进行修改, 按下"Esc"输入":wq!"保存并退出
更改语言和时区
# vim /etc/locale.gen # 取消注释"en_US.UTF-8 UTF-8"和"zh_CN.UTF-8 UTF-8"
# locale-gen
# echo "LANG=zh_CN.UTF-8" > /etc/locale.conf
# ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
安装aur包管理器
$ sudo pacman -S go fakeroot
$ git clone https://aur.archlinux.org/yay.git
$ cd yay
$ makepkg -si
结束
退出ssh登录, 拔掉网线, 在网络适配器设置中取消WLAN的共享, 至此就结束了.