gpt4 book ai didi

python - Raspberry Pi - Python - 检查驱动器是否正在写入

转载 作者:行者123 更新时间:2023-12-01 01:39:39 25 4
gpt4 key购买 nike

好吧,运行树莓派(RetroPie)并让 python 脚本运行关闭,但我想避免按下电源按钮时任何可能的数据损坏。

有没有办法检查是否有任何连接的驱动器正在被写入,如果是,则等待并每 2 秒再次检查一次,直到检测到没有任何其他正在写入,然后继续关闭。

我正在使用retroflag-picase -SafeShutdown.py

#!/usr/bin/env python3
from gpiozero import Button, LED
import os
from signal import pause

powerPin = 3
resetPin = 2
ledPin = 14
powerenPin = 4
hold = 1
led = LED(ledPin)
led.on()
power = LED(powerenPin)
power.on()

#functions that handle button events
def when_pressed():
led.blink(.2,.2)
# Do check here #
os.system("sudo killall emulationstation && sleep 5s && sudo shutdown -h now")
def when_released():
led.on()
def reboot():
os.system("sudo killall emulationstation && sleep 5s && sudo reboot")

btn = Button(powerPin, hold_time=hold)
rebootBtn = Button(resetPin)
rebootBtn.when_pressed = reboot
btn.when_pressed = when_pressed
btn.when_released = when_released
pause()

最佳答案

您可以使用os.sync()等到所有内容都写入磁盘。或者您可以在重新启动前使用 cmd sudosync 而不是 sleep 5s

关于python - Raspberry Pi - Python - 检查驱动器是否正在写入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52024820/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com