1. 程式人生 > >[Linux]服務管理:service、systemctl、chkconfig

[Linux]服務管理:service、systemctl、chkconfig

服務管理介紹

服務(Service)本質是程序,但是是執行在後臺的,通常都會監聽某個埠,等待其他程式的請求,比如(mysql、sshd、防火牆等),因此我們又稱為守護程序,是Linux中非常重要的一個知識點。

這裡寫圖片描述

Service
service管理指令

service 服務名 [start | stop |restart |reload |stauts]

注意:在CentOS7.0後,不再使用service,而是systemctl 。centos7.0是向下相容的,也是可以用service.

示例

  1. 檢視當前防火牆的狀況,關閉防火牆和重啟防火牆。

    • //... ... 檢視當前防火牆的狀況  Active: inactive (dead)  說明是關閉狀態
      [[email protected] ~]# service iptables status
      Redirecting to /bin/systemctl status iptables.service
      ● iptables.service - IPv4 firewall with iptables
      Loaded: loaded (/usr/lib/systemd/system/iptables.service; 
      disabled; vendor preset: disabled)
      Active: inactive (dead)  
    • //... ...那麼我們來開啟防火牆
      [[email protected] ~]# service iptables start
      Redirecting to /bin/systemctl start iptables.service
      //... ...開啟完防火牆,再來重新檢視一下當前防火牆的狀態  Active: active (exited) :
      //說明防火牆成功開啟
      [[email protected] ~]# service iptables status
      Redirecting to /bin/systemctl status iptables.service
      ● iptables.service - IPv4 firewall with iptables
      Loaded: loaded (/usr/lib/systemd/system/iptables.service; disabled; 
      vendor preset: disabled)
      Active: active (exited) since 三 2018
      -05-02 11:33:45 CST; 20s ago (code=exited, status=0/SUCCESS) Main PID: 27387 (code=exited, status=0/SUCCESS) 502 11:33:45 wcl systemd[1]: Starting IPv4 firewall with iptables... 502 11:33:45 wcl iptables.init[27387]: iptables: Applying firewall rules: [ 確定 ] 502 11:33:45 wcl systemd[1]: Started IPv4 firewall with iptables.
    • //... ...  關閉防火牆
      [[email protected] ~]# service iptables stop
      Redirecting to /bin/systemctl stop iptables.service
      //... ...  檢視防火牆狀態  :   Active: inactive (dead):已經關閉
      [[email protected] ~]# service iptables status
      Redirecting to /bin/systemctl status iptables.service
      ● iptables.service - IPv4 firewall with iptables
       vendor preset: disabled)
      Active: inactive (dead) since 三 2018-05-02 11:36:24 CST; 5s ago
      Process: 27463 ExecStop=/usr/libexec/iptables/iptables.init stop 
         (code=exited, status=0/SUCCESS)
      (code=exited, status=0/SUCCESS)
      Main PID: 27387 (code=exited, status=0/SUCCESS)
      
      // ... ... ... ...此處省略部分顯示內容
      502 11:36:24 wcl systemd[1]: Stopped IPv4 firewall with iptables.
      [[email protected] ~]# systemctl status firewalld
      ● firewalld.service - firewalld - dynamic firewall daemon
      Loaded: loaded (/usr/lib/systemd/system/firewalld.service; 
      disabled; vendor preset: enabled)
      Active: inactive (dead)
        Docs: man:firewalld(1)

      備註總結

      1. service iptables status:檢視防火牆狀態
      2. service iptables start:開啟防火牆服務
      3. service iptables stop:關閉防火牆服務;
      4. 同理,我們可以在Centos7.0中用systemctl指令
      5. systemctl status firewalld:檢視防火牆狀態
      6. systemctl start firewalld:開啟防火牆服務
      7. systemctl stop firewalld:關閉防火牆服務;
      8. 細節注意 :關閉或者啟動防火牆後,能夠立即生效,但這種方式只是臨時生效,當重啟服務後,還是要回歸以前的服務設定。如果希望設定某個服務自啟動或者關閉永久生效,要使用chkconfig指令
