▪️檔案目錄架構
2024-10-23
| 2025-4-1
字數 327閱讀時間 1 分鐘
Linux 的檔案系統遵循 Filesystem Hierarchy Standard (FHS),每個目錄都有特定的用途。

Linux 主要的目錄結構:

1. 根目錄(/

  • Linux 檔案系統的起點,所有檔案與目錄都從這裡開始。
  • 主要系統目錄都掛載在 / 之下。

2. 家目錄 (~)

  • 各別使用者的檔案都存放在對應的使用者資料夾底下

3. 主要系統目錄

目錄
作用
/bin
存放基本的系統執行檔,例如 lscpmvcat 等,所有用戶都可存取。
/boot
存放開機相關的檔案,如核心 (vmlinuz)、引導載入器(GRUB)設定等。
/dev
包含系統裝置的特殊檔案,如硬碟(/dev/sda)、終端(/dev/tty)、USB(/dev/usb)等。
/etc
存放系統設定與組態檔,如 passwd(使用者資訊)、fstab(掛載設定)、hosts(主機對應表)。
/home
各個使用者的家目錄,例如 /home/user1,存放使用者個人資料、設定。
/lib
系統函式庫 (.so 檔案),供 /bin/sbin 的執行檔使用。
/lib64
64 位元系統的函式庫。
/media
用於掛載可移動裝置,如 USB 隨身碟、CD/DVD。
/mnt
手動掛載的檔案系統,如 NFS、遠端磁碟。
/opt
存放第三方軟體(選用的應用程式)。
/proc
虛擬檔案系統,提供系統內核和行程資訊(如 /proc/cpuinfo/proc/meminfo)。
/root
root(系統管理員)的家目錄,普通使用者無法存取。
/run
存放系統運行時的資訊,例如行程 ID(PID),系統重開機後會清空。
/sbin
存放系統管理指令,如 fdiskmkfsshutdown,通常只有 root 能執行。
/srv
存放伺服器服務的相關資料,如 FTP、HTTP 伺服器的內容。
/sys
/proc 類似,提供系統硬體資訊,主要與內核互動。
/tmp
存放暫存檔,系統重啟後會清空。
/usr
儲存系統應用程式與工具,通常包含 /usr/bin/usr/lib/usr/local 等。
/var
儲存變動數據,如日誌 (/var/log)、郵件 (/var/mail)、快取 (/var/cache)。

重要目錄介紹

/etc:系統設定與組態檔

/etc 是 Linux 系統最重要的目錄之一,存放各種系統設定與組態檔案。這些設定影響系統運行、使用者權限、網路連線等。

目錄內的重要檔案與子目錄

檔案/目錄
作用
/etc/passwd
存放系統所有使用者的帳號資訊,如使用者名稱、UID、GID、家目錄、Shell。
/etc/shadow
存放使用者密碼的加密資訊,只有 root 可讀取。
/etc/group
定義系統群組與群組內的使用者。
/etc/fstab
設定開機時自動掛載的磁碟分區與存取參數。
/etc/hostname
記錄系統的主機名稱(hostname)。
/etc/hosts
定義 IP 與主機名稱的對應關係,用於本機 DNS 解析。
/etc/resolv.conf
設定 DNS 伺服器地址,影響網路名稱解析。
/etc/network/interfaces
設定網路介面(Debian/Ubuntu 系列使用)。
/etc/sysconfig/network-scripts/
設定網路介面(RHEL/CentOS 系列使用)。
/etc/cron.d/
定義系統的排程工作(cron jobs)。
/etc/profile
定義所有使用者的 Shell 環境變數。
/etc/bash.bashrc
定義 Bash Shell 的全域設定檔。
/etc/ssh/sshd_config
SSH 伺服器的設定檔,如連接埠、身份驗證方式等。
/etc/systemd/
Systemd 服務管理的設定檔,如 /etc/systemd/system/ 存放自定義的服務單元。
/etc/nginx/
Nginx 伺服器的設定目錄,如 nginx.conf
/etc/apache2/
Apache 伺服器的設定目錄,如 apache2.conf

/usr:使用者程式與系統工具

/usr(User System Resources)用於存放系統應用程式、共享函式庫、文件、程式碼等。它通常包含許多子目錄,類似於 / 根目錄的結構。

目錄的主要子目錄

目錄
作用
/usr/bin
存放一般使用者可以執行的應用程式,如 vimtarwgetcurl
/usr/sbin
存放系統管理員(root)使用的程式,如 fdiskiptablesgrub-install
/usr/lib
存放應用程式的函式庫,對應 /lib
/usr/lib64
64 位元系統的函式庫,對應 /lib64
/usr/include
C/C++ 等程式語言的標頭檔(header files),如 stdio.h
/usr/local
供使用者手動安裝的程式,通常不受套件管理系統影響。
/usr/share
存放共享資源,如字體、圖示、說明文件等。
/usr/share/man
Man pages(說明文件),如 man ls 會讀取 /usr/share/man/man1/ls.1.gz
/usr/share/doc
軟體套件的文件與範例設定檔案。
/usr/src
存放 Linux 核心原始碼與其他程式碼。
/usr/games
遊戲程式(較少見)。

總結:

  • /etc = 設定中心
  • /usr = 使用者應用程式與工具
這些目錄的區分讓 Linux 系統更具組織性,也方便系統維護與管理。
  • Ubuntu
  • k8s - 叢集架構關閉 root
    Loading...