Linux nohup命令无法正常工作
我有一个启动脚本,目的是用nohup在后台运行一个Python脚本。我使用nohup是因为我不想让这个脚本依赖于我是否登录。这个脚本是从一个SD卡上运行的,我把它做成了一个镜像,然后烧录到另一张卡上。
奇怪的是,第一张卡上的脚本运行正常,而第二张卡上的却不行。我可以在第一张卡上查看nohub.out文件,看到预期的输出,但在复制的那张卡上,这个文件完全是空的。
当我运行ps aux | grep python时,我可以看到两个地方都有这个脚本的进程在运行,所以我不明白为什么复制的那张卡似乎没有按预期工作。
2 个回答
2
在没有完整背景的情况下,很难猜测具体原因,但可能的区别只是因为其中一张SD卡是写保护的,或者是以只读方式挂载的。如果不是这种情况,能不能请你把这两张卡的输出结果发出来呢?
mount
你可能想用 screen
来代替 nohup
:首先启动
screen
然后正常运行程序,接着按 Ctrl+A 再按 D 来分离终端。之后,即使你注销了,也可以用
screen -r
重新控制终端。
0
我搞明白了。显然,它们都需要被设置为锁定状态,出于某种原因。当我这样做后,它们就按预期工作了。