跳轉到內容

Linux 基礎/Linux 的結構

來自 Wikibooks,開放世界的開放書籍
  • 基本上是 CLI
    • 就像 DOS 和 Windows 的命令提示符
  • 也有圖形使用者介面 (GUI)

檔案系統

[編輯 | 編輯原始碼]
FAT 結構
  • 磁碟上沒有字母,就像 DOS/Windows -> 所有內容都在 / 下
  • 它掛載(連線)外部儲存
    • 現在 Windows 也能做到這一點
    • /etc/fstab 檔案包含分割槽和與其關聯的設定的自動掛載點。
    • fdiskfdisk -l 命令,後者列出分割槽。
    • 在 /mnt 下,我們可以找到掛載的介質(但這並不總是正確的,因為在現代分割槽中,自動掛載的介質(如快閃記憶體驅動器)通常被掛載到 /media,但 /mnt 是為在那裡掛載分割槽而建立的)
EXT 結構

FAT 表包含介質連續區域上每個簇的條目。每個條目包含檔案中的下一個簇的編號或 EOF(檔案結束),未使用的磁碟空間和磁碟的特殊保留空間。它只能執行軟連結。

EXT 檔案系統:它使用 inode(索引節點)表。在 inode 中,有檔案的描述和資料塊的位置,沒有檔名。每個檔案只有一個 inode。較大的檔案可能包含多個目錄條目,其中包含檔名。inode 包含名稱、描述、建立日期、許可權、所有者 (UID)、組 (GID) 以及與其關聯的連結數量。(因此它可以做比 FAT 多得多的操作)它可以執行軟連結和硬連結,這是 EXT 檔案系統相對於 FAT 的最大優勢之一。

  • 軟連結:快捷方式,如果原始檔案被刪除,那麼它也會刪除自身,或者它會顯示找不到可執行檔案的錯誤。
  • 硬連結:檔案的副本,但如果我們更改原始檔案,那麼副本的內容也會更改,但只有在所有副本都被刪除後,檔案才會最終消失。

檔案系統的屬性

[編輯 | 編輯原始碼]
  • 它將許可權分別附加到每個檔案
  • 它將許可權限制為所有者或組
  • 讀、寫、執行許可權

檔案管理器

[編輯 | 編輯原始碼]
Fedora 29 下的 Midnight Commander。

核心 = 系統核心,作業系統的“靈魂”

它的任務:處理外圍裝置、處理檔案系統、實現目錄結構、控制處理器

核心型別

  • 單核心:核心由一個不可分割的單元模組組成。它常見於較舊的 Linux(早於 2.0)和 UNIX 系統。
  • 混合核心:像 Windows 一樣 – 可以設定許可權。混合核心基本上是微核心,其中一些“不重要的”程式碼部分已使用更少的抽象從使用者級(使用者空間)移動到核心級(核心空間),以執行得更快。
  • 微核心:核心位於多個小型程式中,而不是一個大型模組中。
  • 模組化:模組化核心試圖解決單核心的問題。核心的各個部分 - 物理和邏輯 - 以及由此建立的模組,主要是驅動程式,可以載入到記憶體中。它節省了核心的大小,但兩者加起來變得越來越大(它的尺寸是相對的,它取決於你想要新增多少驅動程式,完整的核心通常在 100 MB 或以上,但如果你很簡化,它可以小於 10 MB)。我們將現代 Linux 系統歸類到模組化術語下(要準確地說,Linux 核心是單核心模組化)。核心模組可以在 /lib/modules/kernel-version 資料夾中找到。

核心的位置:它位於 /boot 資料夾中,並且在根目錄中有指向 vmlinuz 和 initrd 的軟連結。

檔案系統

[編輯 | 編輯原始碼]

在檔案系統中,陣列在 Linux 中扮演著重要的角色。

虛擬檔案系統(用於系統)

  • SMBFS、SSHFS、NFS 等。

支援的檔案系統

  • ext2、ext3、ext4(Linux 的自有檔案系統)
  • ReiserFS、Btrfs、ZFS、XFS
  • FAT32、NTFS
  • stb.

目錄結構

[編輯 | 編輯原始碼]
  • 層次結構
    • 目錄(資料夾)
    • 檔案

單級目錄:Commodore 軟盤;磁帶

  • 路徑
    • 根目錄:/
    • 例如:/home/joe/myfile.txt
  • 連線(掛載)的介質
    • 例如 /mnt/usb
  • 掛載
    • mount /dev/scd -t ISO9660 /mnt/cdrom(如果我們要使用 CD-ROM)
    • mount /dev/sdb -ta /mnt/[name],其中 -ta 表示自動檢測介質型別。
    • sda、sdb、sdc…… 表示 HDD、SSD,現代發行版將它們掛載到 /media/[分割槽名稱]。
  • 解除安裝/斷開連線:umount /dev/sdb

主要資料夾

[編輯 | 編輯原始碼]
  • /bin、/sbin
    • 可執行檔案、二進位制檔案(只有管理員才能執行 sbin 程式),不需要副檔名
  • /boot
    • 系統啟動檔案:GRUB、LILO、核心 (/boot/vmlinuz)
  • /cdrom、/media、/mnt
    • 介質掛載:USB、軟盤、CD/DVD
  • /dev
    • 我們可以透過檔案訪問裝置,例如:/dev/dsp(音效卡)/dev/cdrom(CD)/dev/sda2(第一個 HDD/SSD 的第二個分割槽)
  • /etc
    • 配置檔案
    • 只有系統管理員可以訪問它
    • 全域性配置檔案資料夾
  • /home
    • 使用者的資料夾
    • 使用者的檔案
    • 設定、配置檔案、資料夾
    • 例如:/home/peter /home/peter/documents
  • /lib
    • 共享物件、庫
    • 就像 Windows 中的 DLL 檔案
    • 核心模組
  • /lost+found
    • 損壞的檔案
    • 可恢復檔案
  • /proc
    • 當前執行的操作 - 按檔案和系統資訊(處理器、記憶體等)編號
    • 示例命令(處理器資訊):cat /proc/cpuinfo
  • /tmp
    • 臨時檔案的位置
    • 系統和使用者級別都有
  • /usr
    • 使用者檔案的位置
    • 程式安裝的程式
    • 原始碼(核心):/usr/src
    • 文件:/usr/share/doc、/usr/doc
    • 圖示等等。
  • /var
    • 服務的集合
    • 快取(臨時儲存):/var/cache
    • 日誌檔案:/var/log/maillog
    • 電子郵件帳戶(郵箱):/var/mail/root
    • www 資料夾:apache 的預設網頁資料夾 (/var/www)

使用者

[編輯 | 編輯原始碼]
  • 系統管理員:root
  • 使用者: “root” 使用者基本上建立他們。
  • 使用者可以分組。
  • 可以在檔案系統中授予許可權。
    • 例如:/home/joe/myfile.txt 26 joe joe -rwxrwxrwx
  • 第一個使用者也擁有 root 許可權(您在安裝時設定),但這取決於發行版,例如 Debian 使用者預設沒有 root 許可權,也沒有 sudo。
華夏公益教科書