问题:centos/redhat下使用分区工具fdisk创建大于2TB的分区,无法创建

关键字:MBR、GPT、CHS、LBA

MBR:主引导记录

GPT:GUID 分区表

CHS:磁柱 磁头 扇区

LBA:逻辑块寻址

解决:使用分区工具gdisk进行分区,系统默认没有安装,可通过yum安装,gdisk与fdisk用法类似,只是分区类型代码有所不同

#yum -y install gdisk

#gdisk /dev/sdb

扩展:

MBR分区模式:MBR 将数据存储在大约 4 个分区上,这些分区称为主分区。每个分区采用两种方法进行描述:“柱面/磁头/扇区 (CHS)” 标记法和 “逻辑块寻址 (LBA)” 标记法。今天,CHS 标记法几乎成为了老古董,因为它是一个 24 位的数字。这意味着它只限于描述 8GB 大小的磁盘区域。假设一个扇区大小为 512 字节,32 位的 LBA 值支持 2TiB 大小。但是这个 2TiB 上限不太容易突破;因为在 MBR 中没有留下任何未分配的字段,可用于向 LBA 地址添加更多位。MBR 还有数据完整性问题。它是一个单一数据结构,容易受到误操作和磁盘故障的损坏。另外,由于逻辑分区以一种链接表结构定义,如果一个逻辑分区损坏,就会阻止对其余逻辑分区的访问。这些数据结构都没有任何形式的错误探测功能,因此,损坏很难定位。

GPT分区模式:GPT 定义是 Intel® 为一个 BIOS 替换创建的 Extensible Firmware Interface (EFI) 规范的一部分,

  • GPT 只使用 LBA,因此,CHS 问题就不复存在。
  • 磁盘指针的大小为 64 位,假设 512 字节扇区,这意味着 GPT 可以处理的磁盘大小最高达 512 x 264 字节(8 zebibytes,即 86 亿 TiB)。
  • GPT 数据结构在磁盘上存储两次:开始和结束各一次。在因事故或坏扇区导致损坏的情况下,这种重复提高了成功恢复的几率。
  • 循环冗余检验 (CRC) 值针对关键数据结构而计算,提高了数据崩溃的检测几率。
  • GPT 将所有分区存储在单个分区表中(带有备份),因此扩展分区或逻辑分区没有存在的必要。GPT 默认支持 128 个分区,当然您也可以更改分区表的大小,如果您的分区软件支持这种更改的话。
  • 虽然 MBR 提供 1 字节分区类型代码,但 GPT 使用一个 16 字节的全局唯一标识符 (GUID) 值来标识分区类型。这使分区类型更不容易冲突。
  • GPT 支持存储人类可读的分区名称。您可以使用这个字段来命名您的 Linux® /home、/usr、/var 和其他分区,以便它们在分区软件中更容易识别。
  • 有三类主要的软件都需要 GPT 支持:内核、引导装载程序和低级别磁盘实用工具。如果您使用 GPT 是因为正在创建一个非常大的独立磁盘冗余阵列 (RAID),那么可能要检查文件系统是否支持超大磁盘。

    注意:如果您正在从头开始安装 Linux 并想使用 GPT,您的安装程序必须在所有这三个类别的软件中都提供 GPT 支持。在 2012 年,所有 Linux 主要发行版均提供了该支持。

  • GPT 的引导装载程序是多样的,取决于计算机上的固件类型。在 BIOS 下,只有 Grand Unified Bootloader (GRUB) 2 正式支持 GPT。目前大多数 Linux 发行版使用 GRUB 2 作为默认引导装载程序,但有些版本继续使用较旧的 GRUB Legacy。GRUB Legacy 并没有正式支持 GPT,但包含 GPT 支持的补丁版本现已上市。更古老的 Linux Loader (LILO) 没有明确支持 GPT,但其磁盘寻址方法以扇区位置为基础,所以它往往是可用的(在实践中)。
  • GPT 支持的第三个领域是系统实用工具。Linux 提供三种主要的分区工具系列,均不同程度支持 GPT:

    • fdisk 系列。这些程序(fdiskcfdisksfdisk)是文本模式的工具,可以处理 MBR 和一些更独特的分区表,但它们不能处理 GPT。
    • GNU Parted (libparted)。GNU Parted 项目提供一个库 (libparted) 和一个文本模式的实用工具 (parted) 进行分区。若干个图形用户界面 (GUI) 实现工具也构建于 libparted 之上。libparted 库可以处理 MBR、GPT 和几种其他分区表类型。
    • GPT fdisk该系列(gdiskcgdisksgdisk)根据 fdisk 系列进行建模,但可以在 GPT 磁盘上工作。

引自https://www.ibm.com/developerworks/cn/linux/l-gpt/

