1. 程式人生 > 實用技巧 >Ubuntu-18 開機自動啟動自定義程式

Ubuntu-18 開機自動啟動自定義程式

Ubuntu-18 開機自動啟動自定義程式

ubuntu18.04不再使用 inited 管理系統,改用 systemd。但是個人認為開機啟動的rc.local更加好用,所以可以自己配置rc.local

1.實現原理

systemd 預設會讀取 /etc/systemd/system 下的配置檔案,該目錄下的檔案會連結 /lib/systemd/system/ 下的檔案。一般系統安裝完 /lib/systemd/system/ 下會有 rc-local.service 檔案,即我們需要的配置檔案。

2.將 /lib/systemd/system/rc-local.service 連結到 /etc/systemd/system/ 目錄下面來

ln -fs /lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.service

修改檔案內容

vim /etc/systemd/system/rc-local.service
#在檔案末尾增加
[Install]
WantedBy=multi-user.target
Alias=rc-local.service

3.建立/etc/rc.local檔案

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
/bin/sh /vbaas_agent/start.sh > /vbaas_agent/agent_start.log 2>&1
/bin/sh /vbaas_agent/configtxlator-start.sh >> /vbaas_agent/agent_start.log 2>&1
exit 0

4.給 rc.local 加上許可權,啟用服務

chmod 755 /etc/rc.local
systemctl enable rc-local

5.啟動服務並檢查狀態

systemctl start rc-local.service
systemctl status rc-local.service

6.自定義指令碼,並給足夠許可權:

7. 重啟伺服器驗證

8.檢視服務啟動和日誌: