【问题标题】:Start terminal on Raspberry Pi using SSH使用 SSH 在 Raspberry Pi 上启动终端
【发布时间】:2018-11-14 15:12:27
【问题描述】:

我的问题是关于 Raspberry Pi 上的 SSH。

我可以使用以下命令成功 ssh 到 Pi:

sudo ssh pi@<ipaddress>

然后输入密码。

假设我在 Pi 上有一个通过 SSH 执行的 Python 脚本文件。假设脚本如下:

    import time
    while True:
        print('Hello')
        time.sleep(1)

这将在终端/命令提示符窗口仍然打开时每秒打印一次“Hello”(也就是说,我用来访问 Pi 的计算机正在运行并且 SSH 会话保持打开状态)。如果我关闭连接,那么代码将停止在 Pi 上执行。

有没有一种方法可以使用 SSH 来保持代码在 Pi 上运行,即使我关闭了在用于访问 Pi 的计算机上运行 SSH 的窗口?即使在我关闭计算机后,Pi 也会继续打印“Hello”。也许通过输入命令在 Pi 本身上打开终端窗口并在该终端窗口中运行脚本?

有没有办法做到这一点? 谢谢

【问题讨论】:

  • 设置为每分钟运行一个 python 脚本的 cronjob 怎么样?
  • 但是当我关闭用于访问 pi 的计算机上的终端窗口时,cronjob 肯定会结束吗?
  • 如果 pi 仍在工作,我猜不会。当您关闭对操作系统的访问时,它应该没有任何区别。

标签: python ssh terminal raspberry-pi


【解决方案1】:

我能想到两种选择:

  • 创建一个cron 作业。此方法通常用于重复执行脚本/程序。该作业由cron 程序触发,因此无论您是否连接到 Pi,只要它运行即可。您只需连接一次并设置作业(通常使用crontab -e)。

  • 使用screenWikipedia)或tmuxWikipedia)。这些被称为终端多路复用器,即使您没有连接,也允许您保持 shell(以及任何脚本/程序)运行。请注意,在这种情况下,您每次都必须手动启动脚本,因此该解决方案非常适合运行时间较长但不经常启动的脚本。

【讨论】:

  • 谢谢!我习惯于筛选效果很好的解决方案。我觉得这应该是 R Pi 附带的标准工具——他们希望他们的主计算机整天运行会话
猜你喜欢
  • 1970-01-01
  • 2014-11-07
  • 2022-07-06
  • 2021-03-01
  • 2018-07-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-09
相关资源
最近更新 更多