1. 程式人生 > >Linux的系統程序和服務管理

Linux的系統程序和服務管理

一、系統程序

1.什麼是程序
程序就是系統未完成並且正在進行的工作
2.檢視程序
1.圖形方式檢視
    gnome-system-monitor

2.程序檢視命令

ps    
        -A         ##所有程序

 

ps      -a    ##在當前環境中執行的程序,不包含環境資訊
        -u    ##顯示程序使用者資訊
         a    ##在當前環境中執行的程序
         x    ##列出系統中所有執行包含tty輸出裝置
         f    ##顯示程序的父子關係
         e    ##顯示程序的詳細資訊(系統資源的呼叫)

 3.ps的長用組合

ps aux        ##顯示系統中所有程序並顯示程序使用者
ps ef         ##顯示程序詳細資訊並顯示程序父子關係
ps ax         ##顯示當前系統中的所有程序

 

 4.顯示程序指定資訊

  ps -o    xxx     ##顯示程序的指定資訊
           comm    ##程序名稱
           user    ##程序所有人
           group   ##程序所有組
           %cpu    ##程序cpu使用率
           %mem    ##程序記憶體使用率
           pid     ##程序id
           nice    ##程序優先順序

5. 程序排序  

 ps ax  --sort=
               +%cpu|-%cpu   -o %cpu
               +%mem|-%mem -o %men

stat中顯示的資訊 
           S    ##程序狀態
           l    ##記憶體中有鎖定空間
           N    ##優先順序低
           <    ##優先順序高
           +    ##前臺執行
           s    ##頂級程序

 

二、程序優先順序 

1.程序的優先順序範圍
-20~19
2.優先順序檢視

ps ax -o pid,nice,comm

3.指定某個優先順序開啟程序

nice -n 優先順序數字  +程序名稱
nice -n -5 vim &    ##開啟vim並且指定程式優先順序為-5

4.改變程序優先順序
 

reince -n 優先順序數字 +程序pid
renice -n -5 1806      ##改變1806程序的優先順序為-5

5.環境中程序的前後臺呼叫

jobs                   ##檢視被打入環境後臺的程序
ctrl+z                 ##把佔用終端的程序打入後臺
fg jobsnum             ##把後臺程序調回前臺
bg jobsnum             ##把後臺暫停的程序執行
comm &                 ##讓命令直接在後臺執行

 

三、程序訊號

 1.常用訊號等級

1         ##程序重新載入配置
2         ##刪除程序在記憶體中的資料
3         ##刪除滑鼠在記憶體中的資料
9         ##強行結束單個程序(不能被阻塞)
15        ##正常關閉程序     (可能會被阻塞)  
18        ##執行暫停的程序
19        ##暫停某個程序     (不能被阻塞)
20        ##把程序打入後臺    (可20.把程序打入後臺(可以被阻塞)

          ##可以用man 7 signal    ##檢視訊號詳細資訊

2.強制結束程序

kill     -訊號     程序pid
killall  -訊號    程序名字
pkill    -u student -訊號   

四、程序的動態監控

1.top               

 1.    ##顯示cpu每個核的負載

 s    ##調整重新整理頻率

 c    ##CPU負載排序

    m    ##記憶體使用量排序


    h    ##檢視幫助
    u    ##檢視指定使用者程序

   k    ##對指定程序發起訊號
   q    ##退出

五、服務管理

1.用什麼控制服務
    系統初始化程序可以對服務進行相應的控制
2.當前系統初始化程序是什麼

systemd                  ##系統初始化程序
           pstree        ##顯示系統中的程序樹

 3.程序控制命令

    ssh ========>sshd
    localhost       server
    systemctl            ##服務控制命令

systemctl     status    sshd    ##檢視服務狀態,inactive(不可用),active(可用)

 systemctl    start     sshd      ##開啟服務
 systemctl    stop     sshd       ##關閉服務
 systemctl     restart    sshd    ##重啟服務

systemctl     reload    sshd    ##重新載入服務配置
systemctl     enable    sshd    ##設定服務開機啟動
systemctl    disable    sshd    ##設定服務開機不啟動

 

 

  systemctl    list-units    ##列出已經開啟服務當前狀態

systemctl     list-unit-files    ##列出所有服務開機啟動的狀態 disable,enable,static

 

systemctl     list-dependencies    ##列出服務的依賴

systemctl    set-default multi-user.target    ##設定系統啟動級別為多使用者模式(無圖形
systemctl    set-default graphical.target    ##設定系統啟動級別為圖形模式