Raspberry Pi 4B 安装 CentOS 8
最近新入手一块Raspberry Pi 4B 8G的板子,想在这块板子上搭建CentOS 8的环境。经过数次采坑终于安装成功。
准备条件:
1.Raspberry Pi 4B 板子 + SD卡
2.网线一根,用于连接到路由器。
3.下载Centos 8 for Raspberry Pi镜像文件
4.下载烧录软件etcher
安装Centos8
首先下载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检查一下看看显示的磁盘容量是否比实际的小。

我的SD卡是16G,所以我的系统显示的容量比我的实际容量小。如果是这种情况的话,拷贝并运行下面的Script来扩展恢复磁盘容量。
#!/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/
Raspberry Pi 4B 安装 CentOS 8的更多相关文章
- Raspberry PI 4B 安装和配置 Raspbian
做记录,以备之后需要,待完成中 目录 做记录,以备之后需要,待完成中 下载镜像和安装程序 ssh 远程访问 下载镜像和安装程序 Raspbian: installer: ssh 远程访问 开启ssh ...
- Raspberry Pi 4B 安装QT5和qtCreator
https://blog.csdn.net/coekjin/article/details/52049273 sudo apt-get install qt5-default sudo apt-get ...
- Raspberry Pi 4B基本设置
目录 一.SSH登录Raspberry Pi 二.开启VNC服务 三.将SD卡分区扩展 四.修改软件源 一.SSH登录Raspberry Pi 完成系统烧录后,就需要登录Raspberry Pi,此时 ...
- VLOG丨树莓派Raspberry Pi 3安装PLEX并挂载USB硬盘打造最牛的微型家庭影音服务器2018
视频介绍 树莓派3安装目前最流行的PLEX服务器,实现既能最大限度降低功耗,也能随时随地观看分享影片. 一.在树莓派下安装PLEX媒体服务器 1.在终端,将你的树莓派更新至最新 sudo apt up ...
- Raspberry Pi 4B 使用OpenCV访问摄像头picamera模块
目录 1.OpenCV安装 (1)安装依赖 (2)下载OpenCV源码 (3)安装pip (4)安装Python虚拟机 (5)编译OpenCV (6)验证安装 2.使用OpenCV和Python控制摄 ...
- raspberry pi 4b 常见的一些配置信息
实验记录地址 https://gitee.com/dhclly/icepi.raspberry-pi 针脚图 面包板 gnd & vcc VCC:电路的供电电压: GND:指板子里面总的地线. ...
- Raspberry Pi 4B Web服务器配置
目录 1. 安装nginx 2. 安装PHP 3. 修改nginx配置文件 4. 安装MariaDB数据库 参考资料1:树莓派4B安装PHP7.3 + Nginx + MySQL 教程 参考资料2:[ ...
- 在Raspberry Pi上安装XBMC
2013-05-22 XBMC is a free and open source media player application developed by the XBMC Foundation, ...
- 树莓派(1)- Raspberry Pi 3B 安装系统并联网
一.背景 昨天到手淘宝买的3B,既然买了就不能让它吃灰,动起来. 二.物料 名称 说明 硬件 树莓派3B 主体 树莓派电源 5V 2A sd卡 4G低速(推荐是16G class10),我手头只有这 ...
随机推荐
- nohup 命令的使用
nohup 命令的使用 1. nohup简介 nohup 命令运行由 Command参数和任何相关的 Arg参数指定的命令,忽略所有挂断(SIGHUP)信号.在注销后使用 nohup 命令运行后台中的 ...
- 动态数组java实现
数组是一种顺序存储的线性表,所有元素的内存地址是连续的. 动态数组相对于一般数组的优势是可以灵活地添加或删除元素.而一般数组则受限于固定的内存空间.只能有限的添加元素 动态数组(Dynamic Arr ...
- ceph 开启mgr balancer
参考链接: mgr balancer模式探索及配置方法1 mgr balancer模式探索及配置方法2 1.ceph mgr module enable balancer [root@controll ...
- Docker-Docker与IPV6
公司计划在2020年前完成IPV6化改造,于是我先行查阅了一些资料了解Docker进行IPv6化的可能性. 预计明年正式开始测试. 方法一.使容器中的服务支持IPv6地址 不为容器中的服务特别分配IP ...
- 浅谈AQS原理
一.AQS介绍 AQS,即AbstractQueuedSynchronizer, 抽象队列同步器,它是Java多线程模块用来构建锁和其他同步组件的基础框架.来看下同步组件对AQS的使用: AQS是一个 ...
- Java数据结构——图的基本理论及简单实现
1. 图的定义图(graph)是由一些点(vertex)和这些点之间的连线(edge)所组成的:其中,点通常被成为"顶点(vertex)",而点与点之间的连线则被成为"边 ...
- express综合用法
一.创建: 1.先导入express第三方文件(我设置的全局) npm i express -g 2.加载express const express = require("express&q ...
- Android Studio出现:Your project path contains non-ASCII 错误代码解决方法
导入Project的出现: Error:(1, 0) Your project path contains non-ASCII characters. This will most likely ca ...
- Spring源码分析 手写简单IOC容器
Spring的两大特性就是IOC和AOP. IOC Container,控制反转容器,通过读取配置文件或注解,将对象封装成Bean存入IOC容器待用,程序需要时再从容器中取,实现控制权由程序员向程序的 ...
- Fibonacci and Counting(水题)
链接:https://ac.nowcoder.com/acm/contest/303/B 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言5242 ...