最近新入手一块Raspberry Pi 4B 8G的板子,想在这块板子上搭建CentOS 8的环境,通过屡次尝试终于安装成功。centos
准备条件:bash
1.Raspberry Pi 4B 板子 + SD卡服务器
2.网线一根,用于链接到路由器。网络
3.下载Centos 8 for Raspberry Pi镜像文件app
4.下载烧录软件etcherspa
安装Centos83d
首先下载CentOS 8的系统镜像CentOS-Userland-8-stream-aarch64-RaspberryPI-Minimal-4-sda.raw,而后使用etcher将镜像烧录到SD卡。烧录完成后,将SD卡插入RaspberryPi 4B,并同时用网线链接到路由器。登陆路由器后台查看RaspberryPi 4B的Ip,而后使用PuTTY登陆到Raspberry Pi 4B(帐号root,密码centos)。调试
因为是最小安装,因此会缺乏一些功能。若是想要使用这些功能,只能经过手动来安装。首先运行命令 df -h检查一下看看显示的磁盘容量是否比实际的小。code
个人SD卡是16G,因此个人系统显示的容量比个人实际容量小。若是是这种状况的话,拷贝并运行下面的Script来扩展恢复磁盘容量。server
#!/bin/bash clear part=$(mount |grep '^/dev.* / ' |awk '{print $1}') if [ -z "$part" ];then echo "Error detecting rootfs" exit -1 fi dev=$(echo $part|sed 's/[0-9]*$//g') devlen=${#dev} num=${part:$devlen} if [[ "$dev" =~ ^/dev/mmcblk[0-9]*p$ ]];then dev=${dev:0:-1} fi if [ ! -x /usr/bin/growpart ];then echo "Please install cloud-utils-growpart (sudo yum install cloud-utils-growpart)" exit -2 fi if [ ! -x /usr/sbin/resize2fs ];then echo "Please install e2fsprogs (sudo yum install e2fsprogs)" exit -3 fi echo $part $dev $num echo "Extending partition $num to max size ...." growpart $dev $num echo "Resizing ext4 filesystem ..." resize2fs $part echo "Done." df -h |grep $part
执行上述命令后发现SD卡容量恢复的正常。
WiFi网络配置
因为网线链接路由器比较麻烦,不能把Raspberry Pi 4B 电脑边上,这样就不方便随时调试。所以我决定配置WiFi,后面的配置都使用WiFi来进行链接网络 ,完全甩掉网线的牵绊。使用下面命令链接WiFi,注意双引号是英文格式的。
nmcli dev wifi con “wifi名称” password “wifi密码”
而后使用nmcli conn 命令来查看WiFi链接状况。以下图所示能够发现WiFi已经链接成功,因为网线被我拔掉了因此只显示出WiFi的连接信息。
配置无线网卡静态Ip
因为RaspberryPi 4B每次重启后,Ip可能会变更,为了方便不想每次都去查找Ip,因此设置WiFi静态ip。有两种方式来设置,一是使用路由器后台绑定Ip和MAC。二是使用命令或网络脚原本设置,我选择使用命令来操做。
将Ip 地址(192.168.0.105)非配给无线网卡wlan0,可能因为链接WiFi时未指定链接名称,WiFi链接信息保存文件就是用SSID名称命名了,因此这里要使用SSID来设置。
nmcli con mod SSID ipv4.addresses 192.168.0.105/24
设置网关
nmcli con mod SSID ipv4.gateway 192.168.0.1
设置手动配置静态DHCP
nmcli con mod SSID ipv4.method manual
设置DNS 为 “8.8.8.8”
nmcli con mod SSID ipv4.dns “8.8.8.8”
保存上述设置并重启网卡
nmcli con up SSID
查看wlan0网卡信息,是否正确分配Ip
Ip addr show wlan0
安装桌面环境
之后可能须要同在RaspberryPi 4B 上设置GUI相关的操做,因此我如今须要安装桌面环境。
dnf update -y
dnf groupinstall “Server with GUI” --allowerasing --skip-broken -y
--allowerasing --skip-broken 用于处理包冲突,或没法安装的包,使安装过程走下去。因为已经配置相关环境,可能会和源里的包版本不一致等缘由须要使用上述命令。
安装桌面环境可能花费时间较多,须要耐心等待一会。
配置VNC
同时配置使用SSH和VNC可能会更方便使用RaspberryPi 4B,因此安装完桌面环境后我把VNC服务器也安装了。
dnf install tigervnc-server
安装完以后使用vncserver命令来执行初始化和设置密码。
设置完密码后开始启动VNC服务,同时设置为开机启动。
systemctl --user enable vncserver@:1.service --now
而后执行以下命令,在系统启动后、用户登陆前服务能够正常启动并保持运行状态。
loginctl enable-linger
最后看看VNC服务是否启动成功
systemctl --user status vncserver@:1.service
使用VNC Viewer链接RaspberryPi 4B远程桌面
输入密码以后就链接到远程桌面。
参考资料:
http://reallyappreciate.com/raspberry-pi-4-8gb-model-with-centos-8/