Centos7 systemctl的使用

CentOS7的服務systemctl腳本存放在:/usr/lib/systemd/,有系統(system)和用戶(user)之分,需要開機不登陸就能運行的程序,存在系統服務裏,即:/usr/lib/systemd/system目錄下.這樣說吧 ,它融合之前service和chkconfig的功能於一體!!!

說明

CentOS7的每一個服務以.service結尾,一般會分爲3部分:[Unit]、[Service]和[Install]

  • [Unit] 服務的說明

    • Description 描述服務
    • After 描述服務類別
  • [Service] 服務的關鍵,是服務的一些具體運行參數的設置

    • Type=forking是後臺運行的形式
    • User=users是設置服務運行的用戶
    • Group=users是設置服務運行的用戶組
    • PIDFile爲存放PID的文件路徑
    • ExecStart爲服務的具體運行命令
    • ExecReload爲重啓命令
    • ExecStop爲停止命令
    • PrivateTmp=True表示給服務分配獨立的臨時空間

    注意:[Service]部分的啓動、重啓、停止命令全部要求使用絕對路徑,使用相對路徑則會報錯!

  • [Install] 部分是服務安裝的相關設置,可設置爲多用戶的

栗子

就拿tomcat爲栗子吧

首先

vim /usr/lib/systemd/system/tomcat.service

然後加入內容

[Unit]
Description=java tomcat project
After=tomcat.service
  
[Service]
Type=forking
User=users
Group=users
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

添加可執行權限

chmod 754 /usr/lib/systemd/system/tomcat.service

然後就可以使用了

systemctl start  tomcat.service

常規的操作

 systemctl is-enabled xxx.service  //查詢服務是否開機啓動
 systemctl enable xxx.service  //開機運行服務
 systemctl disable xxx.service //取消開機運行
 systemctl start xxx.service //啓動服務
 systemctl stop xxx.service //停止服務
 systemctl restart xxx.service //重啓服務
 systemctl reload xxx.service //重新加載服務配置文件
 systemctl status xxx.service //查詢服務運行狀態
 systemctl --failed //顯示啓動失敗的服務
 systemctl list-unit-files|grep enabled //查看已啓動的服務列表

只能說倆字 niubi。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章