首页 > 其他分享 >嵌入式人工智能(19-树莓派4B的系统备份与开机自启)

嵌入式人工智能(19-树莓派4B的系统备份与开机自启)

时间:2024-07-22 11:27:29浏览次数:8  
标签:文件 树莓 19 备份 py 自启 开机 pi

1、系统备份

树莓派操作系统OS是基于Debian Linux的,通过镜像烧录工具balena-etcher、Win32DiskImager等将img系统镜像文件烧录到tf卡里面,然后插入树莓派,树莓派boot程序BootLoader内置启动方式选择从tf卡启动。OS版本查看

(1)操作系统加载后,通常会进行系统配置、开发环境配置,各种安装包,使用习惯、输入法等用户设置。远远比烧录系统耗费时间。

(2)树莓派作为嵌入式设备,不会单独再配置键盘鼠标显示器,程序有问题直接断电重启,系统文件容易损坏,tf卡也容易故障,可能会出现系统不启动的问题。

(3)自己做好的系统或许想和其他小伙伴分享,或者自己不想耽误时间重配置环境。

基于以上几点,很有必要将树莓派现有的系统备份成img文件,到时候出问题可以直接烧录到tf卡。

2、系统备份步骤

(1)插入一个移动硬盘,我这里找了一个固态的SATA120G。插入USB接口,可以查看相关情况

这里面还有些资料没有清理,不管他了,最好是空白盘。lsblk命令的英文是“list block”,用于列出系统中的所有块设备。这些块设备可以是硬盘、USB 存储驱动器、光盘、软盘等存储设备。lsblk 命令输出的信息包括设备名称、设备的大小、挂载点、设备类型等信息。 

(2)sudo apt-get install dc3dd

dd是Linux最常用的磁盘备份工具,但缺少渗透测试常用的数据校验、hash等重要功能。Kali Linux提供的一款专用工具dc3dd。该工具是dd的加强版。它在dd的基础上不仅增加了文件的Hash功能,还增加了写入校验功能。dc3dd支持读写单文件/多文件,还支持多输出。对于大批量的数据备份,测试人员还可以分阶段逐步备份。

(3) sudo dc3dd if=/dev/mmcblk0 of=/media/pi/0FB708DC0FB708DC/myimg.img

生成的文件比较大,如果要传输的话,最好再压缩下。

 3、开机自启动

系统重启后,如果想运行Shell命令或Python脚本、C的可执行文件需要手动输入命令才能执行,这个就比较尴尬了,如果没有键盘显示器的环境,就没有办法让程序自动运行。像51/32单片机,重启后自动运行ROM里面的代码。所以需要对树莓派需要开机自启动的命令或程序进行设置,让其系统重启后自动运行。

(1)shell命令,每次开机都需要开启VNCServer,我们把这条命令加入到开启自运行脚本里面

vncserver-virtual -geometry 1440x1080

(2)py脚本文件,开机进入autorun文件夹,运行里面的py脚本,让LED灯闪烁

cd /home/pi/autorun

python led.py

4、开机自启动脚本设置步骤

(1)在home/pi/创建一个文件夹autorun

mkdir autorun

(2)新建脚本文件sh,修改为可运行的文件

touch autoboot.sh

chmod 777 autoboot.sh

(3)将下面的命令加入到该文件里面,通过nano或gedit编辑

#!/bin/sh
vncserver-virtual -geometry 1440x1080
cd /home/pi/Embed_Python/1_LED
python Led.py

 (4)向rc.local文件添加启动代码

sudo nano /etc/rc.local

su pi -c "exec /home/pi/autorun/autoboot.sh"

sudo reboot重启后观察效果 ,杠杠的。

 5、结束开机运行的py程序

这个开机运行的py程序文件名为Led.py,要想关闭怎么办,首先需要找到该进程的id,用kill杀死进程即可

用htop或者top命令打开类似windows系统的任务管理器,查找进程id。htop退出用F10,top退出用q。(或者用ps auwx |grep Led*)

然后kill -9 1452即可关闭开机运行的程序。

