[英]Why does crontab always restart my python script with a new PID
我有一個 python3 腳本,想在重啟后自動啟動它。 它正在啟動,但它總是以一個新的 PID 開始,我用 ps aux 進行了檢查。 如果我通過終端啟動文件,它只是在同一個 PID 中運行。
我在 crontab 中使用了 @reboot /usr/bin/python3 /path/myFile.py
import sys
from cryptography import x509
sys.path.insert(0, "..")
import time
from opcua import ua, Server
if __name__ == "__main__":
# setup our server
server = Server()
server.set_endpoint("opc.tcp://0.0.0.0:4842/freeopcua/server/")
# setup our own namespace, not really necessary but should as spec
uri = "http://examples.freeopcua.github.io"
idx = server.register_namespace(uri)
# get Objects node, this is where we should put our nodes
objects = server.get_objects_node()
# populating our address space
myobj = objects.add_object(idx, "MyObject")
startCali = myobj.add_variable(idx, "Start Calibration", True)
brigthness = myobj.add_variable(idx, "Brightneess", 0.0)
brigthness.set_writable()
startCali.set_writable() # Set MyVariable to be writable by clients
oldstartCalivar = 0
oldbrightnesss = 1.0
# starting!
server.start()
try:
count = 0
while True:
time.sleep(1)
if brigthness.get_value () != oldbrightnesss:
changeBrightness = "xrandr --output eDP-1 --brightness %f" % (brigthness.get_value())
oldbrightnesss = brigthness.get_value()
finally:
#close connection, remove subcsriptions, etc
server.stop()
我用另一種方法解決了它:
https://stackoverflow.com/questions/51025312/start-a-python-script-at-startup-automatically
-->Artsiom Praneuski 的回答
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.