本節描述了 Red Hat Enterprise Linux 中,與系統管理哲學相關的資訊。
要在 Red Hat Enterprise Linux 之下將常用的工作自動化,您需要了解多種技術。首先是能控制指令與 script 執行的命令;其中最常見的是 cron 與 at指令。
cron 指令結合了簡單易懂、功能強大、且具有彈性的時間控制系統,能將需要重複執行的指令或 script 檔案排程,間隔從幾分鐘到幾個月不等。crontab 指令則用來維護 cron daemon(實際規劃並執行每個 cron 工作的程式)的控制檔。
at 指令(以及非常類似的 batch指令)更適合用來處理只需要排程執行一次的 script 或指令。這兩個指令以多個佇列組成一個基本的批次子系統,並賦予每項工作不同的優先順序。這優先順序稱為 niceness 等級(這名稱來自另一個指令 nice)。at 與 batch 指令非常適合對於需要在特定時間執行,但不在乎結束時間的工作。
接下來要了解的,是多種 script 語言。這是許多系統管理者用來將一些手動工作自動化的「程式語言」。目前市面上有多種 script 語言(每個系統管理者都有自己的偏好),但底下這幾種是最常見的:
bash 命令列 shell
perl scripting 語言
python scripting 語言
拿這幾種語言來比較,最大的不同就是它們與 Red Hat Enterprise Linux 系統中其他工具程式互動的方式。使用 bash 指令撰寫出來的 script 比較能善用其他種類繁多的小工具程式(例如處理字串);而 perl script 的運作方式則多半使用本身的內建功能。至於 python 撰寫的 script 就完全採用了物件導向能力,讓管理者撰寫複雜的 script。
這表示如果您想成為 shell script 的大師,那一定要熟悉內建於 Red Hat Enterprise Linux 的多種工具程式(例如 grep 與 sed)。另一方面, perl(與 python)就比較像是「自給自足」的語言。然而,許多 perl 語言都建構在多種傳統 UNIX 工具程式的語法上,熟悉 Red Hat Enterprise Linux shell script 的系統管理者對此一定不會感到陌生。