在 Linux 系統中,區分**磁盤(物理/虛擬存儲設備)和分區(磁盤的邏輯劃分)**是管理存儲的基礎。以下是詳細的區分方法和操作示例:
一、通過設備命名規則區分
Linux 中磁盤和分區的命名遵循特定規則:
類型 | 命名格式 | 示例 | 說明 |
---|---|---|---|
磁盤 | /dev/sdX | /dev/sda | sd 表示 SCSI/SATA 磁盤,X 為字母(a, b, c…)。 |
/dev/nvmeXnY | /dev/nvme0n1 | nvme 表示 NVMe 磁盤,X 為控制器編號,Y 為命名空間編號。 | |
/dev/vdX | /dev/vda | vd 表示虛擬化環境中的磁盤(如 KVM 虛擬機)。 | |
分區 | /dev/sdXN | /dev/sda1 | N 為分區編號(1, 2, 3…)。 |
/dev/nvmeXnYpZ | /dev/nvme0n1p1 | pZ 表示 NVMe 磁盤的分區編號(Z=1,2,3…)。 | |
/dev/vdXN | /dev/vda1 | 虛擬磁盤的分區命名規則與物理磁盤一致。 |
二、通過命令工具區分
1. 使用 lsblk
查看樹狀結構
lsblk
輸出示例:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 100G 0 disk # 這是一個磁盤(TYPE=disk)
├─sda1 8:1 0 1G 0 part /boot # 這是一個分區(TYPE=part)
└─sda2 8:2 0 99G 0 part └─vg-root 254:0 0 99G 0 lvm / # 這是 LVM 邏輯卷(TYPE=lvm)
nvme0n1 259:0 0 500G 0 disk # 這是一個 NVMe 磁盤
└─nvme0n1p1 259:1 0 500G 0 part /data # 這是一個 NVMe 分區
- 關鍵字段:
TYPE=disk
:表示磁盤。TYPE=part
:表示分區。- 子設備縮進顯示在父設備下方。
2. 使用 fdisk -l
查看詳細信息
sudo fdisk -l /dev/sda
輸出示例:
Disk /dev/sda: 100 GiB, 107374182400 bytes, 209715200 sectors # 磁盤信息
Disk model: VIRTUAL-DISK
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: gptDevice Start End Sectors Size Type # 分區信息
/dev/sda1 2048 2099199 2097152 1G EFI System
/dev/sda2 2099200 209715199 207616000 99G Linux LVM
- 區分點:
- 第一段描述磁盤的整體信息(如容量、型號)。
Device
列列出所有分區(如/dev/sda1
)。
3. 使用 parted
查看分區表類型
sudo parted /dev/sda print
輸出示例:
Model: Virtio Block Device (virtblk) # 磁盤型號
Disk /dev/sda: 107GB # 磁盤總容量
Partition Table: gpt # 分區表類型(GPT)
Disk Flags: Number Start End Size File system Name Flags # 分區列表1 1049kB 1075MB 1074MB fat32 efi boot, esp2 1075MB 107GB 106GB lvm
三、關鍵區別總結
特征 | 磁盤 | 分區 |
---|---|---|
設備名 | /dev/sda , /dev/nvme0n1 | /dev/sda1 , /dev/nvme0n1p1 |
容量 | 整塊磁盤的物理大小 | 磁盤中的一個邏輯段 |
操作對象 | 用于分區操作(如 fdisk /dev/sda ) | 用于格式化或掛載(如 mkfs /dev/sda1 ) |
層級關系 | 父設備 | 子設備(從屬于磁盤) |
四、常見誤區與注意事項
-
誤操作磁盤而非分區
- 危險操作:直接對磁盤(如
/dev/sda
)執行格式化(mkfs
)會破壞所有分區數據! - 正確操作:始終針對分區(如
/dev/sda1
)進行文件系統操作。
- 危險操作:直接對磁盤(如
-
LVM 和 RAID 的干擾
- LVM 邏輯卷或 RAID 虛擬磁盤可能隱藏物理分區,需通過
pvdisplay
、lvdisplay
或mdadm
進一步分析。
- LVM 邏輯卷或 RAID 虛擬磁盤可能隱藏物理分區,需通過
-
臨時設備(如 USB 盤)
- USB 設備可能動態分配名稱(如
/dev/sdb
下次插入變為/dev/sdc
),建議通過 UUID 或標簽掛載。
- USB 設備可能動態分配名稱(如
五、操作驗證示例
場景:確認 /dev/nvme0n1p1
是分區
lsblk -o NAME,TYPE /dev/nvme0n1p1
輸出:
NAME TYPE
nvme0n1p1 part # TYPE=part 表示這是一個分區
場景:確認 /dev/sdb
是磁盤
lsblk -o NAME,TYPE /dev/sdb
輸出:
NAME TYPE
sdb disk # TYPE=disk 表示這是一個磁盤
通過以上方法,您可以清晰區分 Linux 系統中的磁盤和分區,避免誤操作導致數據丟失。