centos下为大硬盘分区(大于2T)的更多相关文章

  1. 大硬盘(大于2T)分区方法

    背景 在使用fdisk建立分区时,我们最大只能建立2TB大小的分区.如需建立超过2T的分区需要采用GPT磁盘模式.下文补充一下GPT和MBR的基础知识和分超过2T分区的方法. 基本概念 MBR 1.M ...

  2. CentOS下挂在NTFS分区

    本文参考自http://www.cnblogs.com/gbyukg/archive/2011/11/02/2232343.html centos下想访问NTFS分区,现在普遍的方法是利用ntfs-3 ...

  3. 【磁盘/文件系统】第三篇:标准磁盘分区流程针对parted(一般硬盘容量大于2T(但是小于2T也可以进行分区);分区数最大是支持100多个分区)

    说明: 在 Linux 上可以采用 parted 来对磁盘进行分区 1.通过 fdisk -l 可以查看磁盘是否存在, 由于使用的是大磁盘(大于2T),fdisk 不能用来作为分区工具了,而应该使用 ...

  4. CentOS下使用LVM进行分区(转)

    说明:为什么抄,因为这篇文章图文并茂,所有测试都在CentOS 6和7测试过. 许多Linux使用者安装操作系统时都会遇到这样的困境:如何精确评估和分配各个硬盘分区的容量,如果当初评估不准确,一旦系统 ...

  5. Linux下添加新硬盘,分区及挂载(转)

    挂载好新硬盘后输入fdisk -l命令看当前磁盘信息,卸载硬盘分区 umount /dev/sdb 可以看到除了当前的第一块硬盘外还有一块sdb的第二块硬盘,然后用fdisk /dev/sdb 进行分 ...

  6. CentOS下添加新硬盘

    1.查看新硬盘     #fdisk –l      新添加的硬盘的编号为/dev/sdb 2.硬盘分区     1)进入fdisk模式 #/sbin/fdisk  /dev/sdb 2)输入n进行分 ...

  7. 【转】ubuntu下自动挂载硬盘分区

    1, 首先摸清我系统的硬盘分区等使用情况 sudo fdisk -l Disk /dev/sda: 128.0 GB, 128035676160 bytes 255 heads, 63 sectors ...

  8. 解决Linux下3T硬盘分区只有2T(2199G)可用

    分区转换成GPT即可 sudo parted /dev/sdb 将MBR硬盘格式化为GPT mklabel gpt 之后可以看一下状态 print 整个硬盘空间只分一个区 mkpart primary ...

  9. Linux下添加新硬盘,分区及挂载

    挂载好新硬盘后输入fdisk -l命令看当前磁盘信息 可以看到除了当前的第一块硬盘外还有一块sdb的第二块硬盘,然后用fdisk /dev/sdb 进行分区 进入fdisk命令,输入h可以看到该命令的 ...

随机推荐

  1. 【Django】--基础知识

    一 什么是web框架? 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单地说,就是你用别人搭建好的舞台来做表演. Web应 ...

  2. AndroidStudio使用过程中遇到的bug

    Ref:http://www.cnblogs.com/jingmo0319/p/5781878.html 1. Error:Execution failed for task ':app:transf ...

  3. SQL Server 事务以及事务日志综述

    事务是一个非常重要的概念,特此在这里写一些文章来总结.整篇文章还在持续更新中. 在本系列文章中,你将看到以下内容: 数据库事务(Database Transaction)概述 事务操作(BEGIN/C ...

  4. 信鸽推送 .NET (C#) 服务端 SDK rest api 调用库(v1.2)

    信鸽推送 .NET  服务端 SDK rest api 调用库-介绍 该版本是基于信鸽推送v2版本的时候封装的,先拿出来与大家分享,封装还还凑合,不依赖其他http调用件,唯一依赖json序列化dll ...

  5. CozyRSS开发记录18-番外之Atom1.0的支持

    CozyRSS开发记录18-番外之Atom1.0的支持 1.对CozyRSS.Syndication批判一番 由于我工作的主要开发语言是c++,所以会看到我的c#代码写得非常朴素,很多语法糖都没有用上 ...

  6. Linux学习笔记(16)-多线程

    什么是多线程?或者说,什么是线程? 按照书本上的描述,所谓线程,便是包含在进程内部的顺序执行流,是进程中实际运作的单位,也是操作系统能够进行调度的最小单位. 一个进程中可以并发多条线程,每条线程并行执 ...

  7. iframe中positioin:fixed失效问题

    页面中嵌套的iframe 内的 position:fixed元素定位失效fixed正常页面 此时position:fixed是根据浏览器窗口定位的,下拉一直位于左上角:以iframe形式嵌入后 此时p ...

  8. iOS 真机测试时报错:Provisioning profile "iOS Team Provisioning Profile: XXX” doesn't include the currently selected device “XXX”.

    这几天因工作需要,去给客户演示iOS项目打包的过程.之前演示都是顺利的,但后来客户自己操作时打电话说遇到了问题,出现报错. 就过去看了一下,发现一个很陌生的错误提示: The operation co ...

  9. 杨氏矩阵定义及其查找的实现C++

    先介绍一下这个数据结构的定义,Young Tableau有一个m*n的矩阵,然后有一数组 a[k], 其中 k<=m*n ,然后把a[k]中的数填入 m*n 的矩阵中,填充规则为: 1.  每一 ...

  10. HDU5800 To My Girlfriend(DP)

    题目 Source http://acm.hdu.edu.cn/showproblem.php?pid=5800 Description Dear Guo I never forget the mom ...