最近在弄树莓派操作,发现一堆bug,于是把树莓派初始化的过程整理个笔记,方便日后查看。
一、烧录时的操作
首先去树莓派官网:https://www.raspberrypi.com/software/ 安装好Raspberry Pi Imager这个烧录镜像的软件,把sd卡插入电脑即可烧录,注意必须确保操作系统和树莓派版本的情况哦!!
烧录过程建议直接看官方文档入门 | Raspberry Pi 树莓派 (官网24年11月更新),大家必须得注意自己树莓派版本、树莓派内核操作系统是32位还是64位,注意内核的位数尽可能与操作系统的位数对应上,这是为了确保性能与软件更加的兼容。 然后我们配置好树莓派自动连接wifi,我这里是手机热点的代码,新建一个文件名为 wpa_supplicant.conf,代码如下:
country=CN
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="wifi名1"
psk="wifi密码1"
key_mgmt=WPA-PSK
}
network={
ssid="wifi名2"
psk="wifi密码2"
key_mgmt=WPA-PSK
}
将该wpa_supplicant.conf
文件放入烧录的SD卡内,完成该步骤即可打开树莓派了,这时会自动连接上无线wifi或手机热点。
二、树莓派初始化配置
1.首先检查系统配置
uname -m
#这个代码使树莓派显示他的架构,我们这返回为aarch64,表示我们的树莓派系统使用64位内核,aarch64是64位ARM架构的标识
uname -r
#返回6.6.51+rpt-rpi-v8,这是树莓派设备的内核版本号,此内核版本是为树莓派硬件优化的,特别是64位ARM架构的内核
dpkg --print-architecture
#返回arm64,确认了操作系统使用的是64位架构,若返回armhf则是32位架构
确认完系统配置后去配置镜像源
2.配置国内镜像源
镜像源的设计原理由来:他通常会按照架构(如armhf,arm64,x86_64
)来区分不同的软件包版本,这意味着每个镜像源将提供不同架构下的安装包,并且这些安装包只能在相应架构的系统上运行,镜像源的URL通常会包含相应架构的信息。
sudo nano /etc/apt/sources.list
#将树莓派内该文件以nano编辑器打开,并且将其他代码用#注释,加上后面的镜像源
#我们这里的树莓派架构为64位,arm64,内核架构也是64位,aarch
#那么对应的镜像源也是有要求的,必须与操作系统一致
deb http://mirrors.aliyun.com/debian bookworm main contrib non-free
deb http://mirrors.aliyun.com/raspberrypi/ bookworm main
#清华源好像不行,我试过,然后阿里云可以用而且相对原始官方给的镜像源较快
#分析镜像源代码
deb [arch=arm64 signed-by=/usr/share/keyrings/raspbian-archive-keyring.gpg] http://mirrors.tuna.tsinghua.edu.cn/raspbian/ bookworm main contrib non-free rpi
deb [arch=arm64 signed-by=/usr/share/keyrings/raspberrypi-archive-keyring.gpg] http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ bookworm main
这是清华源,但是对我使用的树莓派没有用,都说无法找到release文件,只有上面的阿里云没事
# deb 定义APT要使用的包源类型(Debian软件包源) main:核心软件包库 contrib:社区贡献软件包库
# non-free:包含非自由软件 rpi:树莓派特定优化的包(如硬件驱动)
#arch=arm64为指定架构为64位ARM,确保只拉取与架构兼容的包
#signed-by=/usr/share/keyrings/...:确保使用特定的GPG签名密钥验证源的安全性,防止未授权的源被APT使用
#bookworm:指定系统版本为Debian 12(bookworm)这与树莓派OS版本保持一致,防止因为版本不匹配导致安装失败
第一次运行sudo apt-get update
时总会出现这个锁文件被某个进程占用,所以我们得优雅的终止他~
sudo lsof /var/lib/apt/lists/lock
#通过 lsof + 占用路径对应文件来查找,如果输出返回packagekitd,表示它正占用某个锁文件
sudo systemctl stop packagekit
#这个时候就得终止它
#再继续更新包索引即可,如下
sudo apt-get update
sudo apt-get upgrade
#这种先后顺序为了确保运行的稳定
#如果不先运行apt-get update,那么系统会基于旧的包索引运行升级,而镜像源中可能已有更新的版本
#这可能导致升级不完整或版本不一致的问题
#先更新索引文件update,再进行软件包升级upgrade,是确保系统软件一致性和稳定性的正确流程
3.系统设置-时间,我们不用设置中文系统
raspi-config
#直接进行树莓派系统进行更改内容,时间同步于Aria-Shanghai即可,是在Localisation Options内设置
4.设置键盘为国内键盘
详见该博客 https://blog.csdn.net/meihualing/article/details/110819538
raspi-config
#进入树莓派设置系统内 -> localisation options ->Change Keyborad layour ->Generic 104-key PC
-> other -> Chinese -> The default for the keyboard layout-> no compose key -> Esc推出即设置完毕
5.设置中文输入法
sudo apt-get install fcitx
#安装fcitx输入器
sudo apt-get install fcitx-googlepinyin
#安装谷歌拼音
#之后重启,reboot就是重启代码
reboot
#之后去fcitx的config部署输入法就行
#也看到网上有人说在树莓派内中文输入法无候选框通过如下代码解决
sudo apt remove fcitx-module-kimpanel
sudo apt-get remove fcitx-ui-qimpanel
reboot
#我也遇到树莓派内中文输入法无候选框的情况,但是我输入上面sudo apt remove fcitx-module-kimpanel
#返回说我没有该fcitx-module-kimpanel文件好像,所以我的问题反正不是出于该原因,我的解决方法就是重新烧录
6.关机操作
关机前不要直接拔掉电源,这可能导致SD卡文件系统损坏
sudo poweroff 或 sudo halt
#都可用于关机,不过poweroff更加完整,确保电源关闭
sudo shutdown now
#立刻关机
sudo shutdown +10
#系统将在10分钟后关机
sudo shutdown 22:00
#系统将在当天的22点关机
sudo shutdown -c
#取消已经设置的定时关机任务
7.树莓派红绿灯的关系
正常启动 :红灯保持常亮,表示电源供应正常,绿灯短暂闪烁后熄灭表示系统已成功启动 启动失败或问题 :如果绿灯一直亮或闪烁特定次数,可能是错误代码提示,表明系统启动失败 红灯常亮且绿灯无反应,通常是SD卡或启动文件的问题 绿灯闪烁次数的含义 : 1次,启动文件bootcode.bin缺失 4次:无法找到start.elf文件 7次:无法加载内核文件 当树莓派打不开,绿灯显示4次,无法正常烧录,我们就进行如下步骤,先将SD卡格式化后,再开启引导程序,然后拿SD卡插入树莓派并接入显示屏,如果树莓派绿灯正常亮,并且显示屏显示全绿,那么引导程序成功完成,这时再进行Raspberry Pi Imager重新烧录(如果有一个装好了操作系统的SD卡,一个被格式化的SD卡,那么可以用格式化的SD卡执行如下的引导程序去插入树莓派开机一次,再插入装好了的操作系统的SD卡即可)
8.热点网络连接问题
有时候热点断了重新打开发现烧录时配置的wifi热点不连接,但自己点击连接结果一直连接不上热点的问题,我们通过树莓派终端处理的话:
法1:
#打开烧录时配置的热点文件重新输入,因为我打开的时候发现内容空了既然!!!
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
#文末添加如下内容,记得添加wifi国家哦country=CH
network={
ssid="热点名称"
psk="热点密码"
}
#重启网络服务
sudo systemctl restart dhcpcd #这个在树莓派内好像没有该文件
sudo systemctl restart wpa_supplicant
法2:
#直接通过系统内进行配置
sudo raspi-config
选择System Options -> Wireless LAN
然后按照提示输入SSID和Password
最后重启 sudo reboot