深度剖析Linux硬盤格式

一、MBR分區格式

MBR分區格式是硬盤上最常用的分區格式之一。它是由硬盤的主引導記錄(Master Boot Record)所組成,佔用了磁盤的頭512個位元組,其中包含磁盤分區表和引導程序。MBR分區最多支持4個主分區或3個主分區和1個擴展分區。
以下是MBR分區格式的代碼示例:

[root@localhost ~]# fdisk -l /dev/sda

Disk /dev/sda: 40 GiB, 42949672960 bytes, 83886080 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x000fb487

Device     Boot    Start      End  Sectors  Size  Id  Type
/dev/sda1  *        2048  1671983  1669936  814M  83  Linux
/dev/sda2        1671984  83886079 82214096 39.2G  8e  Linux LVM

MBR分區格式的優點是相對簡單,廣泛應用,但它的缺點也非常明顯。最大的缺點就是MBR區只能識別2TB以下的硬盤,而且只支持4個主分區或3個主分區和1個擴展分區,無法滿足大容量硬盤的分區需求。

二、GPT分區格式

GPT分區格式是全稱GUID分區表(GUID Partition Table),它是一種全新的磁盤分區表,支持PC機的EFI系統啟動。相對於MBR分區格式,GPT分區格式支持更大的硬盤容量和更多的分區數量,最多可支持128個分區,每個分區的容量也可超過2TB。此外GPT分區表有備份分區表,防止系統由於分區表數據丟失導致的不可啟動。
以下是GPT分區格式的代碼示例:

[root@localhost ~]# gdisk /dev/sda

GPT fdisk (gdisk) version 1.0.5

Partition table scan:
    MBR: protective
    GPT: present

Found valid GPT with protective MBR; using GPT.

Command (? for help): p

Disk /dev/sda: 83886080 sectors, 40.0 GiB
Model: QEMU HARDDISK 
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): 564E8963-89E1-4645-8F7F-3A5D735F1CB1
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 83886046
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048         1671983   814.0 MiB   8300  Linux filesystem
   2         1671984        83886046   39.1 GiB    8E00  Linux LVM

GPT分區格式的缺點是,在舊電腦上,其無法使用UEFI引導,而且GPT分區格式不同於MBR分區格式默認的bootloader程序,需要特別注意,否則可能會導致系統無法啟動。

三、EXT4文件系統

EXT4是Linux下非常流行的一個文件系統,它繼承了EXT3文件系統的優點,在EXT3的基礎上做了很多改進和優化。EXT4通常用於較大的硬盤分區,性能相對與EXT3提高了不少。
以下是EXT4文件系統的代碼示例:

[root@localhost ~]# mkfs.ext4 /dev/sda1

mke2fs 1.42.9 (28-Dec-2013)
Creating filesystem with 214528 blocks and 524288 inodes
Filesystem UUID: a05b0f23-ec37-4af4-9752-ee81ebd03d3d
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done   

EXT4文件系統有很多優點,包括支持更大的分區和文件,支持日誌系統和數據恢復功能,同時也比其他文件系統擁有更快的數據讀寫速度等眾多優點。

四、XFS文件系統

XFS是一種高性能的文件系統,也是Linux系統上流行的文件系統之一。XFS的特點是支持更大的單文件和分區,這使得它非常適合大容量的數據存儲。此外,提供快速的故障檢測,能夠在發生故障時有效地恢復文件系統。
以下是XFS文件系統的代碼示例:

[root@localhost ~]# mkfs.xfs /dev/sda2

meta-data=/dev/sda2              isize=512    agcount=4, agsize=2448384 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0
data     =                       bsize=4096   blocks=9793536, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=4774, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

XFS文件系統的優點是非常適合進行大文件和大數據存儲,而且具有良好的性能和可靠性。但是它的缺點是不適用於小文件,文件數量過多時會影響磁盤IO性能。

五、Btrfs文件系統

Btrfs是一種新型的文件系統,相比於傳統的EXT和XFS文件系統,它具有更好的可靠性、數據校驗、快照功能和在線擴容能力。此外,Btrfs文件系統也提供了更好的數據管理和維護機制,使得數據的備份和恢復更加簡單。
以下是Btrfs文件系統的代碼示例:

