挂了 4T 硬盘,只识别 2T?90% 的 Linux 新手都踩过这个坑!

你是否遇到过这种迷惑行为:

明明给服务器分配的是4TB磁盘空间,结果lsblk一看:可用空间只有2TB!,挂载后查看仍然是2TB,见鬼了,剩下的空间去哪了。

一、问题真相

MBR分区格式的“原罪”。在Linux中,大部分用户习惯用fdisk或自动挂载脚本快速格式化硬盘。如果没特别指定分区表格式,系统很可能用的是MBR。

而MBR最大只支持2TiB的磁盘容量。超过部分直接被浪费掉!

我们看一下MBR和GPT的对比就一目了然了。

对比项

MBR

GPT

最大支持容量

2TB

ZB级别(远超4T)

最大主分区数

4个主分区

(或3主+扩展+逻辑)

最多128个分区

引导方式

BIOS

UEFI

分区表容错

无备份,损坏即挂

有主副分区表,自动修复

工具支持

fdisk

、老系统支持更好

parted

、现代系统推荐

是否支持4T硬盘

最多只认2TB

完全支持

二、、正确操作

对于超过2TB的磁盘有两种方式:

直接格式化文件系统,不用分区使用GPT分区

下面我就将这两种方式的具体操作分享给大家。

【温馨提示】下面的只适用刚格式化的空盘,里面还没有数据,可以直接卸载后删除分区,重新格式化。

1. 直接格式化文件系统

上面已经将MBR分区删除了,下面就直接格式化文件系统。

复制
[root@localhost ~]# lsblk /dev/vdc NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT vdc 252:32 0 4T 0 disk # 强制格式化/dev/vdc磁盘 [root@localhost ~]# mkfs.xfs /dev/vdc -f # 将格式化后的磁盘挂载到/dataroot目录下 [root@localhost ~]# mount /dev/vdc /dataroot # 如果想永久挂载就将信息写入fstab文件中1.2.3.4.5.6.7.8.

可以看到有一个4TB的磁盘挂载到 /dataroot目录。直接格式化方式是非常快速的。

2. 使用 parted 创建 GPT 分区表

parted 命令创建pgt分区:

复制
[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) print1.2.3.4.5.6.7.8.9.10.11.

注意事项:

操作前务必备份数据,分区会清除磁盘所有内容!替换/dev/vdc为你的实际磁盘设备名(通过lsblk确认)

格式化文件系统:

复制
[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 -f1.2.3.4.5.6.

创建挂载点:

复制
mkdir /dataroot1.

挂载磁盘:

复制
mount /dev/vdc1 /dataroot1.

查看挂载效果:

设置开机自动挂载:编辑/etc/fstab添加一行

复制
UUID=你的磁盘UUID /dataroot xfs defaults 0 21.

三、常见误区合集

fdisk默认新建的是MBR分区(除非你指定GPT)把大于2T的硬盘挂到老BIOS机器上(不支持GPT启动)忘记用 mklabel gpt,分完区还是只有2T!

阅读剩余
THE END