檢視服務名

ls -l /etc/init.d/:列出系統中有哪些服務

[[email protected] ~]# ls -l /etc/init.d/        
總用量 64
-rw-r--r-- 1 root root 17500 53 2017 functions
-rwxr-xr-x 1 root root  9980 411 2015 jexec
-rwxr-xr-x 1 root root 10604 428 17:24 mysqld
-rwxr-xr-x 1 root root  4334 53 2017 netconsole
-rwxr-xr-x 1 root root  7293 53 2017 network
-rw-r--r-- 1 root root  1160 37 21:27 README
(Runlevel)
服務的執行級別(runlevel)

vim /etc/inittab:檢視或者修改預設級別

下面我來檢視一下我的linux系統中的服務執行級別

[[email protected] ~]# vim /etc/inittab
# inittab is no longer used when using systemd.
#
# ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
#
# Ctrl-Alt-Delete is handled by /usr/lib/systemd/system/ctrl-alt-del.target
#
# systemd uses 'targets' instead of runlevels. By default, there are two main targets:
#// 翻譯:systemd使用“目標”而不是執行級別。 預設情況下,有兩個主要目標
# multi-user.target: analogous to runlevel 3    // 翻譯:multi-user.target:類似於執行級別3
# graphical.target: analogous to runlevel 5     // 翻譯:graphical.target:類似於執行級別5
#
# To view current default target, run:          //翻譯:要檢視當前的預設目標,請執行
# systemctl get-default
#
# To set a default target, run:
# systemctl set-default TARGET.target
// 根據/etc/inittab檔案內容 ,我知道了我的linux系統執行級別為3
[root@wcl ~]# systemctl get-default
multi-user.target     
linux
linux開機的流程

這裡寫圖片描述

chkconfig
chkconfig指令

通過chkconfig命令可以給每個服務的各個執行級別設定自啟動/關閉

chkconfig --list|grep xxx:篩選檢視xxx服務

示例

  1. 檢視所有服務

    • [root@wcl ~]# chkconfig --list
      注:該輸出結果只顯示 SysV 服務,並不包含
      原生 systemd 服務。SysV 配置資料
      可能被原生 systemd 配置覆蓋。 
      
         要列出 systemd 服務,請執行 'systemctl list-unit-files'。
         檢視在具體 target 啟用的服務請執行
         'systemctl list-dependencies [target]'。
      
      jexec           0:1:2:3:4:5:6:關
      mysqld          0:1:2:3:4:5:6:關
      netconsole      0:1:2:3:4:5:6:關
      network         0:1:2:3:4:5:6:
  2. 檢視單個mysqld服務,有兩種方式;

    ​ 方式1:chkconfig --list | grep 服務名

    ​ 方式2:chkconfig 服務名--list

    • //方式1: chkconfig --list | grep mysqld
      [root@wcl ~]# chkconfig --list | grep mysqld
      mysqld          0:關    1:關    2:開    3:開    4:開    5:開    6:關
    • // 方式2:chkconfig mysqld --list
      [[email protected] ~]# chkconfig mysqld --list
      mysqld          0:關    1:關    2:開    3:開    4:開    5:開    6:關
  3. 關閉mysqld服務執行級別5的服務

    chkconfig --level 服務執行級別 服務名 on/off:開啟關閉某服務執行級別的服務

    • [root@wcl ~]# chkconfig --level 5 mysqld off      //關閉
      [root@wcl ~]# chkconfig mysqld --list     //檢視驗證是否成功關閉  
      mysqld          0:1:2:3:4:5:6:

    注意

    注:該輸出結果只顯示 SysV 服務,並不包含
    原生 systemd 服務。SysV 配置資料
    可能被原生 systemd 配置覆蓋。

      要列出 systemd 服務,請執行 'systemctl list-unit-files'。
      檢視在具體 target 啟用的服務請執行
      'systemctl list-dependencies [target]'