[root@localhost ~]# mkfs.btrfs /dev/sda3

btrfs-progs v4.6
See http://btrfs.wiki.kernel.org for more information.

Label:              (null)
UUID:               ecfa5c8c-1e64-4eb7-bccb-16cc46537fad
Node size:          16384
Sector size:        4096
Filesystem size:    3.26GB
Block group profiles:
  Data:             single            8.00MiB
  Metadata:         DUP              32.00MiB
  System:           DUP               8.00MiB
SSD detected:       no
Incompat features:  extref, skinny-metadata
Number of devices:  1
Devices:
   ID        SIZE  PATH
    1     3.26GB  /dev/sda3

Btrfs文件系統的優點是非常適合進行大數據量的存儲和管理,同時其具備高可靠性和容錯能力,能夠防止數據的損壞和丟失,非常適合用於企業級應用。

原創文章,作者:AIYIH,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/372098.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
AIYIH的頭像AIYIH
上一篇 2025-04-24 06:40
下一篇 2025-04-24 06:40

相關推薦

  • 如何在Java中拼接OBJ格式的文件並生成完整的圖像

    OBJ格式是一種用於表示3D對象的標準格式,通常由一組頂點、面和紋理映射坐標組成。在本文中,我們將討論如何將多個OBJ文件拼接在一起,生成一個完整的3D模型。 一、讀取OBJ文件 …

    編程 2025-04-29
  • 深度查詢宴會的文化起源

    深度查詢宴會,是指通過對一種文化或主題的深度挖掘和探究,為參與者提供一次全方位的、深度體驗式的文化品嘗和交流活動。本文將從多個方面探討深度查詢宴會的文化起源。 一、宴會文化的起源 …

    編程 2025-04-29
  • 如何將視頻導出成更小的格式給IT前端文件

    本文將從以下幾個方面介紹如何將視頻導出成更小的格式,以便於在IT前端文件中使用。 一、選擇更小的視頻格式 在選擇視頻格式時,應該儘可能選擇更小的格式,如MP4、WebM、FLV等。…

    編程 2025-04-28
  • Python下載深度解析

    Python作為一種強大的編程語言,在各種應用場景中都得到了廣泛的應用。Python的安裝和下載是使用Python的第一步,對這個過程的深入了解和掌握能夠為使用Python提供更加…

    編程 2025-04-28
  • JavaScript中使用new Date轉換為YYYYMMDD格式

    在JavaScript中,我們通常會使用Date對象來表示日期和時間。當我們需要在網站上顯示日期時,很多情況下需要將Date對象轉換成YYYYMMDD格式的字符串。下面我們來詳細了…

    編程 2025-04-27
  • Python遞歸深度用法介紹

    Python中的遞歸函數是一個函數調用自身的過程。在進行遞歸調用時,程序需要為每個函數調用開闢一定的內存空間,這就是遞歸深度的概念。本文將從多個方面對Python遞歸深度進行詳細闡…

    編程 2025-04-27
  • 如何在Linux中添加用戶並修改配置文件

    本文將從多個方面詳細介紹在Linux系統下如何添加新用戶並修改配置文件 一、添加新用戶 在Linux系統下創建新用戶非常簡單,只需使用adduser命令即可。使用以下命令添加新用戶…

    編程 2025-04-27
  • 如何解決linux jar包 invalid or corrupt jarfile問題

    對於許多開發人員和系統管理員在Linux環境下使用Java開發過程中遇到的一個常見的問題是 invalid or corrupt jarfile(無效或損壞的jar文件)錯誤。當您…

    編程 2025-04-27
  • Spring Boot本地類和Jar包類加載順序深度剖析

    本文將從多個方面對Spring Boot本地類和Jar包類加載順序做詳細的闡述,並給出相應的代碼示例。 一、類加載機制概述 在介紹Spring Boot本地類和Jar包類加載順序之…

    編程 2025-04-27
  • 在Linux上安裝JRE並配置環境變量

    本文將從以下幾個方面為您詳細闡述如何在Linux系統上,通過自己賬戶安裝JRE,並且配置環境變量。 一、安裝JRE 在進行安裝前,我們需要下載JRE的安裝包並解壓,可以從官方網站下…

    編程 2025-04-27

發表回復

登錄後才能評論