Linux 基礎入門:版本與重要概念
從 Linux 核心版本、常見發行版,到檔案系統、許可權、程序等核心概念,快速建立 Linux 基礎認知。
Linux 基礎入門:版本與重要概念
Linux 並不是一個單獨的軟體包,而是一個以 Linux 核心為核心、圍繞工具鏈、包管理器、服務管理和桌面環境構建出來的作業系統生態。對於初學者來說,先理解 Linux 的版本劃分,再掌握幾個關鍵概念,會更容易建立整體認知。
Linux 版本
提到 Linux 版本時,通常可以分成兩個層面來看:
- 核心版本
- 常見發行版本
核心版本
Linux 核心是作業系統最核心的部分,負責硬體管理、程序排程、記憶體管理、檔案系統支援、裝置驅動等工作。
核心版本通常採用類似下面的格式:
6.6.21一般可以這樣理解:
- 第一位表示主版本號
- 第二位表示功能演進中的大版本
- 第三位表示修復補丁版本
核心版本關注的是底層能力,例如:
- 是否支援新的硬體
- 排程器和記憶體管理是否最佳化
- 某些檔案系統和驅動是否得到增強
- 安全漏洞是否已修復
在企業場景中,經常會接觸到兩類核心:
- 穩定核心:更注重相容性和穩定性,適合伺服器環境
- 長期支援核心(LTS):維護週期更長,適合生產環境長期使用
也就是說,核心版本決定了 Linux 底層“能做什麼”和“做得是否穩定”。
常見發行版本
只有核心還不夠,使用者還需要命令工具、軟體包管理器、安裝程式、服務管理工具和預設配置。這些組合在一起,就形成了不同的 Linux 發行版。
常見發行版包括:
- Ubuntu:對新手友好,社群活躍,桌面和伺服器都很常見
- Debian:穩定性高,很多發行版都基於它演進
- CentOS:過去在伺服器場景非常常見
- Rocky Linux:CentOS 之後較常見的企業替代選擇之一
- AlmaLinux:同樣是面向企業相容場景的常見選擇
- Fedora:版本較新,適合體驗新特性
- Red Hat Enterprise Linux(RHEL):企業級商業發行版
- Arch Linux:更強調自定義和滾動更新,適合有一定基礎的使用者
這些發行版的主要差異通常體現在:
- 軟體包管理方式不同,例如
apt、dnf、yum、pacman - 預設目錄和配置習慣有差異
- 軟體版本的新舊程度不同
- 穩定性和更新策略不同
- 社群支援或商業支援不同
可以把它們理解為:
- Linux 核心像“發動機”
- 發行版像“整車方案”
不同發行版可能使用相近的核心,但給使用者提供的使用體驗和運維方式會明顯不同。
Linux 重要概念
理解 Linux 時,下面這些概念最重要。
1. 一切皆檔案
Linux 中很多資源都可以通過檔案形式進行訪問和操作,例如:
- 普通文本檔案
- 目錄
- 裝置檔案
- 管道
- 套接字
這意味著 Linux 傾向於用統一的方式來處理各種資源,學習成本會更低,指令碼化也更方便。
2. 目錄結構
Linux 使用樹形目錄結構,所有內容都從根目錄 / 開始。
常見目錄含義如下:
/home:普通使用者的家目錄/root:超級管理員 root 的家目錄/etc:系統配置檔案/bin:基礎命令/usr:使用者層程式和共享資源/var:日誌、快取等經常變化的資料/tmp:臨時檔案
學習 Linux 時,不僅要會執行命令,也要逐步熟悉目錄分工。
3. 使用者與許可權
Linux 是一個多使用者作業系統,不同使用者擁有不同的訪問許可權。
常見許可權物件有三類:
u:檔案所有者g:所屬使用者組o:其他使用者
常見許可權型別有三種:
r:讀w:寫x:執行
例如:
chmod 755 demo.sh表示:
- 所有者可讀、可寫、可執行
- 同組使用者可讀、可執行
- 其他使用者可讀、可執行
許可權機制是 Linux 安全模型的基礎。
4. 程序
程式執行起來之後,就變成了程序。Linux 會為每個程序分配程序號(PID),並由核心統一排程。
常見相關理解包括:
- 一個程式可以啟動多個程序
- 程序有前臺和後臺之分
- 程序之間會競爭 CPU 和記憶體資源
- 服務程式本質上也是持續執行的程序
日常經常會用到的命令有:
pstopkill5. Shell
Shell 是使用者和作業系統之間的命令直譯器,常見的有:
bashzshsh
使用者在終端輸入命令後,Shell 負責解析命令並交給系統執行。很多自動化運維工作,實際上就是通過 Shell 指令碼完成的。
6. 軟體包管理
Linux 安裝軟體通常不是直接雙擊安裝包,而是通過包管理器完成。
常見工具有:
apt:Debian、Ubuntu 常用yum/dnf:RHEL、CentOS、Rocky Linux、AlmaLinux 常用pacman:Arch Linux 常用
包管理器可以幫助我們:
- 安裝軟體
- 升級軟體
- 解除安裝軟體
- 自動處理依賴關係
7. 服務與守護程序
Linux 中很多功能是通過後臺服務提供的,例如:
- Web 服務
- 資料庫服務
- SSH 服務
這類長期執行在後臺的程式通常稱為守護程序。現代 Linux 發行版中,很多服務通過 systemd 管理,常見命令包括:
systemctl start nginxsystemctl stop nginxsystemctl status nginx8. 檔案系統
檔案系統決定了資料如何被組織和儲存。常見檔案系統有:
ext4xfsbtrfs
不同檔案系統在效能、可靠性、快照能力和擴充套件能力上會有差異。對開發者來說,先知道“磁碟不是直接裸用的,而是通過檔案系統組織資料”就足夠了。
總結
學習 Linux,可以先抓住兩條主線:
- 版本層面:分清核心版本和發行版
- 使用層面:理解目錄、許可權、程序、Shell、包管理和服務
如果把 Linux 比作一套完整系統,那麼:
- 核心決定底層能力
- 發行版決定使用方式
- 許可權、程序、檔案系統等概念決定你能否真正用好它
對於入門階段,不需要一開始就記住所有命令,先建立正確的整體框架更重要。後續再繼續學習常用命令、使用者管理、網路配置和服務部署,會輕鬆很多。
本文采用 CC BY-NC-SA 4.0 許可協議。
繼續聊聊
用 GitHub 賬號參與討論。中英文版本共享同一條討論。