我有一个 22TB 磁盘/dev/sdb
。如何创建 22TB 分区?不太关心文件系统——ext4
或者zfs
没关系。
运行 CentOS 6.2 - 分区将用作数据转储。只有单个数据流,因此现在对文件系统的挑剔/挑剔并不是真正的问题。该磁盘由 12x2TB 近线 SAS 驱动器和 Dell Perc 控制器组成。
我只想要一个 22TB 的分区。
答案1
最简单的解决方案是使用GPT 分区,64 位版本的 Linux,以及XFS:
GPT 是必要的,因为MS-DOS 风格的 MBR 分区表创建者
fdisk
仅限于 2 TiB 磁盘。所以,你需要使用parted
或另一个支持 GPT 的分区程序而不是fdisk
. (gdisk
,gparted
, ETC。)64 位内核是必要的,因为 32 位内核限制您只能使用小于您要求的文件系统。您要么达到基于的大小限制32 位整数或者最终无法寻址足够的 RAM 来正确支持文件系统。
XFS 不是唯一的解决方案,但在我看来,它是 RHEL 系统最简单的解决方案。
在 RHEL 6 中您不能使用 ext4。尽管文件系统是设计用于支持 1 EiB 文件系统
e2fsprogs
, RHEL 6 及其衍生版本中包含的版本中存在人为的 16 TiB 卷大小限制。两个都红帽和中央操作系统在他们的文档中指出这一点。 (ext4 16 TiB 限制为RHEL 7 中大幅提升至 50 TiB。)ZFS 在您的情况下可能不实用。由于它有一些法律和技术限制,我不能完全推荐它,除非您需要只有 ZFS 为您提供的东西。
排除了您选择的两个文件系统后,我建议使用 XFS。它是 RHEL 7 中的默认文件系统,在所有 RHEL 6 版本中作为受支持的文件系统提供,并在 RHEL 6 发布后向后移植到更高版本的 RHEL 5。
过程如下:
mkfs.xfs
通过不带参数运行它来检查是否已安装。如果不存在,请安装用户态 XFS 工具:# yum install xfsprogs
如果失败,可能是因为您使用的是较旧的操作系统,其默认包存储库中没有此内容。你确实应该升级,但如果不可能,你可以从CentOSPlus或者EPEL。您可能还需要安装该
kmod_xfs
软件包。创建分区:
既然您说您的 22 TiB 卷已打开
/dev/sdb
,则命令为parted
:# parted /dev/sdb mklabel gpt # parted -a optimal -- /dev/sdb mkpart primary xfs 1 -1
这导致它用单个分区接管整个卷。实际上,它忽略了卷的前 1 MiB,以实现4 KiB 对齐获得完整性能所需的高级格式硬盘和固态硬盘。
您可以跳过此步骤并使用 XFS 格式化整个卷。也就是说,您将
/dev/sdb
在下面的示例中使用而不是/dev/sdb1
.这避免了扇区对齐的问题。对于只有基于 Linux 的操作系统才能看到的卷,没有什么缺点值得一提,但我警告不要在可移动卷或内部卷上执行此操作。多重启动计算机,因为某些操作系统(例如 Windows 和 macOS)会在每次出现无分区硬盘时为您提供格式化服务。将文件系统放在分区上可以解决这个问题。格式化分区:
# mkfs.xfs -L somelabel /dev/sdb1
添加
/etc/fstab
条目:LABEL=somelabel /some/mount/point xfs defaults 0 0
悬置起来!
# mount /some/mount/point
如果你想往下走左心室容量路径,上面的步骤基本上只是第二组命令的更详细版本下面是用户bsd
的回答。你必须在上面的命令之前执行他的第一组命令。
LVM 提供了某些优势,但代价是复杂性。例如,您稍后可以通过向 LVM 卷组添加更多物理卷来“增长”它,从而腾出空间来增长逻辑卷(有点像“分区”),这反过来又可以让您增长位于逻辑卷上的文件系统。体积。 (明白我所说的复杂性是什么意思吗?:))
答案2
只是作为其他建议的替代方案。
您根本不必对磁盘进行分区。
你可以简单地创建一个卷组, 与一个或多个逻辑卷。
pvcreate /dev/sdb
vgcreate data /dev/sdb
lvcreate --name dump -L '100%VG' data
现在您有了一个逻辑卷,您可以使用您想要的任何文件系统类型对其进行格式化。
mkfs.XXXX /dev/mapper/data-dump #<- XXXX can be ext4, xfs, btrfs, reiser
mount /dev/mapper/data-dump /mntpt
答案3
问题的问题:你问'如何分区 22TB 磁盘”,然后在问题中,您说,您只想要一个 22TB 分区。所以这首先是含糊不清的。
如果您已经有一个可以支持 22TB 空间的块设备,那么您就已经拥有整个 22TB 分区。您所需要的只是在其之上的文件系统,这将使设备可安装并可用于系统进程的读/写。更重要的是,您需要一个在 64 位模式下运行的 Linux 内核,以及一个支持并扩展到 22TB 数据增长的文件系统模块/驱动程序,可以处理管理(单个)块设备上的数据的细节舒适。性能完全是它的另一个维度。在这种情况下,我会选择选择它XFS
作为我的文件系统,因为它是 64 位文件系统,能够处理高达 100 万 TB 的文件系统。它最多支持 9 EXABYTES。
2^63 = 9 x 1018 = 9 exabytes
有关 XFS 的更多详细信息:http://oss.sgi.com/projects/xfs/
如果您正在寻找对巨大的 22TB 块设备进行进一步分区,请使用gparted
将设备拆分为可用分区,然后使用文件系统对其进行格式化以使其可安装。
看来您有硬件 RAID 控制器,因为您提到您有 DELL perc RAID 控制器 - 这意味着您必须告诉哪个 RAID 配置(您使用的是哪个 RAID 级别?)并且在大多数情况下,您不会获得完整的 22TB 空间可供使用,但我可能是错的。
答案4
我不确定当前是否可以使用标准分区表。在标准分区表方案中,卷限制为 2 32 个扇区。每个扇区有 512 字节,您只需用完数字即可分配给大约 2TB 的扇区。
但是,如果您使用 GUID 分区表而不是标准分区表,您应该能够执行此操作。 GUID 分区表允许卷扩展到泽字节范围。大多数 Linux 发行版都可以从 GUID 卷启动,但目前没有任何 Windows 版本(EFI 上的 Windows 7 除外)可以从 GUID 卷启动。
有些工具(如 fdisk)无法使用 GUID 卷,但其他工具(如 GParted)可以。创建 GUID 分区表后,您应该能够使用支持该大小卷的几种常见文件系统之一(例如 EXT4)创建卷。