天天看點

Linux(十二)—— Linux 程序管理一、Linux 程序管理二、Linux 服務管理三、Linux 監控服務

文章目錄

  • 一、Linux 程序管理
    • 1、Linux 程序概述
    • 2、程序指令
  • 二、Linux 服務管理
    • 1、Linux 服務概述
    • 2、Linux 服務管理指令
  • 三、Linux 監控服務

一、Linux 程序管理

1、Linux 程序概述

(1)程序簡介

  • 在LINUX中,每個執行的程式(代碼)都稱為一個程序。一個程序都配置設定一個ID号。
  • 每一個程序, 都會對應一個父程序,而這個父程序可以複制多個子程序。例如wwww伺服器。
  • 每個程序都可能以兩種方式存在的。前台與背景,所謂前台程序就是使用者目前的螢幕上可以進行操作的。背景程序則是實際在操作,但由于螢幕上無法看到的程序,通常使用背景方式執行。
  • 一般系統的服務都是以背景程序的方式存在,而且都會常駐在系統中,直到關機才才結束。

2、程序指令

(1)

ps

指令:檢視程序,顯示的字段有

  • PID:程序識别号
  • TTY:終端機号
  • TIME:此程序所消CPU時間
  • CMD:正在執行的指令或程序名

ps -a

:顯示目前終端的所有程序資訊

ps -u

:一使用者的格式顯示程序資訊

ps -x

:顯示背景程序運作的參數

Linux(十二)—— Linux 程式管理一、Linux 程式管理二、Linux 服務管理三、Linux 監控服務
Linux(十二)—— Linux 程式管理一、Linux 程式管理二、Linux 服務管理三、Linux 監控服務

在上圖的顯示中,

  • USER:表示使用者名
  • PID:表示程序的id
  • %CPU:表示占用的CPU
  • %MEM:表示占用的記憶體百分比
  • VSZ:表示使用的虛拟記憶體
  • RSS:表示使用的實體記憶體
  • TTY:表示使用的終端
  • STAT:表示程序的狀态,s表示休眠,r表示運作
  • START:表示程序的啟動時間
  • TIME:表示占用cpu總時間
  • COMMAND:表示程序執行時的指令行

ps -aux | grep xxx

:檢視一個具體的程序,如xxx

Linux(十二)—— Linux 程式管理一、Linux 程式管理二、Linux 服務管理三、Linux 監控服務

ps -ef | more

:檢視父程序

Linux(十二)—— Linux 程式管理一、Linux 程式管理二、Linux 服務管理三、Linux 監控服務

(2)終止程序指令:

kill

killall

  • kill [選項] 程序号

    :通過程序号殺死程序
  • killall 程序名稱

    :通過程序名稱殺死程序,也支援通配符,這在系統因負載過大而變得很慢時很有用

常用選項:

  • -9

    :表示強迫程序立即停止

(3)檢視程序樹:

pstree

  • pstree [選項]

    :以樹的形式檢視程序

常用選項

  • -p

    :顯示程序的PID
  • -u

    :顯示程序的所屬使用者
    Linux(十二)—— Linux 程式管理一、Linux 程式管理二、Linux 服務管理三、Linux 監控服務

二、Linux 服務管理

1、Linux 服務概述

(1)服務(service)本質就是程序,但是是運作在背景的,通常都會監聽某個端口,等待其它程式的請求,比如(mysql, sshd防火牆等),是以我們又稱為守護程序

2、Linux 服務管理指令

(1)

service

管理指令:

  • service服務名 [start | stop| restart | reload| status]

  • 在Centos7.0以後,指令為

    systemctl

    ,而不是``service

