本章概述 Linux 系統的基本架構與核心服務,旨在幫助讀者建立整體認知,為深入各組件奠基。UNIX 作業系統由三大部分組成:核心、系統程式、應用程式。
核心負責管理檔案、啟動程式、分配記憶體與資源、處理網路封包等。它極少直接執行具體工作,而是提供工具(透過系統呼叫)讓上層建立服務,並阻止使用者直接存取硬體,提供進程間保護。核心主要組件包括:
系統程式使用核心工具實作系統服務(如 telnet、init),運行於使用者模式。應用程式則完成使用者導向工作(如文字處理器)。兩者界線有時模糊,分類主要為了強調功能差異。Linux 亦包含編譯器(gcc)、C 函式庫、文件等。
init 是核心啟動後第一個進程,負責檢查/掛載檔案系統、啟動守護程式、管理運行等級(單用戶/多用戶模式)、收養孤兒進程、關機時終止所有進程並卸載檔案系統。
由 getty 處理(序列埠/控制台),讀取帳號後呼叫 login 驗證密碼,成功則啟動 Shell。核心本身無登入概念。
核心與系統程式產生的錯誤、警告等資訊由 syslog 分類寫入不同檔案(核心日誌常獨立儲存以便定期檢查)。
cron 依使用者 crontab 定期執行命令(如清理暫存檔);at 則在指定時間一次性執行。
Linux 將 UI 置於使用者層級,核心不包含圖形子系統。主要為 X Window System,提供視窗系統工具,上層再建構 Athena、Motif、Open Look 等風格介面。此設計靈活但易導致介面不一致。
telnet、rlogin 等守護程式處理虛擬連線,每連線啟動一實例。/var/spool/mail。標準佈局以根檔案系統(/)為起點:/bin、/lib、/etc、/dev 等;/usr 存放程式與靜態資料;/var 存放變動資料(日誌、暫存檔);/home 存放使用者資料。實際分區視硬體與管理決策而定,第 3 章將詳述 Linux 檔案系統標準(FSSTND)。