自动化树莓派教程:USB插入脚本!

B站影视 港台电影 2025-08-28 19:37 2

摘要:从树莓派传输文件通常意味着通过SSH、SCP或云同步进行连接。但有时,最简单的方法仍然是老式的方法——插入USB驱动器。

从树莓派传输文件通常意味着通过SSH、SCP或云同步进行连接。但有时,最简单的方法仍然是老式的方法——插入USB驱动器。

然而,如果你将树莓派作为无头服务器运行,并且想从中下载一些日志,如果你只是插入USB,树莓派自动将所有相关日志下载到你的USB中并安全弹出,这不是很酷吗?

这听起来像是詹姆斯·邦德电影中的情节——但你可以用一个简单的Python脚本实现它。

你可以使用如下所示的Python代码找到USB的挂载路径:

import os
MOUNT_ROOT = "/media/pi"
USB_LABEL = "LOGDUMP" # Optional: use a specific USB label
def find_usb_mount:
for mount in os.listdir(MOUNT_ROOT):
mount_path = os.path.join(MOUNT_ROOT, mount)
if os.path.ismount(mount_path):
if USB_LABEL and USB_LABEL.lower not in mount.lower:
continue
return mount_path
return None

然后使用shutil库将数据复制到你的USB:

import os
import shutil
import time
SOURCE_DIR = "/var/log/mylogs"
DESTINATION_NAME = f"logs_{time.strftime('%Y%m%d_%H%M%S')}"
def copy_logs(usb_path):
dest = os.path.join(usb_path, DESTINATION_NAME)
os.makedirs(dest, exist_ok=True)
shutil.copytree(SOURCE_DIR, dest, dirs_exist_ok=True)
print(f" Logs copied to: {dest}")

然而,真正的魔法在于将此脚本添加到你的udev规则中。你可以按照以下步骤操作:

首先,你需要通过运行以下命令使你的Python脚本可执行:

sudo chmod +x /path/to/your/script.py

然后你可以创建一个包含以下bash脚本的包装器shell脚本:

python3 /path/to/your/script.py

同样使这个shell脚本可执行。

最后,你可以使用以下命令创建一个udev规则:

sudo nano /etc/udev/rules.d/99-usb-log.rules

向其中添加以下行:

ACTION=="add", SUBSYSTEM=="block", KERNEL=="sd[a-z][0-9]", RUN+="/path/to/your/shell/script.sh"

使用以下命令重新加载 udev:

sudo udevadm control --reload-rules && sudo udevadm trigger

现在,无论何时插入 USB 设备,您的树莓派都会自动将所有日志复制到 USB,无需显示器、键盘或鼠标。

您可以通过添加身份验证方法来进一步增强此脚本以提高数据安全性,例如在 USB 上保存的身份验证令牌,Python 脚本会在将所有日志复制到 USB 之前进行验证。

很多人一直以为树莓派(Raspberry Pi)只是创客圈子里的小玩具——一块信用卡大小的开发板,用来点亮 LED、跑个 Python 脚本、或者给中学生上一堂入门编程课。然而,事实远比想象震撼:树莓派已经悄悄完成了从“教学演示”到“工业级主力”的华丽转身,正在产线、机房、实验室甚至外太空里 7×24 小时不间断服役。下面这几篇文章或许会让你彻底刷新对树莓派的固有印象:

工业树莓派的高光时刻!树莓派工业级 HMI 列阵!

2025年树莓派最值得关注的事,树莓派CM5工业级进化!

老工厂逆袭记:破旧工厂加块屏,直接进击工业 4.0 !

这个工业触摸屏,一开始我是拒绝的,用了之后就真香了!

树莓派 PLC 提供「控制+采集+通信」三位一体的开放式解决方案!

把树莓派CM5塞进IP65相机?树莓派硬核工业相机形态曝光!

树莓派5/CM5秒变工业大脑?

树莓派官方都没告诉你的散热黑科技!

传统PLC计数模块为何被淘汰?

一块树莓派CM5抗下整条产线?工业计算机主板全面解析!

hhttps://mp.weixin.qq.com/s/5jwiM9Rjw3F_DzI02vllNA


来源:上海晶珩电子科技

相关推荐