1. 程式人生 > >linux中進程和計劃任務管理

linux中進程和計劃任務管理

後臺任務 secure image 終端 權限 查看 rep processes cpu

進程和計劃任務管理

1. 程序和進程的關系

程序:保存在硬盤、光盤等介質中的可執行代碼和數據;靜態保存的代碼

進程:在 CPU 及內存中運行的程序代碼;動態執行的代碼;父、子進程:每個進程可以創建一個或多個進程

基本命令

1):ps命令(processes statistc):查看靜態的進程統計信息

格式: ps aux ps –elf

2):top命令:查看動態的進程排名信息

3):pgrep命令:根據特定條件查詢進程 PID 信息

4):pstree命令以樹形結構列出進程信息

格式:pstree –aup pstree –ap 用戶

2.進程的啟動方式

手工啟動

前臺啟動(foreground,前臺):用戶輸入命令,直接執行程序

後臺啟動(background,後臺):在命令行尾加入“&”符號

[root@localhost ~]# cp /dev/cdrom mycd.iso &

[1] 28454 (輸出信息中包括後臺任務序號、PID

調度啟動

使用 at 命令,設置一次性計劃任務;使用 crontab 命令,設置周期性計劃任務

3.進程的前後臺調度

1):Ctrl+Z 組合鍵:將當前進程掛起,即調入後臺並停止執行

2):jobs 命令:查看處於後臺的任務列表 ;格式:jobs -l

3):fg 命令:將後臺進程恢復到前臺運行,可指定任務序號

4.終止進程

Ctrl+C 組合鍵:中斷正在執行的命令

killkillall 命令

kill用於終止指定PID號的進程

killall用於終止指定名稱的所有進程

-9 選項用於強制終止

pkill命令:根據特定條件終止相應的進程

常用命令選項: -U:根據進程所屬的用戶名終止相應進程; -t:根據進程所在的終端終止相應進程

5.計劃任務管理

1):at命令:一次性計劃任務,前提是對應的系統服務atd必須已經運行;計劃任務執行任務的時間必須安排在當前系統時間後。

服務腳本名稱:/etc/init.d/atd;格式:at [HH:MM] [yyyy-mm-dd]

2):crontab命令:按照預先設置的時間周期(分鐘、小時、天……)重復執行用戶指定的命令操作;屬於周期性計劃任務;服務腳本名稱:/etc/init.d/crond

主要設置文件

全局配置文件,位於文件:/etc/crontab

系統默認的設置,位於目錄:/etc/cron.*/

用戶定義的設置,位於文件:/var/spool/cron/用戶名

3):管理cron計劃任務

編輯計劃任務:crontab -e [-u 用戶名]

查看計劃任務:crontab -I [-u 用戶名

刪除計劃任務:crontab -r [-u 用戶名]

註意:root用戶可以管理指定用戶的計劃任務普通用戶只能管理自己的計劃任務

技術分享圖片

6. 時間數值的特殊表示方法

* 表示該範圍內的任意時間

, 表示間隔的多個不連續時間點

- 表示一個連續的時間範圍

/ 指定間隔的時間頻率

舉個栗子

0 17 * * 1-5 周一到周五每天17:00

30 8 * * 1,3,5 每周一、三、五的8點30分

0 8-18/2 * * * 8點到18點之間每2小時

0 * */3 * * 每3天

系統故障分析和排查

1. 日誌文件分析

功能:用於記錄系統、程序運行中發生的各種事件;通過閱讀日誌,有助於診斷和解決系統故障

分析:

內核及系統日誌:由系統服務syslog統一進行管理,日誌格式基本相似

用戶日誌:記錄系統用戶登錄及退出系統的相關信息

程序日誌:由各種應用程序獨立管理的日誌文件,記錄格式不統一

保存位置:默認位於:/var/log 目錄下

主要日誌文件:

日誌

存放位置

內核及公共消息

/var/log/messages

計劃任務

/var/log/cron

系統引導

/var/log/dmesg

郵件系統

/var/log/maillog

用戶登錄

/var/log/lastlog/var/log/secure/var/log/wtmp/var/run/btmp

2.內核及系統日誌

由系統服務 rsyslogd 統一管理

軟件包:rsyslog-5.8.10-8.el6.x86_64

主要程序:/sbin/rsyslogd

配置文件:/etc/rsyslog.conf

日誌消息的級別

0 EMERG(緊急):會導致主機系統不可用的情況

1 ALERT(警告):必須馬上采取措施解決的問題

2 CRIT(嚴重):比較嚴重的情況

3 ERR(錯誤):運行出現錯誤

4 WARNING(提醒):可能會影響系統功能的事件

5 NOTICE(註意):不會影響系統但值得註意

6 INFO(信息):一般信息

7 DEBUG(調試):程序或系統調試信息等

日誌記錄的一般格式

技術分享圖片

3.用戶日誌分析

保存了用戶登錄、退出系統等相關信息

/var/log/lastlog:最近的用戶登錄事件

/var/log/wtmp:用戶登錄、註銷及系統開、關機事件

/var/run/utmp:當前登錄的每個用戶的詳細信息

/var/log/secure:與用戶驗證相關的安全性事件

分析工具:users 、who、w、last、lastb

4.程序日誌分析

由相應的應用程序獨立進行管理

Web服務:/var/log/httpd/ ;access_log、error_log

代理服務:/var/log/squid/;access.log、cache.log、squid.out、store.log

FTP服務:/var/log/xferlog

分析工具:

文本查看、grep過濾檢索、Webmin管理套件中查看

awk、sed等文本過濾、格式化編輯工具

Webalizer、Awstats等專用日誌分析工具

註意:日誌並不是完全可靠的,高明的黑客在入侵系統後,經常會打掃現場

5.日誌管理策略

1):及時作好備份和歸檔

