文章目錄
- 一、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
:顯示背景程序運作的參數
在上圖的顯示中,
- USER:表示使用者名
- PID:表示程序的id
- %CPU:表示占用的CPU
- %MEM:表示占用的記憶體百分比
- VSZ:表示使用的虛拟記憶體
- RSS:表示使用的實體記憶體
- TTY:表示使用的終端
- STAT:表示程序的狀态,s表示休眠,r表示運作
- START:表示程序的啟動時間
- TIME:表示占用cpu總時間
- COMMAND:表示程序執行時的指令行
ps -aux | grep xxx
:檢視一個具體的程序,如xxx
ps -ef | more
:檢視父程序
(2)終止程序指令:
kill
和
killall
-
:通過程序号殺死程序kill [選項] 程序号
-
:通過程序名稱殺死程序,也支援通配符,這在系統因負載過大而變得很慢時很有用killall 程序名稱
常用選項:
-
:表示強迫程序立即停止-9
(3)檢視程序樹:
pstree
-
:以樹的形式檢視程序pstree [選項]
常用選項
-
:顯示程序的PID-p
-
:顯示程序的所屬使用者-u
二、Linux 服務管理
1、Linux 服務概述
(1)服務(service)本質就是程序,但是是運作在背景的,通常都會監聽某個端口,等待其它程式的請求,比如(mysql, sshd防火牆等),是以我們又稱為守護程序
2、Linux 服務管理指令
(1)
service
管理指令:
-
service服務名 [start | stop| restart | reload| status]
- 在Centos7.0以後,指令為
,而不是``servicesystemctl
示例
- 停止/啟動/檢視防火牆 (2)
指令設定服務自動啟動setup
- 執行setup指令進入以下界面
- 選擇系統服務,進入下面的界面,在這裡就可以設定需要自動啟動的服務,帶
号的都是可以自動啟動的服務。 (3)*
指令:查詢服務 (4)/etc/init.d/
vi/etc/inittab
指令:檢視/修改服務的預設運作級别
① 服務的運作級别
- 運作級别0:系統停機狀态,系統預設運作級别不能設為0,否則不能正常啟動
- 運作級别1:單使用者工作狀态,用于root權限,用于系統維護,該運作級别禁止遠端登陸
- 運作級别2:多使用者狀态(沒有NFS),不支援網絡連接配接
- 運作級别3:完全的多使用者狀态(有NFS),登入後進入控制台指令行模式
- 運作級别4:系統未使用,保留
- 運作級别5:X11控制台,登陸後進入圖形GUI模式
- 運作級别6:系統正常關閉并重新開機,預設運作級别不能設定為6,否則系統不能正常啟動
② 開機流程
開機 >> BIOS >> /boot >> init程序 >> 運作級别 >> 運作級别對應的服務
(5)
chkconfig
指令:給每個服務的各個運作級别設定自啟動/關閉
-
:檢視所有的服務的自啟動狀态chkconfig --list | grep xxx
-
:檢視某個服務的自啟動狀态chkconfig [服務名] --list
-
:指定檢視某個服務的指定運作級别的自啟動狀态chkconfig --level 5 [服務名] on/off
三、Linux 監控服務
(1)
top
指令:動态監控程序
top與ps.指令很相似。它們都用來顯示正在執行的程序。Top與ps最大的不同之處,在于top在執行一段時間可以更新正在運作的的程序。
-
top [選項]
常用選項
-
:指定top指令每隔幾秒更新,預設是3秒在top指令的互動模式當中可以執行的指令-d 秒數
-
:使top不顯示任何閑置或者僵死程序.-i
-
:遇過指定監控程序ID來僅僅監控某個程序的狀态。-p
互動操作說明
-
:以CPU使用率排序,預設就是此項P
-
:以記憶體的使用率排序M
-
:以PID排序N
-
:退出topq
示例
上圖中
-
:目前時間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
-
:使用者占用cpuCpu(s) 0. 0%us
-
:系統占用cpu0.1%sy
-
:空閑cpu99.9%id
-
:代表目前記憶體使用情況Mem
-
:Swap分區Swap
(2)
netstat
指令:檢視系統網絡情況
-
netstat [選項]
選項說明
-
:按一定順序排列輸出-an
-
:顯示哪個程序在調用-p
(3)
ping
指令:檢測主機連接配接指令
這是一種網絡檢測檢測工具,它主要是用檢測遠端主機是否正常,或是兩部主機間的媒體是否為斷、網線是否脫落或網卡故障,如: ping對方ip位址I