标签:文件,树莓,19,备份,py,自启,开机,pi
From: https://blog.csdn.net/u010152658/article/details/140599201

相关文章

  • [CISCN 2019 初赛]Love Math
    进入之后直接就是源码<?php//关闭所有错误报告,以防止将敏感信息泄露给用户error_reporting(0);//检查是否传入了GET参数'c'//如果没有传入,则显示当前文件的源代码if(!isset($_GET['c'])){show_source(__FILE__);}else{//读取GET参数'c'的值到$c......
  • 坐牢第十三天 20240719
    一.笔记一.链表的引入1.1总结顺序表的优缺点1>优点:能够直接通过下标进行定位元素,访问效率高,对元素进行查找和修改比较快2>不足:插入和删除元素需要移动大量的元素,效率较低3>缺点:存储数据元素有上限,当达到MAX后,就不能再添加元素了1.2链表的概念1>链式存储的线性表叫......
  • CF1990E Catch the Mole
    题意给你一颗树,大小为\(n\)。初始有一颗黑点在树上某个节点,你每次可以查询\(x\)表示黑点是否在\(x\)的子树内,且若答案为否则黑点会移动到父亲节点上。你需要在160次查询内找到黑点当前在哪个节点(不要求求出初始位置)。\(n\le5000\),EasyVer.查询次数300。分析由于每......
  • 7/19go语言学习
    定义多个变量 go万事万物皆对象函数管道切片接口也是对象? string不是java对象而是基本数据类型 专有名词 字符串不可变双引号和反引号   string和其他基本数据类型的转换     go中没有访问权限关键字,以大小写代替  ......
  • 代码随想录训练营 Day4打卡 链表part02 24. 两两交换链表中的节点 19.删除链表的倒数
    代码随想录训练营Day4打卡链表part02一、力扣24.两两交换链表中的节点给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。示例1:输入:head=[1,2,3,4]输出:[2,1,4,3]算法思路:引入虚......
  • P3197 [HNOI2008] 越狱
    原题链接题解正难则反不可能发生越狱的清空:从左到右,第一个人有m种选择,第二个人为了和前面一个人不一样,有m-1种选择。。。code#include<bits/stdc++.h>#definelllonglongusingnamespacestd;constllmod=100003;llqpow(lla,lln){llres=1;while(n......
  • Adobe InCopy 2024 v19.5 (macOS, Windows) - 编写和副本编辑软件
    AdobeInCopy2024v19.5(macOS,Windows)-编写和副本编辑软件Acrobat、AfterEffects、Animate、Audition、Bridge、CharacterAnimator、Dimension、Dreamweaver、Illustrator、InCopy、InDesign、LightroomClassic、MediaEncoder、Photoshop、PremierePro、AdobeXD......
  • Adobe InDesign 2024 v19.5 (macOS, Windows) - 版面设计和桌面出版软件
    AdobeInDesign2024v19.5(macOS,Windows)-版面设计和桌面出版软件Acrobat、AfterEffects、Animate、Audition、Bridge、CharacterAnimator、Dimension、Dreamweaver、Illustrator、InCopy、InDesign、LightroomClassic、MediaEncoder、Photoshop、PremierePro、Adob......
  • (20240719)无机非金属材料工学(2) 水泥
    一、胶凝材料(复习)1.胶凝材料:通常把在一定条件下能产生凝固作用,同时能将块状物料、颗粒状物料或纤维状物料粘结成整体,并最终形成具有一定机械抵抗能力的硬化体的材料,称为胶凝材料。(分类)2.以无机物为主要成分的称为无机胶凝材料,如:水泥、石灰、石膏等。3.以有机物为主的称......
  • [文录] Bronya19C
    在我印象中,czz一直是一个个性活泼、阳光开朗的男生,他常常与别人一同讨论问题,和各个学校的选手一起说话聊天,善于结交朋友。czz同时是一个信息学的强者。自初中以来,一直是全佛山OI的顶梁柱。初二时的他就已经取得了NOIP一等奖,初三的他更是在CSP-S2021中勇夺全省第十六名的......