1. 格式化時發生了什麼?
當我們格式化分區時,實際上我們是為數據創造了一個“全新的頁面”。格式化會刪除分區上的所有內容,並創建一個新的檔案系統,以定義文件如何被組織以及如何訪問它們。
想象一下圖書館。格式化就像您清空了所有舊書,安裝了新的書架,並在每個書架上貼上一個標籤以顯示類別。現在一切都很有條理——您知道每本新書應該放在哪裡。
為什麼需要格式化設備?
- 準備新設備(磁盤或分區):任何設備在使用之前都必須進行格式化。這就像是筆記本中的空白頁——在你確定它的用途之前,它是沒有用的。
- 更改檔案系統:例如,如果你需要從FAT32轉換到ext4,你就需要進行格式化。
- 清除舊數據:當你想完全清空設備並重新開始時,格式化是最佳選擇。
重要提醒:格式化後,分區上的所有數據將被刪除。因此,請務必確認設備上沒有重要信息。
2. 工具 mkfs:語法和使用方法
程式 mkfs 是你進行分區格式化的主要工具。它支援廣泛類型的檔案系統,因此幾乎可以在任何情況下使用。
指令的一般語法
mkfs.<檔案系統類型> <設備>
例如,將分區 /dev/sdb1 格式化為檔案系統 ext4:
mkfs.ext4 /dev/sdb1
支援的檔案系統
mkfs 支援大多數常見的檔案系統類型。以下是其中的一些:
| 檔案系統 | 指令 | 應用 |
|---|---|---|
| ext4 | mkfs.ext4 |
主要的 Linux 檔案系統,支援大型檔案和磁碟。 |
| xfs | mkfs.xfs |
高效能,適合大檔案及伺服器負載。 |
| vfat (FAT32) | mkfs.vfat |
適用於 Linux、Windows 和 MacOS 之間的資料交換。 |
| ntfs | mkfs.ntfs |
與 Windows 相容(雖然從 Linux 編輯可能有點麻煩)。 |
要獲取所有支援的檔案系統完整列表,請使用以下指令:
mkfs -t help
3. 範例:將分區格式化為ext4
來看看分區格式化的逐步流程吧。
1. 檢查設備
首先,找到需要格式化的設備名稱。使用命令lsblk:
lsblk
輸出會顯示所有連接設備和它們的分區列表。例如:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 100G 0 disk
├─sda1 8:1 0 50G 0 part /
├─sda2 8:2 0 45G 0 part /home
└─sda3 8:3 0 5G 0 part [SWAP]
sdb 8:16 0 200G 0 disk
└─sdb1 8:17 0 200G 0 part
假設我們要格式化分區/dev/sdb1。
2. 確保分區未挂載
在格式化之前,設備不能處於挂載狀態。檢查掛載狀態請使用:
sudo umount /dev/sdb1
3. 開始格式化
現在在選擇的分區上建立ext4檔案系統:
sudo mkfs.ext4 /dev/sdb1
命令的輸出大概如下:
mke2fs 1.45.7 (28-Jan-2021)
Creating filesystem with 52428800 4k blocks and 13107200 inodes
Filesystem UUID: 5634f623-7b2d-4d6b-b8f5-abcdef123456
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, ...
UUID 是檔案系統的唯一識別碼。我們建議在/etc/fstab中使用它來指定挂載點。
4. 驗證結果
確認檔案系統是否已建立:
sudo blkid /dev/sdb1
輸出將顯示設備上現在已建立ext4檔案系統:
/dev/sdb1: UUID="5634f623-7b2d-4d6b-b8f5-abcdef123456" TYPE="ext4"
4. 檔案系統的選擇
該選擇哪種檔案系統呢?這都取決於你的需求。以下是一些建議:
- ext4: 適用於Linux的通用選擇。適合大部分場景。
- XFS: 如果你需要處理大檔案或者伺服器上的高效能。
- FAT32 (vfat): 如果需要在Windows和MacOS之間共用設備。需注意,這裡的單一檔案最大尺寸限制為4GB。
- NTFS: 與Windows相容,但在Linux中效能可能比ext4低。
如果不確定,直接使用ext4吧。它幾乎不會讓你失望。
5. 格式化時的常見錯誤
格式化是一項需要特別小心的任務。以下是幾個可能的錯誤及避免它們的方法:
格式化錯誤的設備: 為了避免這種情況,請務必檢查你打算操作的設備 (
lsblk和blkid能幫助你)。設備仍然掛載: 如果設備已掛載,
mkfs指令會報錯。請確保設備已卸載。意外刪除數據: 絕不要在未確認的分區上運行
mkfs,因為所有內容都會被刪除。如果不確定,最好在格式化之前備份數據。
實際應用
了解格式化的重要性不僅對系統管理員有幫助,對開發者來說也一樣。例如,如果你在使用雲端平台,例如 AWS 或 Azure,你會經常需要為應用程式創建和格式化分區。此外,當你想配置外部硬碟或者 USB 隨身碟來存儲數據時,這些技能也很實用。
記得,正確配置的檔案系統是你應用程式穩定運行的基礎。畢竟,沒有人希望在截至期限前 5 分鐘收到 "找不到檔案系統" 的錯誤訊息吧?
現在,你已了解如何格式化設備及選擇檔案系統,準備好進入下一步:使用命令 fsck 來檢查並修復檔案系統。
GO TO FULL VERSION