排除 Raspberry Pi 上的软件问题
如果你依靠 Raspberry Pi 在家里或工作中自动执行任务,那么你就会知道,能够快速排除可能出现的任何问题是非常重要的。因此,我将在这里介绍如何排除 Raspberry Pi 上的软件故障。
此外,我还会向你展示可以运行哪些命令来获取有关 Raspberry Pi 软件进程的信息。
但首先,我想说的是,要排除所有这些问题,还有一个更简单的方法,那就是使用 PiCockpit。有了 PiCockpit,你只需点击一下按钮,就能排除所有这些问题(还有更多!)。
最重要的是,它完全免费,最多可用于 5 台 Raspberry Pis 和 创建一个账户只需不到一分钟的时间:
此外,有了 PiCockpit,您不必在浏览器中运行这些命令。这意味着您可以在世界任何地方排除 Raspberry Pi 上的软件故障。
我们的故障诊断应用程序名为 PiDoctor,因此我将通过它向你展示这些命令。不过,你也可以自己在终端运行这些命令。
让我们深入了解这些基本命令以及它们如何为您提供帮助。
命令及其输出
ps aux
:该命令提供 Raspberry Pi 上当前运行进程的快照。你会看到进程 ID、CPU 使用率和内存消耗等信息。这将帮助你快速找到占用 CPU 并可能导致 Raspberry Pi 冻结的程序。
dmesg
:该命令显示内核环形缓冲区信息,有助于识别与设备驱动程序、硬件连接或其他低级系统事件有关的问题。这也有助于排除 USB 外围设备的故障。
vcdbg log msg
:该命令可检索与 VideoCore GPU 相关的调试信息。它对诊断图形和多媒体相关问题特别有用。
hostnamectl
:该命令显示系统的主机名和相关信息,包括操作系统版本。它有助于检查系统的身份和配置。现在,如果你想通过 SSH 登录 Raspberry Pi,你就知道主机名是什么了。
vcgencmd version
:该命令提供有关在 VideoCore GPU 上运行的固件版本的信息。它有助于确保 Raspberry Pi 的固件是最新的。
lsmod
:该命令列出当前加载的所有内核模块,这些模块是扩展 Linux 内核功能的重要代码。它主要用于检查是否加载了必要的模块,并确保一切正常。
使用 PiDoctor
让我们来看看 Raspberry Pi 用户面临的一个常见问题--系统迟缓或反应迟钝。
要使用终端诊断和解决这个问题,您需要直接登录 Raspberry Pi 或 SSH 登录。然后按照以下步骤操作:
- 在 Raspberry Pi 上打开终端。
- 运转
ps aux
来检查资源密集型进程。查找使用大量 CPU 或内存的任何应用程序。 - 运转
dmesg
来检查内核信息。查找与硬件或驱动程序相关的错误信息或警告。 - 运转
vcdbg log msg
来调查与 GPU 相关的问题,尤其是在项目涉及图形或多媒体时。 - 运转
hostnamectl
以确保系统主机名和配置正确无误。 - 运转
vcgencmd version
检查固件更新,以提高系统性能。 - 最后,运行
lsmod
以确认已加载必要的内核模块。
通过分析这些命令的输出,你可以找出运行缓慢的根本原因,并采取适当的措施--无论是终止资源密集型进程、更新固件,还是解决硬件相关问题。
或者使用 PiDoctor,通过任何网络浏览器打开 PiCockpit,然后按照以下步骤操作:
- 转到 PiDoctor
- 点击 "运行软件测试 "按钮
PiDoctor 会告诉您一切是否正常。
总结
因此,虽然这些命令都是有用的知识,但对于寻求快速有效解决软件问题的 Raspberry Pi 用户来说,PiDoctor 是一个非常有价值的工具。
通过运行这些命令并解释其输出,可以诊断并解决可能出现的常见问题。
解决 Raspberry Pi 上的软件问题并不难。
Señores, cordila saludo, su ayuda para solucionar problema con la ejecucion de comandos para una raspberry pi pico w, en la shell me sale:MPY: soft reboot.
以前曾编写过多个程序,而且运行良好。但现在却无法运行,也无法运行这个简单的 LED 示例:
ROM 机器进口 Pin
导入时间
led = Pin(25, Pin.OUT) # 微型 LED
#led = Pin("LED", Pin.OUT) # Pico W LED
试试看
while True:
led.value(1) # 设置 LED 打开
time.sleep(0.5) # 睡眠 0.5 秒
led.value(0) # 设置 LED 关闭
time.sleep(0.5) # 睡眠 0.5 秒
除外:
通过