linux中的unit的配置文件

配置文件格式

1)unit配置文件格式

[Unit]html

Description=backup /etcbash

Requires=atd.serviceide

[Service]ui

Type=simplespa

ExecStart=/bin/bash -c "echo /testdir/bak.sh|at now"rest

[Install]code

WantedBy=multi-user.targethtm

[unit] :定義與Unit類型無關的通用選項;用於提供unit的描述信息、 unit行爲及依賴關係等進程

[Service]:與特定類型相關的專用選項;此處爲Service類型ip

[Install]:定義由「 systemctl enable」以及"systemctl disable「命令在實現服務啓用或禁用時用到的一些選項

二、Unit段的經常使用選項:

Description:描述信息

After:定義unit的啓動次序,表示當前unit應該晚於哪些

unit啓動,其功能與Before相反

Requires:依賴到的其它units,強依賴,被依賴的units沒法激活時,當前unit也沒法激活

Wants:依賴到的其它units,弱依賴

Conflicts:定義units間的衝突關係

BindsTo:與Requires相似,它指定的 Unit 若是退出,會致使當前 Unit 中止運行

Before:若是該字段指定的 Unit 也要啓動,那麼必須在當前 Unit 以後啓動

Conflicts:這裏指定的 Unit 不能與當前 Unit 同時運行

Condition...:當前 Unit 運行必須知足的條件,不然不會運行

Assert...:當前 Unit 運行必須知足的條件,不然會報啓動失敗

三、service經常使用的選項

Type:定義影響ExecStart及相關參數的功能的unit進程啓動類型

simple:默認值,這個daemon主要由ExecStart接的指令串來啓動,啓動後常駐於內存中

forking:由ExecStart啓動的程序透過spawns延伸出其餘子程序來做爲此daemon的主要服務。原生父程序在啓動結束後就會終止。

oneshot:與simple相似,不過這個程序在工做完畢後就結束了,不會常駐在內存中

  dbus:與simple相似,但這個daemon必需要在取得一個D-Bus的名稱後,纔會繼續運做.所以一般也要同時設定BusNname= 才行

  notify:在啓動完成後會發送一個通知消息。還須要配合NotifyAccess 來讓 Systemd 接收消息

  idle:與simple相似,要執行這個daemon必需要全部的工做都順利執行完畢後纔會執行。這類的daemon通

常是開機到最後才執行便可的服務。

EnvironmentFile:環境配置文件

 ExecStart:指明啓動unit要運行命令或腳本的絕對路徑

 ExecStartPre: ExecStart前運行

 ExecStartPost: ExecStart後運行

 ExecRsload: 重啓當前服務時執行的命令

 ExecStopPost:中止當前服務以後執行的命令

 ExecStartSec:自動重啓當前服務間隔的秒數

 ExecStop:指明中止unit要運行的命令或腳本

 Restart:當設定Restart=1 時,則當次daemon服務意外終止後,會再次自動啓動此服務。

TimeoutSec:定義 Systemd 中止當前服務以前等待的秒數。

Environment:指定環境變量。
四、install 經常使用選項

Install段的經常使用選項:

Alias:別名,可以使用systemctl command Alias.service

RequiredBy:被哪些units所依賴,強依賴

WantedBy:被哪些units所依賴,弱依賴

Also:安裝本服務的時候還要安裝別的相關服務

注意:對於新建立的unit文件,或者修改了的unit文件,要通知systemd重載此配置文件,然後能夠選擇重啓。

# systemctl daemon-reload

# systemctl daemon-reload

#systemctl restart httpd.service

更加詳細的unit配置文件格式 請參考官方文檔

https://www.freedesktop.org/software/systemd/man/systemd.unit.html

相關文章
相關標籤/搜索