掛了 4T 硬盤,只識別 2T?90% 的 Linux 新手都踩過這個坑!
你是否遇到過這種迷惑行為:
明明給服務(wù)器分配的是4TB磁盤空間,結(jié)果lsblk一看:可用空間只有2TB!,掛載后查看仍然是2TB,見鬼了,剩下的空間去哪了。
一、問題真相
MBR分區(qū)格式的“原罪”。在Linux中,大部分用戶習(xí)慣用fdisk或自動掛載腳本快速格式化硬盤。如果沒特別指定分區(qū)表格式,系統(tǒng)很可能用的是MBR。
而MBR最大只支持2TiB的磁盤容量。超過部分直接被浪費(fèi)掉!
我們看一下MBR和GPT的對比就一目了然了。
對比項(xiàng) | MBR | GPT |
最大支持容量 | 2TB | ZB級別(遠(yuǎn)超4T) |
最大主分區(qū)數(shù) | 4個主分區(qū) (或3主+擴(kuò)展+邏輯) | 最多128個分區(qū) |
引導(dǎo)方式 | BIOS | UEFI |
分區(qū)表容錯 | 無備份,損壞即掛 | 有主副分區(qū)表,自動修復(fù) |
工具支持 | fdisk 、老系統(tǒng)支持更好 | parted 、現(xiàn)代系統(tǒng)推薦 |
是否支持4T硬盤 | 最多只認(rèn)2TB | 完全支持 |
二、、正確操作
對于超過2TB的磁盤有兩種方式:
- 直接格式化文件系統(tǒng),不用分區(qū)
- 使用GPT分區(qū)
下面我就將這兩種方式的具體操作分享給大家。
【溫馨提示】下面的只適用剛格式化的空盤,里面還沒有數(shù)據(jù),可以直接卸載后刪除分區(qū),重新格式化。
1. 直接格式化文件系統(tǒng)
上面已經(jīng)將MBR分區(qū)刪除了,下面就直接格式化文件系統(tǒng)。
[root@localhost ~]# lsblk /dev/vdc
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vdc 252:32 0 4T 0 disk
# 強(qiáng)制格式化/dev/vdc磁盤
[root@localhost ~]# mkfs.xfs /dev/vdc -f
# 將格式化后的磁盤掛載到/dataroot目錄下
[root@localhost ~]# mount /dev/vdc /dataroot
# 如果想永久掛載就將信息寫入fstab文件中
可以看到有一個4TB的磁盤掛載到 /dataroot目錄。直接格式化方式是非??焖俚摹?/p>
2. 使用 parted 創(chuàng)建 GPT 分區(qū)表
parted 命令創(chuàng)建pgt分區(qū):
[root@dt-oracle-backup ~]# parted /dev/vdc
GNU Parted 3.1
Using /dev/vdc
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel gpt
Warning: The existing disk label on /dev/vdc will be destroyed and all data on this disk will be lost. Do you want to continue?
Yes/No? yes
(parted)
(parted) mkpart primary xfs 0% 100% # 一次性分配全部空間
(parted)
(parted) print
注意事項(xiàng):
- 操作前務(wù)必備份數(shù)據(jù),分區(qū)會清除磁盤所有內(nèi)容!
- 替換/dev/vdc為你的實(shí)際磁盤設(shè)備名(通過lsblk確認(rèn))
格式化文件系統(tǒng):
[root@localhost ~]# lsblk /dev/vdc
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vdc 252:32 0 4T 0 disk
└─vdc1 252:33 0 4T 0 part
[root@localhost ~]# mkfs.xfs /dev/vdc1 -f
創(chuàng)建掛載點(diǎn):
mkdir /dataroot
掛載磁盤:
mount /dev/vdc1 /dataroot
查看掛載效果:
設(shè)置開機(jī)自動掛載:編輯/etc/fstab添加一行
UUID=你的磁盤UUID /dataroot xfs defaults 0 2
三、常見誤區(qū)合集
- fdisk默認(rèn)新建的是MBR分區(qū)(除非你指定GPT)
- 把大于2T的硬盤掛到老BIOS機(jī)器上(不支持GPT啟動)
- 忘記用 mklabel gpt,分完區(qū)還是只有2T!