上面指令中查詢的結果出現這段內容,只因為我是在Centos7上面操作的原因。Centos7和之前的老版本差別較大。

細節注意chkconfig重新設定服務後自啟動或關閉,需要重啟機器reboot才能生效。

Practiceexample:
  1. 檢視sshd的服務執行狀態:service sshd status

  2. 顯示當前系統中所有服務的各個執行級別的執行狀態:chkconfig --list

  3. 將sshd服務在執行級別5下設定為不自動啟動:chkconfig --level 5 sshd off

  4. 在所有執行級別下,關閉防火牆:chkconfig iptables off

  5. 在所有執行級別下,開啟防火牆:chkconfig iptables on

額外補充總結

chkconfig --del mysqld:刪除服務mysqld

chkconfig --add mysqld:新增服務mysqld

chkconfig mysqld off:所有執行級別下關閉服務mysqld

chkconfig mysqld on:所有執行級別下開啟服務mysqld

相關推薦

[Linux]服務管理servicesystemctlchkconfig

服務管理介紹 服務(Service)本質是程序,但是是執行在後臺的,通常都會監聽某個埠,等待其他程式的請求,比如(mysql、sshd、防火牆等),因此我們又稱為守護程序,是Linux中

Linux服務管理 chkconfigsystemctl 命令

對於 Linux 管理員來說這是一個重要(美妙)的話題,所以每個人都必須知道,並練習怎樣才能更高效的使用它們。 在 Linux 中,無論何時當你安裝任何帶有服務和守護程序的包,系統預設會把這些服務的初始化及 systemd 指令碼新增進去,不過此時它們並沒有被啟用。 我們需要手動的開啟

Linux磁碟管理分割槽格式化掛載

1、磁碟的物理結構: 2、為什麼進行分割槽: 3、磁碟的種類: 4、磁碟分割槽: 5、磁碟分割槽操作: 6、磁碟格式化: 7、掛載磁碟: 8、掛載型別: 9、UUID: ###########################################################

linux 高階記憶體頁框管理永久核心對映臨時核心對映以及非連續記憶體分配

摘要:高階記憶體頁框的核心對映分為三種情況:永久核心對映、臨時核心對映和非連續記憶體對映。那麼這三者有什麼區別和聯絡呢?臨時核心對映如何保證不會被阻塞呢?本文主要為你解答這些疑問,並詳細探討高階記憶體對映的前兩種方式。 1.高階記憶體的區域劃分 核心將高階記憶體

