Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

Linux 硬碟分區、格式化、掛載完整實戰教學:MBR/GPT、fdisk、mkfs、fstab

編輯:Linux 系統常見問題解答

一、硬碟介面與裝置命名

介面類型裝置命名備註
IDE (PATA)/dev/hd[a-z]hdc 通常為光碟機
SATA / SCSI / SAS / USB/dev/sd[a-z]現代系統主流
NVMe/dev/nvme[0-9]n[1-9]高速 SSD

二、分區表類型與分區限制

  • MBR (MS-DOS):最多 4 個主分區,或 3 主分區 + 1 擴展分區 (內含邏輯分區)。單分區上限 2TB。
  • GPT (GUID Partition Table):支援 128+ 分區、單分區超過 2TB、UEFI 開機必要。

分區編號規則:

  • 主分區/擴展分區:1-4 (如 sda1-sda4)
  • 邏輯分區:5 開始 (如 sda5, sda6...)

三、fdisk 分區實戰 (MBR)

fdisk /dev/sdb
# 進入互動模式,常用指令:
# m   顯示說明
# n   新建分區
# p   列印分區表
# d   刪除分區
# t   變更分區類型 (83=Linux, 82=Swap, 8e=LVM)
# w   寫入並離開
# q   不存檔離開

分區類型常用代碼

代碼類型
83Linux 標準分區
82Linux Swap
8eLinux LVM
07NTFS/exFAT
0b/0cFAT32

四、通知核心重讀分區表

# RHEL 5/6, CentOS 5/6
partprobe /dev/sdb

# RHEL 7+, CentOS 7+, 現代系統
partx -a /dev/sdb

# 或直接重啟 (最保險)
reboot

驗證:cat /proc/partitions 或 lsblk

五、格式化檔案系統 (mkfs 系列)

指令檔案系統適用場景
mkfs.ext4 /dev/sdb1ext4Linux 通用、日誌式、支援大檔案
mkfs.xfs /dev/sdb1XFS高效能、大檔案、RHEL 7+ 預設
mkfs.vfat /dev/sdb1FAT32跨平台相容、USB 隨身碟
mkfs.ntfs /dev/sdb1NTFSWindows 相容、大檔案

mke2fs 進階參數 (ext 系列專用)

# 指定區塊大小 2KB (適合大量小檔案)
mke2fs -t ext4 -b 2048 /dev/sdb1

# 設定預留空間 1% (預設 5%,大分區可降低)
mke2fs -t ext4 -m 1 /dev/sdb1

# 設定卷標
mke2fs -t ext4 -L MYDATA /dev/sdb1

tune2fs 調整既有檔案系統參數

tune2fs -l /dev/sdb1          # 查看詳細資訊
tune2fs -m 1 /dev/sdb1        # 調整預留比例
tune2fs -L NEW_LABEL /dev/sdb1 # 修改卷標
tune2fs -o journal_data_writeback /dev/sdb1 # 調整日誌模式

六、掛載與永久掛載 (/etc/fstab)

臨時掛載

mkdir /mnt/data
mount /dev/sdb1 /mnt/data

永久掛載 (編輯 /etc/fstab)

# 格式:裝置/UUID  掛載點  檔案系統  參數  dump  fsck順序
UUID=xxxx-xxxx-xxxx  /mnt/data  ext4  defaults,noatime  0  2

# 建議使用 UUID (blkid 查詢) 避免裝置名稱漂移
blkid /dev/sdb1

常用掛載參數

參數說明
defaultsrw, suid, dev, exec, auto, nouser, async
noatime不更新 atime,提升效能
nodiratime不更新目錄 atime
noexec禁止執行二進位檔
nosuid忽略 SUID/SGID 位
ro唯讀掛載

七、驗證與故障排除

df -hT /mnt/data        # 確認掛載點、檔案系統、使用量
mount | grep sdb1       # 確認掛載參數
umount /mnt/data        # 卸載 (需無進程佔用)
fuser -km /mnt/data     # 強制釋放佔用進程後卸載

八、GPT 大磁碟分區 (parted/gdisk)

parted /dev/sdb
# (parted) mklabel gpt
# (parted) mkpart primary ext4 0% 100%
# (parted) quit

# 或使用 gdisk (互動式類 fdisk)
gdisk /dev/sdb
Copyright © Windows教程網 All Rights Reserved