centos7 服務開機自啟動 - systemctl -以禪道為例

 在服務器上安裝的各種中間件,一般都需要配置成開機自啟動。但是有些中間件的安裝過程中并沒有提供相關配置開機自啟動的說明文檔。本文總結一下Centos7通過systemctl enble配置服務自啟動的方法。

一、Centos7通過systemctl enble配置服務自啟動

在Centos7后,更推薦通過systemctl來控制服務。

Centos 系統服務腳本目錄/usr/lib/systemd/ 有系統(system)和用戶(user)之分,如需要開機沒有登陸情況下就能運行的程序,存在系統服務(system)里,即:/usr/lib/systemd/system/。反之,用戶登錄后才能運行的程序,存在用戶(user)里,服務以.service結尾,即:/usr/lib/systemd/user/
??服務的管理是通過 systemd,而 systemd 的配置文件大部分放置于 /usr/lib/systemd/目錄內。但是 Red Hat 官方文件指出(詳情請看:https://wizardforcel.gitbooks.io/vbird-linux-basic-4e/content/150.html), 該目錄的文件主要是原本軟件所提供的設置,建議不要修改!而要修改的位置應該放置于 /etc/systemd/system/目錄內。

1.1 對于已安裝的服務,直接設置開機自啟動

1.查看服務狀態:systemctl status 服務名

#示例
systemctl status zentao
systemctl status gitlab-runsvdir

如下圖所示:

disabled:說明服務還沒有開啟開機自啟動。
enabled:說明服務開啟了開機自啟動。
在這里插入圖片描述
在這里插入圖片描述

2.服務還沒有開啟開機自啟動的,設置為開啟開機自啟動狀態,執行命令:

systemctl enable 服務名
#示例
systemctl enable zentao

設置完成后,再查看狀態:systemctl status zentao
在這里插入圖片描述

服務狀態說明:systemctl status 服務名稱

loaded 系統服務已經初始化完成,加載過配置
active(running) 正有一個或多個程序正在系統中執行, vsftpd就是這種模式
atcive(exited) 僅執行一次就正常結束的服務, 目前並沒有任何程序在系統中執行
atcive(waiting) 正在執行當中,不過還再等待其他的事件才能繼續處理
inactive 服務關閉
enbaled 服務開機啟動
disabled 服務開機不自啟
static 服務開機啟動項不可被管理
failed 系統配置錯誤

1.2 對于未安裝的服務,建立腳本設置開機自啟動

以建立zentao服務開機自啟動為例:
1.建立zentao服務文件:

#進入系統服務腳本目錄
cd /usr/lib/systemd/system
# 建立服務文件
vim zentao.service

輸入腳本內容:

[Unit]
Description=zentao
After=multi-user.target[Service]
Type=forking
ExecStart=/opt/zbox/zbox start
ExecReload=/opt/zbox/zbox restart
ExecStop=/opt/zbox/zbox stop
PrivateTmp=true[Install]
WantedBy=multi-user.target

注意??:
這里ExecStart、ExecReload、ExecStop的命令還是借助了上文在/etc/init.d目錄下配置kibana腳本來實現。
參數說明:

[Unit]
(1) Description:描述服務
(2) After:描述服務類別
[Service]服務運行參數的設置 服務的啟動、重啟、停止命令全部要求使用絕對路徑
(1)Type=forking是后臺運行的形式
(2) User 服務啟動用戶
(3) Group 服務啟動用戶組
(4) ExecStart 為服務的具體運行命令
(5) ExecReload 為重啟命令
(6) ExecStop 為停止命令
(7) PrivateTmp=True表示給服務分配獨立的臨時空間
[Install]服務安裝的相關設置
(1)WantedBy=multi-user.target 設置為多用戶

2.賦予執行權限,執行命令:chmod 754 zentao.service

權限組合就是對應權限值求和,如下:
7 = 4 + 2 + 1 讀寫運行權限
5 = 4 + 1 讀和運行權限
4 = 4 只讀權限.
這句命令的意思是將filename文件的讀寫運行權限賦予文件所有者,把讀和運行的權限賦予群組用戶,把讀的權限賦予其他用戶。

3.查看服務狀態
(1)重新加載某個服務的配置文件,如果新安裝了一個服務,歸屬于 systemctl 管理,要是新服務的服務程序配置文件生效,需重新加載,執行命令:systemctl daemon-reload
(2)查看服務狀態,執行命令:systemctl status zentao.service
在這里插入圖片描述
其中,disabled說明服務還沒有開啟開機自啟動。

(3)開啟服務開機啟動,執行命令:systemctl enable zentao.service
在這里插入圖片描述

1.3 常用服務文件

1.nginx.service

[Unit]
Description=nginx - high performance web server
After=network.target remote-fs.target nss-lookup.target[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
[Install]
WantedBy=multi-user.target

2.mysql.service

[Unit]
Description=mysql
After=network.target remote-fs.target nss-lookup.target[Service]
Type=forking
ExecStart=/usr/local/mysql/support-files/mysql.server start
#ExecReload=/usr/local/mysql/support-files/mysql.server restart
#ExecStop=/usr/local/mysql/support-files/mysql.server stop
#PrivateTmp=true[Install]
WantedBy=multi-user.target
  1. redis.service
[Unit]
Description=Redis
After=network.target remote-fs.target nss-lookup.target[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /etc/redis.conf
ExecStop=kill -INT `cat /tmp/redis.pid`
User=www
Group=www[Install]
WantedBy=multi-user.target
  1. supervisord.service
[Unit]
Description=Process Monitoring and Control Daemon
After=rc-local.service[Service]
Type=forking
ExecStart=/usr/bin/supervisord -c /etc/supervisord.conf
SysVStartPriority=99[Install]
WantedBy=multi-user.target

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/15624.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/15624.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/15624.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

GraphSAGE

GraphSAGE 節點采樣:聚合(Aggregation):更新(update):例子:總結: 啥是GraphSAGE呢? 是一種用于圖嵌入的無監督學習方法。 通過采樣和聚合鄰居節點的信息來生成…

【一步一步了解Java系列】:Java中的方法對標C語言中的函數

看到這句話的時候證明:此刻你我都在努力~ 加油陌生人~ 個人主頁:Gu Gu Study 專欄:一步一步了解Java 喜歡的一句話: 常常會回顧努力的自己,所以要為自己的努力留下足跡。 _ 如果喜歡能否點個贊支持一下,謝謝…

Xfce4桌面背景和桌面圖標消失問題解決@FreeBSD

問題:Xfce4桌面背景和桌面圖標消失 以前碰到過好幾次桌面背景和桌面圖標消失,整個桌面除了上面一條和下面中間的工具條,其它地方全是黑色的問題,但是這次重啟之后也沒有修復,整個桌面烏黑一片,啥都沒有&am…

認知V2X的技術列一個學習大綱

為了深入學習和理解V2X(Vehicle to Everything)技術,以下是一個學習大綱的概述,結合了參考文章中的相關數字和信息: 一、V2X技術基礎 V2X概述 定義:V2X是車用無線通信技術,將車輛與一切事物相連…

WebService相關內容

WebService中的wsdl什么意思? WSDL(Web Services Description Language)Web服務描述語言及其功能、操作、參數和返回值的XML格式的語言。它在Java和其他編程語言中都可以使用,用于定義Web服務的接口以及如何與這些服務進行交互。 WSDL的作用 WSDL的主要作用是提供一種標準…

idea上傳git命令

git init git remote add origin git add . git commit -m "標題" git push -u origin master

Qt 模型視圖詳細介紹

一.文件系統模型(QFileSystemModel) 1.定義 QFileSystemModel 是 Qt 框架中的一個類,它提供了一個用于管理文件系統結構的模型。它可以用于顯示文件系統的目錄結構,以及在視圖中顯示文件和文件夾的詳細信息。 這個模型將文件系統…

15分鐘Element-UI快速入門

Element-UI 是一個基于 Vue.js 2.0 的桌面端組件庫,它提供了豐富的、可復用的組件,幫助開發者快速構建出美觀且功能強大的網頁應用。以下是一個 Element-UI 的快速入門指南: 1. 安裝 Element-UI 首先,你需要在你的 Vue.js 項目中…

各種測試方法,黑盒測試、白盒測試,靜態測試,動態測試

1.測試方法 軟件測試方法的分類有很多種,以測試過程中程序執行狀態為依據可分為靜態測試 (Static Testing,ST) 和動態測試 (Dynamic Testing,DT); 以具體實現算法細節和系統內部結構的相 關情況為根據可分黑盒測試、白盒測試和灰盒測試3類;從程序執行的方…

Python編程之調試魔法與列表逆轉之謎

新書上架~👇全國包郵奧~ python實用小工具開發教程http://pythontoolsteach.com/3 歡迎關注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目錄 一、調試魔法:揭開Python編程的神秘面紗 代碼調試實例 二、列表逆轉之謎&#…

實驗一:通過路由器實現內外網互聯

通過路由器實現內外網互聯 一、實驗拓撲 相關配置詳見下圖,內網區域為AR2以內設備,外網區域以AR1和PC1代替進行實驗測試。 二、實驗要求 通過路由器實現內外網互聯: 1.各內網PC可自動獲取ip地址; 2.各內網PC可ping通外網PC&…

SCSS 基本使用詳解

一、引言 SCSS 是 Sass(Syntactically Awesome Stylesheets)的其中一種語法,是一種預處理器腳本語言,能夠擴展 CSS 的功能,使其更加強大和高效。SCSS 保留了 CSS 的原有語法,同時增加了變量、嵌套規則、混…

藍海卓越計費管理系統 agent_setstate.php SQL注入漏洞復現

0x01 產品簡介 藍海卓越計費管理系統是一套以實現網絡運營為基礎,增強全局安全為中心,提高管理效率為目的的網絡安全運營管理系統,提供“高安全、可運營、易管理”的運營管理體驗,基于標準的RADIUS協議開發,它不僅支持PPPOE和WEB認證計費,還支持802.1X接入控制技術,與其…

WordPress外貿網站建設的成功要素與技術點

WordPress作為一款強大的建站平臺,為外貿企業提供了豐富的功能和靈活的定制選項。在這篇文章中,我們將揭示一些成功建站的秘笈,涵蓋了WordPress外貿網站建設中的關鍵要素和技術點,幫助您打造一個引領行業的成功網站。 1. 選擇合適…

【java深入學習第3章】利用 Spring Boot 和 Screw 快速生成數據庫設計文檔

免費多模型AI網站,支持豆包、GPT-4o、谷歌Gemini等AI模型,無限制使用,快去白嫖👉海鯨AI🔥🔥🔥 在開發過程中,數據庫設計文檔是非常重要的,它可以幫助開發者理解數據庫結構&#xff0…

Kubernetes部署dashboard

Kubernetes部署dashboard Kubernetes集群安裝 鯤鵬arm64架構下安裝KubeSphere linux安裝部署k8s(kubernetes)和解決遇到的坑 dashboard部署 $ kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashbo…

STM32學習和實踐筆記(30):窗口看門狗(WWDG)實驗

1.WWDG介紹 1.1 WWDG簡介 上一章我們已經介紹了IWDG,知道它的工作原理就是一個12位遞減計數器不斷遞減計數,當減到0之前還未進行喂狗的話,產生一個MCU復位。 窗口看門狗WWDG其實和獨立看門狗類似,它是一個7位遞減計數器不斷的往…

Vue3在Element UI 表格中自定義時間格式化顯示

Vue3在Element UI 表格中自定義時間格式化顯示 一、前言1、準備工作2、實現步驟1. 引入 Element UI 組件2. 自定義時間格式化函數3. 格式化日期邏輯 3、完整示例4、結論 一、前言 在開發 Web 應用程序時,常常需要在表格中展示時間數據。Element UI 是一個流行的 Vu…

【Python】 如何在Python中創建GUID UUID

基本原理 GUID(全局唯一標識符)和UUID(通用唯一標識符)都是用來在分布式系統中唯一標識信息的。在Python中,我們可以使用內置的uuid模塊來生成這些唯一標識符。 UUID有幾種不同的版本,每種版本都有其特定…

軟考-必須要背的內容

一、設計模式 1、創建型 抽象工廠:提供一個接口,創建一系列的相關相互依賴的對象,無需指定具體的類; eg:系統軟件,支持多種數據庫 生成器:將一個復雜類的表示與構造相分離,使得相…