這篇文章主要介紹“CentOS7中systemd怎么添加自定義系統(tǒng)服務(wù)”,在日常操作中,相信很多人在CentOS7中systemd怎么添加自定義系統(tǒng)服務(wù)問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”CentOS7中systemd怎么添加自定義系統(tǒng)服務(wù)”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
創(chuàng)新互聯(lián)建站專注于企業(yè)成都全網(wǎng)營銷、網(wǎng)站重做改版、天寧網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5響應(yīng)式網(wǎng)站、商城開發(fā)、集團公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為天寧等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。systemd:
centos 7的服務(wù)systemctl腳本存放在:/usr/lib/systemd/,有系統(tǒng)(system)和用戶(user)之分,即:/usr/lib/systemd/system ,/usr/lib/systemd/user
每一個服務(wù)以.service結(jié)尾,一般會分為3部分:[unit]、[service]和[install],就以nginx為例吧,具體內(nèi)容如下:
創(chuàng)建service:
在/usr/lib/systemd/system下創(chuàng)建nginx.service文件內(nèi)容如下(看應(yīng)用需求也可以在 /usr/lib/systemd/usr下創(chuàng)建):
[unit] description=nginx - high performance web server documentation=/tupian/20230522/ after=network.target remote-fs.target nss-lookup.target [service] type=forking pidfile=/run/nginx.pid execstartpre=/usr/sbin/nginx -t -c /etc/nginx/nginx.conf execstart=/usr/sbin/nginx -c /etc/nginx/nginx.conf execreload=/bin/kill -s hup $mainpid execstop=/bin/kill -s quit $mainpid privatetmp=true [install] wantedby=multi-user.target
[unit]
description : 服務(wù)的簡單描述
documentation : 服務(wù)文檔
after= : 依賴,僅當(dāng)依賴的服務(wù)啟動之后再啟動自定義的服務(wù)單元
[service]
type : 啟動類型simple、forking、oneshot、notify、dbus
type=simple(默認值):systemd認為該服務(wù)將立即啟動。服務(wù)進程不會fork。如果該服務(wù)要啟動其他服務(wù),不要使用此類型啟動,除非該服務(wù)是socket激活型。 type=forking:systemd認為當(dāng)該服務(wù)進程fork,且父進程退出后服務(wù)啟動成功。對于常規(guī)的守護進程(daemon),除非你確定此啟動方式無法滿足需求,使用此類型啟動即可。使用此啟動類型應(yīng)同時指定 pidfile=,以便systemd能夠跟蹤服務(wù)的主進程。 type=oneshot:這一選項適用于只執(zhí)行一項任務(wù)、隨后立即退出的服務(wù)。可能需要同時設(shè)置 remainafterexit=yes 使得 systemd 在服務(wù)進程退出之后仍然認為服務(wù)處于激活狀態(tài)。 type=notify:與 type=simple 相同,但約定服務(wù)會在就緒后向 systemd 發(fā)送一個信號。這一通知的實現(xiàn)由 libsystemd-daemon.so 提供。 type=dbus:若以此方式啟動,當(dāng)指定的 busname 出現(xiàn)在dbus系統(tǒng)總線上時,systemd認為服務(wù)就緒。
pidfile : pid文件路徑
execstartpre :啟動前要做什么,上文中是測試配置文件 -t
execstart:啟動
execreload:重載
execstop:停止
privatetmp:true表示給服務(wù)分配獨立的臨時空間
[install]
wantedby:服務(wù)安裝的用戶模式,從字面上看,就是想要使用這個服務(wù)的有是誰?上文中使用的是:multi-user.target ,就是指想要使用這個服務(wù)的目錄是多用戶?!敢陨先莻€人理解,瞎猜的,如有不當(dāng),請大家多多指教」每一個.target實際上是鏈接到我們單位文件的集合,當(dāng)我們執(zhí)行:
$ sudo systemctl enable nginx.service
就會在/etc/systemd/system/multi-user.target.wants/目錄下新建一個/usr/lib/systemd/system/nginx.service 文件的鏈接。
操作service:
#啟動服務(wù) $ sudo systemctl start nginx.service #查看日志 $ sudo journalctl -f -u nginx.service -- logs begin at 四 2015-06-25 17:32:20 cst. -- 6月 25 10:28:24 leco.lan systemd[1]: starting nginx - high performance web server... 6月 25 10:28:24 leco.lan nginx[7976]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok 6月 25 10:28:24 leco.lan nginx[7976]: nginx: configuration file /etc/nginx/nginx.conf test is successful 6月 25 10:28:24 leco.lan systemd[1]: started nginx - high performance web server. #重啟 $ sudo systemctl restart nginx.service #重載 $ sudo systemctl reload nginx.service #停止 $ sudo systemctl stop nginx.service
到此,關(guān)于“CentOS7中systemd怎么添加自定義系統(tǒng)服務(wù)”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
分享名稱:CentOS7中systemd怎么添加自定義系統(tǒng)服務(wù)-創(chuàng)新互聯(lián)
當(dāng)前路徑:http://jinyejixie.com/article8/ccchop.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、動態(tài)網(wǎng)站、用戶體驗、搜索引擎優(yōu)化、全網(wǎng)營銷推廣、網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容