linux 服務管理 CrontbaNtpdateLogrotateSupervisor

  crond     linux 系統則是由 cron (crond

Linux系統管理之Python生態工具文本處理和系統管理

相對 print 重復調用 示例 快捷 python編程 expr markup htm 一、Python生態工具 一、Python內置小工具   1、秒級啟動一個下載服務器   Python 內置了一個下載服務器就能夠顯著提升效率了 。 例如, 你的同事要讓你傳

通過ansible批量管理Linux服務配置Inventory和批量執行命令

ice 單引號 p地址 pytho 不支持 passwd 賬號密碼 常用 系統 ansible是一款比較新的自動化運維工具,基於Python開發,集合了眾多運維工具(puppet、cfengine、chef、func、fabric)的優點,實現了批量系統配置、批量程序部署、

通過ansible批量管理Linux服務playbook作業

hive 形式 特定 developer ignore utf mar hat copy Playbooks是一種簡單的配置管理系統與多機器部署系統的基礎,非常適合於復雜應用的部署。Playbooks可用於聲明配置,可以編排有序的執行過程,甚至可以做到在多組機器間來回有序的

Linux網路程式設計socket程式設計簡介網路位元組序及相關函式

Socket(套接字) socket可以看成是使用者程序與核心網路協議棧的程式設計介面(API函式)。 socket不僅可以用於本機的程序間通訊,還可以用於網路上不同主機的程序間通訊。 IPv4套接字地址結構 IPv4套接字地址結構通常也稱為“網際套接字地址結構”,它以

Linux資料庫管理——day4——多表查詢phpMyAdmin管理工具修改資料庫使用者密碼使用者授權

複製表     主要作用:  備份表 、 快速建表     語法: create table 表名 SQL查詢語句 # 備份一個表的所有資料 create table 表名 select * from 被備份的表; # 以一個表的表結構為模型建立一個新表,但不要資料 cr

Linux資料庫管理——day10——分庫分表資料庫硬體優化

分庫分表     分庫分表也稱作分片技術,主要作用是將存放在一個數據庫中的資料按照特定的方法進行拆分,分散存放在多個數據庫中,以達到分散多臺裝置實現負載均衡     垂直分割        縱向切分,把一個表的表結構拆分開來,形成多個表        實質上就是把一個表的表

Linux資料庫管理——day12——Redis資料庫叢集Ruby軟體簡析

部署redis叢集    1. 將redis部署進入叢集       1.1 修改主配置檔案/etc/redis/6379.conf sed -i 's/# cluster-enabled/cluster-enabled/' /etc/redis/6379.conf se

Linux命令學習建立刪除檔案資料夾的命令

今天學習了幾個命令,是建立、刪除檔案和資料夾的,在linux裡,資料夾是目錄,下面說下我學習的命令。 建立資料夾【mkdir】   一、mkdir命令使用許可權     所有使用者都可以在終端使用 mkdir

websphere服務建立概要檔案刪除概要檔案

cd /usr/IBM/WebSphere/AppServer/bin 檢視刪除概要 ./manageprofiles.sh -listProfiles [Dmgr01, AppSrv01] ./manageprofiles.sh -delete -profileNam

【筆記】微服務部署藍綠部署滾動部署灰度釋出金絲雀釋出

在專案迭代的過程中,不可避免需要”上線“。上線對應著部署,或者重新部署;部署對應著修改;修改則意味著風險。 目前有很多用於部署的技術,有的簡單,有的複雜;有的得停機,有的不需要停機即可完成部署。本文的目的就是將目前常用的佈署方案做一個總結。 一、藍綠佈署 Blu

Linux Systemd 詳細介紹: UnitUnit FileSystemctlTarget

## Systemd ### 簡介 CentOS 7 使用 Systemd 替換了SysV Ubuntu 從 15.04 開始使用 Systemd Systemd 是 Linux 系統工具,用來啟動守護程序,已成為大多數發行版的標準配置 #### 特點 優點: 1. 按需啟動程序,減少系統資源消

Linux-服務管理命令chkconfig

tro 增加 無網 off 情況 ext etc 符號連接 是否 Linux-服務管理命令chkconfig 一 chkconfig簡介 chkconfig命令主要用來更新(啟動或停止)和查詢系統服務的運行級信息。謹記chkconfig不是立即自動禁止或激活一個服務,

linux服務管理

查看系統 改變 服務 技術分享 runlevel 級別 inux bcd linux服務 系統運行級別 查看系統當前運行級別runlevel init改變系統級別 linux服務管理

Linux服務管理之NTP服務器配置

ntpd ntpserver ntpq目標環境,3臺CentOS 6.6,一臺作為NTPD服務與外部公共NTP服務同步時間,同時作為內網的NTPD服務器,其他機器與這臺服務做時間同步。1、NTP時間同步方式選擇 NTP同步方式在linux下一般兩種:使用ntpdate命令直接同步和使用NTPD服務平滑同步

Linux服務管理1-1 課程簡介與系統運行級別

post 級別 .com mage div 分享圖片 inux 簡介 log Linux服務管理1-1 課程簡介與系統運行級別