方法如下:
使用systemd時,可透過正確編寫單元配置檔案來解決其依賴關係。典型的情況是,單元A要求單元B在A啟動之前執行。在此情況下,向單元A配置檔案中的 [Unit] 段新增 Requires=B 和 After=B 即可。
若此依賴關係是可選的,可新增 Wants=B 和 After=B。請注意 Wants= 和 Requires= 並不意味著 After=,即如果 After= 選項沒有制定,這兩個單元將被並行啟動。
依賴關係通常被用在服務(service)而不是目標(target)上。例如, network.target 一般會被某個配置網路介面的服務引入,所以,將自定義的單元排在該服務之後即可,因為network.target 已經啟動。
啟動方式
編寫自定義的 service 檔案時,可以選擇幾種不同的服務啟動方式。啟動方式可透過配置檔案 [Service] 段中的 Type= 引數進行設定。
Type=simple(預設值):systemd認為該服務將立即啟動。服務程序不會fork。如果該服務要啟動其他服務,不要使用此型別啟動,除非該服務是socket啟用型。
方法如下:
使用systemd時,可透過正確編寫單元配置檔案來解決其依賴關係。典型的情況是,單元A要求單元B在A啟動之前執行。在此情況下,向單元A配置檔案中的 [Unit] 段新增 Requires=B 和 After=B 即可。
若此依賴關係是可選的,可新增 Wants=B 和 After=B。請注意 Wants= 和 Requires= 並不意味著 After=,即如果 After= 選項沒有制定,這兩個單元將被並行啟動。
依賴關係通常被用在服務(service)而不是目標(target)上。例如, network.target 一般會被某個配置網路介面的服務引入,所以,將自定義的單元排在該服務之後即可,因為network.target 已經啟動。
啟動方式
編寫自定義的 service 檔案時,可以選擇幾種不同的服務啟動方式。啟動方式可透過配置檔案 [Service] 段中的 Type= 引數進行設定。
Type=simple(預設值):systemd認為該服務將立即啟動。服務程序不會fork。如果該服務要啟動其他服務,不要使用此型別啟動,除非該服務是socket啟用型。