我的电脑在启动时运行一个程序。有时程序会在几个小时后停止工作,但重新启动后会正常工作。因此,我想安排我的电脑每 3 小时重新启动一次,以防止程序被停止。我使用的是 Ubuntu 14.04。
编辑:程序不会停止,它只是不能以电脑的最大功率工作,但我需要它以全功率工作。
以下应该有效,但我不确定该命令,因为我不熟悉 gminer。
剧本
将下面的文本粘贴到一个空文件中,将其另存为 check_gminer.py,将其保存在某个位置:
#!/usr/bin/python3
import subprocess
import getpass
curruser = getpass.getuser()
service = "gminer"
def createlist_runningprocs():
processesb = subprocess.Popen(["ps", "-u", curruser], stdout=subprocess.PIPE)
process_listb = (processesb.communicate()[0].decode("utf-8")).split("\n")
return process_listb
def runsornot():
runningprocs_list = createlist_runningprocs()
if not application[:15] in str(runningprocs_list):
subprocess.Popen(["sh", "m.sh"])
else:
pass
runsornot()
Run Code Online (Sandbox Code Playgroud)
编辑cronfile
将以下行添加到您的 cronfile(crontab -e
在终端中键入):
* * * * * python3 /path/to/script/check_gminer.py
Run Code Online (Sandbox Code Playgroud)
如果服务运行,该脚本每分钟都会检查一次,如果没有,则重新启动它。问题是如果你的 GPU 有问题,它是否有效。我们得看看。
如果上述方法不足以满足您的情况,则可选择其他程序
另一种方法(重新启动)需要管理员权限。因此,如果您需要通过 cronjob 运行重启命令,您需要编辑/etc/crontab
( sudo nano /etc/crontab
),在其中您可以设置由哪个用户运行该命令 (<> crontab -e
)。
添加行:
0 */3 * * * root reboot
Run Code Online (Sandbox Code Playgroud)
/etc/crontab
您的计算机将每三个小时重新启动一次。
归档时间: |
|
查看次数: |
3551 次 |
最近记录: |