示例

  • 停止/啟動/檢視防火牆
    Linux(十二)—— Linux 程式管理一、Linux 程式管理二、Linux 服務管理三、Linux 監控服務
    (2)

    setup

    指令設定服務自動啟動
  • 執行setup指令進入以下界面
    Linux(十二)—— Linux 程式管理一、Linux 程式管理二、Linux 服務管理三、Linux 監控服務
  • 選擇系統服務,進入下面的界面,在這裡就可以設定需要自動啟動的服務,帶

    *

    号的都是可以自動啟動的服務。
    Linux(十二)—— Linux 程式管理一、Linux 程式管理二、Linux 服務管理三、Linux 監控服務
    (3)

    /etc/init.d/

    指令:查詢服務
    Linux(十二)—— Linux 程式管理一、Linux 程式管理二、Linux 服務管理三、Linux 監控服務
    (4)

    vi/etc/inittab

    指令:檢視/修改服務的預設運作級别

    ① 服務的運作級别

  • 運作級别0:系統停機狀态,系統預設運作級别不能設為0,否則不能正常啟動
  • 運作級别1:單使用者工作狀态,用于root權限,用于系統維護,該運作級别禁止遠端登陸
  • 運作級别2:多使用者狀态(沒有NFS),不支援網絡連接配接
  • 運作級别3:完全的多使用者狀态(有NFS),登入後進入控制台指令行模式
  • 運作級别4:系統未使用,保留
  • 運作級别5:X11控制台,登陸後進入圖形GUI模式
  • 運作級别6:系統正常關閉并重新開機,預設運作級别不能設定為6,否則系統不能正常啟動

② 開機流程

開機 >> BIOS >> /boot >> init程序 >> 運作級别 >> 運作級别對應的服務

Linux(十二)—— Linux 程式管理一、Linux 程式管理二、Linux 服務管理三、Linux 監控服務

(5)

chkconfig

指令:給每個服務的各個運作級别設定自啟動/關閉

  • chkconfig --list | grep xxx

    :檢視所有的服務的自啟動狀态
    Linux(十二)—— Linux 程式管理一、Linux 程式管理二、Linux 服務管理三、Linux 監控服務
  • chkconfig [服務名] --list

    :檢視某個服務的自啟動狀态
    Linux(十二)—— Linux 程式管理一、Linux 程式管理二、Linux 服務管理三、Linux 監控服務
  • chkconfig --level 5 [服務名] on/off

    :指定檢視某個服務的指定運作級别的自啟動狀态
    Linux(十二)—— Linux 程式管理一、Linux 程式管理二、Linux 服務管理三、Linux 監控服務

三、Linux 監控服務

(1)

top

指令:動态監控程序

top與ps.指令很相似。它們都用來顯示正在執行的程序。Top與ps最大的不同之處,在于top在執行一段時間可以更新正在運作的的程序。

  • top [選項]

常用選項

  • -d 秒數

    :指定top指令每隔幾秒更新,預設是3秒在top指令的互動模式當中可以執行的指令
  • -i

    :使top不顯示任何閑置或者僵死程序.
  • -p

    :遇過指定監控程序ID來僅僅監控某個程序的狀态。

互動操作說明

  • P

    :以CPU使用率排序,預設就是此項
  • M

    :以記憶體的使用率排序
  • N

    :以PID排序
  • q

    :退出top

示例

Linux(十二)—— Linux 程式管理一、Linux 程式管理二、Linux 服務管理三、Linux 監控服務

上圖中

  • 20:57:25

    :目前時間
  • 38 min

    :系統已運作時間
  • 2 users

    :目前登入使用者數
  • load average: 0.00,0.00,0. 00

    :負載均衡
  • Tasks :285 total

    :總程序數
  • 1 running 284

    :正在運作程序數
  • 0 stopped

    :已停止程序數
  • 0 zombie

    :僵屍程序數
  • Cpu(s) 0. 0%us

    :使用者占用cpu
  • 0.1%sy

    :系統占用cpu
  • 99.9%id

    :空閑cpu
  • Mem

    :代表目前記憶體使用情況
  • Swap

    :Swap分區

(2)

netstat

指令:檢視系統網絡情況

  • netstat [選項]

選項說明

  • -an

    :按一定順序排列輸出
  • -p

    :顯示哪個程序在調用
    Linux(十二)—— Linux 程式管理一、Linux 程式管理二、Linux 服務管理三、Linux 監控服務

(3)

ping

指令:檢測主機連接配接指令

這是一種網絡檢測檢測工具,它主要是用檢測遠端主機是否正常,或是兩部主機間的媒體是否為斷、網線是否脫落或網卡故障,如: ping對方ip位址I