CentOS 7 添加系統開機服務
阿新 • • 發佈:2018-04-26
bsp pid 相關 bin AS scrip centos highlight clas
CentOS 7的服務systemctl腳本存放在:/usr/lib/systemd/,有系統(system)和用戶(user)之分,需要開機不登陸就能運行的程序,存在系統服務裏,即:/usr/lib/systemd/system目錄下
每一個服務以.service結尾,一般會分為3部分:[Unit]、[Service]和[Install],我寫的這個服務用於開機運行tomcat項目:
#vim /usr/lib/systemd/system/filebeat.service [Unit] Description=filebeatapi After=network.target [Service] Type=forking PIDFile=/usr/local/tomcat/tomcat.pid ExecStart=/usr/local/tomcat/bin/startup.sh ExecReload= ExecStop=/usr/local/tomcat/bin/shutdown.sh PrivateTmp=true [Install] WantedBy=multi-user.target
[Unit]部分主要是對這個服務的說明,內容包括Description和After,Description用於描述服務,After用於描述服務類別;
[Service]部分是服務的關鍵,是服務的一些具體運行參數的設置,這裏Type=forking是後臺運行的形式,PIDFile為存放PID的文件路徑,ExecStart為服務的運行命令,ExecReload為重啟命令,ExecStop為停止命令,PrivateTmp=True表示給服務分配獨立的臨時空間,註意:[Service]部分的啟動、重啟、停止命令全部要求使用絕對路徑,使用相對路徑則會報錯;
[Install]部分是服務安裝的相關設置,可設置為多用戶的
服務腳本按照上面編寫完成後,以754的權限保存在/usr/lib/systemd/system目錄下,這時就可以利用systemctl進行測試了
最後用以下命令將服務加入開機啟動即可:
#systemctl enable filebeat
說明: 部分內容參考轉載於 https://blog.csdn.net/gbenson/article/details/51083817
CentOS 7 添加系統開機服務