CentOS開啟服務命令詳解

2021-10-13 17:17:57 字數 4245 閱讀 4360

講服務管理之前先了解下linux的啟動流程非常有必要,直觀的先上centos的啟**:

rhel6: 開機自檢bios > mbr引導 > grub選單 > 載入核心 > init程序初始化

rhel7:開機自檢bios > mbr引導 > grub2選單 > 載入核心 >system程序初始化

對於支援 service 的程式,安裝的時候,會自動的在 /etc/init.d 目錄新增乙個配置檔案。當我們使用 service 控制程式時,比如執行開啟httpd的服務:service httpd  start  。那麼我們的 service 就會開啟 /etc/init.d/httpd 配置檔案裡面指向的 /usr/sbin/httpd 可執行檔案

對於支援 systemd 的程式,安裝的時候,會自動的在 /usr/lib/systemd/system 目錄新增乙個配置檔案。當我們使用 systemctl 控制該程式時,比如執行開啟httpd服務:systemctl  start  httpd.service 。那麼我們的 systemctl 就會開啟 httpd.service 配置裡面指向的 /usr/sbin/httpd 可執行檔案

如果我們想讓該程式開機啟動,我們可以執行命令 systemctl enable  httpd,這個命令相當於在 /etc/systemd/system 目錄新增乙個軟鏈結,指向 /usr/lib/systemd/system 目錄下的 httpd.service 檔案。這是因為開機時,systemd只執行 /etc/systemd/system 目錄裡面的配置檔案。

引數

說明

/etc/init.d/

服務啟動指令碼配置檔案存放目錄

/etc/inittab

預設執行級別配置檔案

/etc/init/rcs.conf

系統初始化配置檔案

/etc/init/rc.conf

各執行級別初始化的配置檔案

/etc/init/rcs-sulogin.conf

單使用者模式啟動 /sbin/sushell 環境的配置檔案

/etc/init/control-alt-delete.conf

終端下的 ctrl+alt+del 熱鍵操作的配置檔案

/etc/sysconfig/init

tty終端的配置檔案

/etc/init/start-ttys.conf

配置tty終端的開啟數量、裝置檔案

/etc/init/tty.conf  或  /etc/init/serial.conf

控制tty終端的開啟

引數

說明

/etc/systemd/system/default.target

取代/etc/inittab檔案配置,通常符號鏈結到 /lib/systemd/system/graphical.target

/run/systemd/system/

系統執行過程中所產生的服務指令碼所在目錄

/etc/systemd/system/

裡面存放著不同級別的開啟自啟服務 

/usr/lib/systemd/system/ 和 /lib/systemd/system/ 和,兩個檔案完全一樣,因為lib是/usr/lib的軟鏈結

每個服務最主要的啟動指令碼設定,類似於之前的 /etc/init.d/

執行級別

說明

rehl 6/7 命令

rhel7 命令0

關機狀態,使用該級別將會關機

init  0

poweroff 1

系統救援模式,多用於系統維護

init  1

systemctl  isolate  rescue.target 2

字元介面的多使用者模式(不可訪問網路)

init  2

systemctl  isolate  mutil-user.target 3

字元介面的完整多使用者模式,大多數伺服器主機執行此級別

init  3

systemctl  isolate  mutil-user.target 4

未分配使用

init  4

systemctl  isolate  mutil-user.target 5

圖形介面的多使用者模式,提供了圖形桌面操作環境

init  5

systemctl  isolate  graphical.target 6

重新啟動主機

init  6

reboot

有了以上的內容,再來看程序管理相信已經非常有底氣了

rhel6 用 service 和 chkconfig 來管理服務,它是 systemv 架構下的乙個工具。

rhel7 是用 systemctl  來管理服務,它融合了之前的 service 和 chkconfig 的功能於一體。可以使用它永久性或只在當前會話中啟用/禁用服務。systemctl 是 systemd 架構下的乙個工具。

動作

rhel6 舊指令

rhel7新指令

啟動某服務

停止某服務

重啟某服務

檢查服務狀態

刪除某服務 

停掉應用,刪除其配置檔案

使服務開機自啟動

使服務開機不自啟動

顯示所有已啟動的服務

chkconfig  --list

systemctl list-unit-files | grep enabled

加入自定義服務

chkconfig  --add  test

systemctl   load  test

查詢服務是否開機自啟

檢視啟動失敗的服務

systemctl  --failed

systemd的一些常用命令:

列出所有可用單元 : systemctl  list-unit-files

列出所有執行的單元:systemctl list-unit-files | grep enabled 

列出所有可用服務:  systemctl list-unit-files  --type=service

列出所有執行的服務:systemctl list-unit-files  --type=service | grep enabled 

遮蔽httpd服務:systemctl  mask httpd

是的,明白原理後看服務管理就這麼簡單的幾個指令,你get到了嗎?

Centos開啟FTP服務

第一步 chkconfig vsftpd on 開機自啟動vsftpd服務 第二步 etc init.d vsftpd start 開啟vsftpd服務 找到下面這個並禁用 anonymous enable no 禁用登陸 再新增一行 local enable yes 開啟本地使用者登陸 第四步 建...

Centos開啟ftp服務

安裝yum install vsftpd y修改配置vi etc vsftpd vsftpd.conf 禁用 anonymous enable no 禁止切換根目錄 chroot local user yes 啟用寫的許可權 allow writeable chroot yes增加使用者 usera...

centos開啟ftp服務

新安裝的要先配置網路 vi etc sysconfig network scripts ifcfg eno16777736 最後一行 onboot yes yum install net tools ifconfig 檢視ip位址安裝yum install vsftpd y 修改配置vi etc v...