SSD USB启动树莓派4B ubuntu server

网上很多教程,大部分过时了,成功之后分享一下。

首先是解决USB启动的过程,方法很简单
官方说明

我使用的是推荐方法,下载官方烧卡工具(Mac M1 貌似1.6.1版本有问题,1.5版本可以用),选择Misc utility images -> Bootloader -> usb 写入备份sd卡.插入设备,接屏幕,等待闪烁稳定屏幕变绿。

ubuntu server 固件

此新固件不要替换启动文件。

烧录系统到SSD。

然后是非官方镜像无法自动解压启动文件下的vmlinuz 需要zcat 一下

zcat vmlinuz > vmlinux

然后修改一下pi4配置(config.txt)

[pi4]
max_framebuffers=2
dtoverlay=vc4-fkms-v3d
boot_delay
kernel=vmlinux
initramfs initrd.img followkernel

新建一个脚本 auto_decompress_kernel(不执行这几部 系统重启之后就废了 亲测)

#!/bin/bash -e

#Set Variables
BTPATH=/boot/firmware
CKPATH=$BTPATH/vmlinuz
DKPATH=$BTPATH/vmlinux

#Check if compression needs to be done.
if [ -e $BTPATH/check.md5 ]; then
	if md5sum --status --ignore-missing -c $BTPATH/check.md5; then
	echo -e "\e[32mFiles have not changed, Decompression not needed\e[0m"
	exit 0
	else echo -e "\e[31mHash failed, kernel will be compressed\e[0m"
	fi
fi

#Backup the old decompressed kernel
mv $DKPATH $DKPATH.bak

if [ ! $? == 0 ]; then
	echo -e "\e[31mDECOMPRESSED KERNEL BACKUP FAILED!\e[0m"
	exit 1
else 	echo -e "\e[32mDecompressed kernel backup was successful\e[0m"
fi

#Decompress the new kernel
echo "Decompressing kernel: "$CKPATH".............."

zcat $CKPATH > $DKPATH

if [ ! $? == 0 ]; then
	echo -e "\e[31mKERNEL FAILED TO DECOMPRESS!\e[0m"
	exit 1
else
	echo -e "\e[32mKernel Decompressed Succesfully\e[0m"
fi

#Hash the new kernel for checking
md5sum $CKPATH $DKPATH > $BTPATH/check.md5

if [ ! $? == 0 ]; then
	echo -e "\e[31mMD5 GENERATION FAILED!\e[0m"
	else echo -e "\e[32mMD5 generated Succesfully\e[0m"
fi

#Exit
exit 0

在/ect/apt/apt.conf.d/目录中创建一个脚本,并将其命名为999_decompress_rpi_kernel 。这里我ssd usb接入ubuntu系统,可以看到目录,据说可以在第一次启动后也可以。

DPkg::Post-Invoke {"/bin/bash /boot/firmware/auto_decompress_kernel"; };

然后

sudo chmod +x 999_decompress_rpi_kernel

方法源自官网论坛

附:
cn.ports.ubuntu.com
ubuntu 官方国内镜像速度非常慢,坑

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
树莓4B上使用OpenCV的DNN模块可以进行深度学习推理任务。要在树莓上安装OpenCV,并启用DNN模块,您可以按照以下步骤操作: 1. 首先,确保您的树莓已经安装了OpenCV。如果没有安装,您可以使用以下命令安装OpenCV: ``` sudo apt-get update sudo apt-get install python3-opencv ``` 2. 确保您的树莓已连接到互联网。这是因为在安装OpenCV时,可能会从网络上下载一些依赖项。 3. 在您的Python代码中,导入OpenCV库: ```python import cv2 ``` 4. 加载DNN模型。您可以从OpenCV官方模型库下载预训练的DNN模型,例如SSD、YOLO等。使用以下代码加载模型: ```python net = cv2.dnn.readNet(model, config) ``` 其中`model`是模型的二进制文件路径,`config`是模型的配置文件路径。 5. 对输入图像进行预处理,并将其输入到DNN模型中进行推理。以下是一个示例代码: ```python blob = cv2.dnn.blobFromImage(image, scalefactor=1.0, size=(300, 300), mean=(127.5, 127.5, 127.5), swapRB=True) net.setInput(blob) detections = net.forward() ``` 其中`image`是输入图像,`scalefactor`是图像缩放因子,`size`是模型期望的输入尺寸,`mean`是均值减法,`swapRB`用于将图像通道顺序从BGR转换为RGB。 6. 处理DNN模型的输出结果。根据不同的模型和任务,输出结果的处理方式可能会有所不同。 以上是在树莓4B上使用OpenCV的DNN模块进行深度学习推理任务的基本步骤。根据您的具体需求,可能还需要进行一些额外的配置和调整。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值