2):延長日誌保存期限

3):控制日誌訪問權限:日誌中可能會包含各類敏感信息,如賬戶、口令等

4):集中管理日誌

將服務器的日誌文件發到統一的日誌文件服務器

便於日誌信息的統一收集、整理和分析

杜絕日誌信息的意外丟失、惡意篡改或刪除

6.修復 MBR 扇區故障

1):故障原因:病毒、木馬等造成的破壞;不正確的分區操作、磁盤讀寫誤操作

2):故障現象:找不到引導程序,啟動中斷;無法加載操作系統,開機後黑屏

3):解決思路:應提前作好備份文件;以 RHEL 6 安裝光盤引導進入急救模式;從備份文件中恢復

7.修復 GRUB 引導故障

1):故障原因:MBR 中的 GRUB 引導程序遭到破壞;grub.conf 文件丟失、引導配置有誤

2):故障現象:系統引導停滯,顯示“grub>” 提示符

3):解決思路:嘗試手動輸入引導命令;進入急救模式,重寫或者從備份中恢復 grub.conf

;向 MBR 扇區中重建 grub 程序

8.遺忘 root 用戶的密碼

1):故障原因:遺忘 root 用戶的密碼

2):故障現象:無法進行需要 root 權限的管理操作;若沒有其他可用帳號,將無法登錄系統

3):解決思路

方法一:引導進入單用戶模式,重設密碼:grub > kernel ... single s 1

方法二:進入急救模式,重設密碼

9. 修復文件系統

1):故障原因:非正常關機、突然斷電、設備讀寫失誤等;文件系統的超級塊(super-block)信息被破壞

2):故障現象:無法向分區中讀取或寫入數據;啟動後提示“Give root password for maintenance”

3):解決思路:根據提示輸入 root 口令,進入修復狀態;使用 fsck 命令進行修復

10.磁盤資源耗盡故障

1):故障原因:磁盤空間已被大量的數據占滿,空間耗盡;雖然還有可用空間,但文件數i節點耗盡

2):故障現象:無法寫入新的文件,提示“… : 設備上沒有空間”;部分程序無法運行,甚至系統無法啟動

3):解決思路:清理磁盤空間,刪除無用、冗余的文件;轉移或刪除占用大量 i 節點的瑣碎文件;進入單用戶模式、急救模式進行修復;為用戶設置磁盤配額

11. 磁盤設備中存在壞道

1):故障原因:磁盤設備中存在壞道(邏輯的或物理的)

2):故障現象

讀取磁盤中的數據時,磁盤設備發出異常聲響。

訪問磁盤中的某個文件時,反復讀取且出錯,提示文件損壞

對於新建立的分區無法完成格式化

系統使用該磁盤時頻繁死機

3):解決思路:檢測硬盤中是否存在壞道;修復硬盤,或更換新的硬盤

linux中進程和計劃任務管理