CentOS7 的開機自啟動systemctl

2021-09-28 12:28:35 字數 3288 閱讀 2493

centos7自啟項已不用chkconfig改為:

systemctl list-unit-files
systemctl enable redis

systemctl disable redis

根據字尾名識別型別

1. .service - 定義系統服務的啟動

2. .target定義了系統啟動級別的標籤, systemd沒有執行級別的概念, 建立標籤是為了相容老版本

3. .socket定義了程序通用的套接字, 套接字和程序是分離的

4. .device 定義了系統啟動時核心識別的檔案, systemd提供了裝置的管理功能, /dev下的裝置由/etc/udev下的配置檔案和.device共同定製

5. .mount 定義系統的fs掛載點

6. .snapshop 系統快照

7. .swap 用於識別swap裝置

8. .automount 檔案系統的自動掛載點

9. .path 用於定義fs中的乙個檔案或目錄, 常用與fs發生變化時, 延遲啟用服務

通常由3本分組成

[unit]

[unit的型別: service target socket]

[install]

示例:

[unit] 

description=mongodb

after=network.target remote-fs.target nss-lookup.target

[service]

type=forking

execstart=/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/mongodb.conf

execreload=/bin/kill -s hup $mainpid

execstop=/usr/local/mongodb/bin/mongod --shutdown -f /usr/local/mongodb/mongodb.conf

privatetmp=true

[install]

wantedby=multi-user.target

附錄:

[unit]區塊字段描述

[service]區塊字段描述

no(預設值): # 退出後無操作

on-success:  # 只有正常退出時(退出狀態碼為0),才會重啟

on-failure:  # 非正常退出時,重啟,包括被訊號終止和超時等

on-abnormal: # 只有被訊號終止或超時,才會重啟

on-abort:    # 只有在收到沒有捕捉到的訊號終止時,才會重啟

on-watchdog: # 超時退出時,才會重啟

always:      # 不管什麼退出原因,都會重啟(除了systemctl stop)

# 對於守護程序,推薦用on-failure

control-group(預設):# 當前控制組裡的所有子程序,都會被殺掉

process: # 只殺主程序

mixed:   # 主程序將收到sigterm訊號,子程序收到sigkill訊號

none:    # 沒有程序會被殺掉,只是執行服務的stop命令

[install]字段描述

基礎操作:systemctl start|stop|restart|status name.service

條件式重啟:

即服務之前是啟動的則進行重啟,如果服務沒有啟動則不進行操作

systemctl try-restart name.service

過載或重啟:

首先進行過載,如果過載不成功則進行重啟

systemctl reload-or-restart name.service

過載或條件式重啟:

systemctl reload-or-try-restart name.service

設定服務是否可以被使用者設定開機啟動狀態

systemctl unmask name.service  取消禁止

systemctl mask name.service 禁止

檢視服務的當前啟用狀態:

服務已經啟動命令的狀態返回值為0 命令未啟動命令的狀態返回值為非0值

systemctl is-active name.service

檢視所有已經啟用的服務:

-t 指定顯示的unit型別。

-a 或 --all 顯示更加詳細的資訊列表。

systemctl list-units

systemctl list-units -t service

systemctl list-units -t service -a

檢視所有服務:

systemctl list-units  -a

1檢視所有服務狀態:

systemctl list-unit-files

-a 或--all : 檢視所有服務的狀態 

-t 或--type :指定需要檢視的unit型別

loaded :配置檔案已經載入,載入記憶體

active(running):一次或多次持續處理的執行

active(exited):成功完成一次性的配置

active(waiting):執行中,等待乙個事件

inactive:不執行

enabled:開機啟動

disabled:開機不啟動

static:開機不啟動,但可被另乙個啟用的服務啟用

用來列出該服務在哪些執行級別下啟用和禁用

ls /etc/systemd/system/*.wants/sshd.service

systemctl list-unit-files --type target --all

設定服務開機不啟動:

systemctl disable 服務名稱unit

檢視服務是否開機自啟:

systemctl is-enabled name.service

察看服務的依賴關係:

systemctl list-dependencies name.service

systemctl list-depebdencies

過載服務:

systemctl daemon-reload

殺掉程序:

systemctl kill 程序名

CentOS7的網絡卡開機自啟動

本來以為centos7的網絡卡開機啟動應該是 systemctl enable network 但是設定了始終還是沒有開機啟動網路服務,最好只好去改配置檔案 vi etc sysconfig network scrips ifcfg ens33 type ethernet bootproto non...

關於CentOS7的開機自啟動

在centos7中,如果需要使用rc.local進行開機自啟動,需要給rc.local加執行許可權chmod x etc rc.local配置檔案存在於以下三個目錄中 1.etc systemd system 存放系統啟動的預設級別及啟動的unit的軟連線,優先順序最高 2.run systemd ...

CentOS7設定開機自啟動命令大全

任務 舊指令新指令 使某服務自動啟動 使某服務不自動啟動 檢查服務狀態 systemctl status httpd.service 服務詳細資訊 systemctl is active httpd.service 僅顯示是否 active 顯示所有已啟動的服務 chkconfig list sys...