我正在使用带有 Raspbian(基于 Debian)操作系统的 Raspberry Pi。为了进行测试,我在以下位置添加了这样的命令/etc/rc.local
:
python /home/pi/test.py
启动这个脚本时一切正常。但问题是我忘记了脚本中有一个无限循环,如下所示:
while True:
print 'Hello"
time.sleep(5)
这个循环会阻止系统启动,所以我无法进入系统编辑脚本。Ctrl+C 无法将其杀死。所以我想知道如何杀死从 启动的连续进程rc.local
?
答案1
您无法从控制台以交互方式终止该进程,但您有多种选择可以避免在启动期间运行该进程。
a) 以单用户模式启动
将 附加到启动分区 (FAT) 中s
的行,中间用空格隔开。启动后,您可以重命名、使其不可执行()或编辑它。cmdline.txt
/etc/rc.local
chmod a-x /etc/rc.local
b) 使用 shell 启动,而不是init
将空格分隔的行附加init=/bin/sh
到 中的行。这将绕过任何启动脚本的启动。然后您可以采取与上述cmdline.txt
相同的措施。/etc/rc.local
c) 在不同系统中挂载 Linux 分区
将 SD 卡放入不同的系统并在那里挂载分区。然后您可以采取与上述/etc/rc.local
相同的措施。/etc/rc.local
答案2
我有一个相同类型的应用程序,在重启后可以无限播放。对于任何更改,我都会将其安装到另一个系统并进行更改,然后将其放回我的主板。这是最简单的方法。