systemd.timer定时任务
生活随笔
收集整理的這篇文章主要介紹了
systemd.timer定时任务
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
systemd.timer定時任務
一、Systemd 單元
每個單元都有一個單元描述文件,它們分散在三個目錄
- /lib/systemd/system:系統默認的單元文件
- /etc/systemd/system:用戶安裝的軟件的單元文件
- /usr/lib/systemd/system:用戶自己定義的單元文件
二、Service 單元
- 每個服務單元文件都必須包含一個 [Service]
- Type= 設置進程的啟動類型。必須設為 simple, exec, forking, oneshot, dbus, notify, idle 之一
- ExecStart= 啟動該服務時需要執行的 命令行
/usr/lib/systemd/system目錄里面,新建一個youlv.service文件
[Unit] Description=jciot service[Service] Type=simple User=jciot ExecStart=/usr/bin/python /opt/jciot.py[Install] WantedBy=multi-user.targetNote: service默認使用root權限,在ubuntu系會出現no modules found情況,使用安裝modules的用戶科解決
三、Timer 單元
- 定時器單元文件中必須包含一個 [Timer]
- 通過同時使用 OnBootSec= 與 OnUnitActiveSec= 指令, 就可以實現在系統啟動后的某個時間點啟動匹配單元, 并且之后每隔一段時間周期性的反復啟動匹配單元
- 時間單位后綴:us(微秒), ms(毫秒), s(秒), m(分), h(時), d(天), w(周)。 如果省略了時間單位,那么表示使用默認單位"秒"
- Unit= 該定時器單元的匹配單元, 也就是要被該定時器啟動的單元。默認值是 與此定時器單元同名的服務單元
/usr/lib/systemd/system目錄里面,新建一個youlv.timer文件
[Unit] Description=Run jciot[Timer] OnBootSec=2m OnUnitActiveSec=2h[Install] WantedBy=timers.target四、啟動定時任務
systemctl start youlv.service systemctl start youlv.timer查看所有正在運行的定時器
systemctl list-timers鏈接:
systemd.timer — 定時器單元配置
systemd.service — 服務單元配置
總結
以上是生活随笔為你收集整理的systemd.timer定时任务的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2017-9-22 NOIP模拟赛[xx
- 下一篇: Windows下CMD操作常用指令详解