21 noviembre, 2024

Fuente: http://www.cyberciti.biz/tips/fdisk-unable-to-create-partition-greater-2tb.html

 

 Linux Creating a Partition Size Larger Than 2TB

by on November 6, 2007


Frankly
speaking, you cannot create a Linux partition larger than 2 TB using
the fdisk command. The fdisk won’t create partitions larger than 2 TB.
This is fine for desktop and laptop users, but on server you need a
large partition. For example, you cannot create 3TB or 4TB partition
size (RAID based) using the fdisk command. It will not allow you to
create a partition that is greater than 2TB. In this tutorial, you will
learn more about creating Linux filesystems greater than 2 Terabytes to
support enterprise grade operation under any Linux distribution.

To
solve this problem use GNU parted command with GPT. It supports Intel
EFI/GPT partition tables. Partition Table (GPT) is a standard for the
layout of the partition table on a physical hard disk. It is a part of
the Extensible Firmware Interface (EFI) standard proposed by Intel as a
replacement for the outdated PC BIOS, one of the few remaining relics of
the original IBM PC. EFI uses GPT where BIOS uses a Master Boot Record
(MBR).
GUID Partition Table
(Fig.01:
Diagram illustrating the layout of the GUID Partition Table scheme.
Each logical block (LBA) is 512 bytes in size. LBA addresses that are
negative indicate position from the end of the volume, with −1 being the
last addressable block. Imaged Credit Wikipedia)

Linux GPT Kernel Support

EFI GUID Partition support works on both 32bit and 64bit platforms. You must include GPT support in kernel
in order to use GPT. If you don’t include GPT support in Linux kernelt,
after rebooting the server, the file system will no longer be
mountable or the GPT table will get corrupted. By default Redhat
Enterprise Linux / CentOS comes with GPT kernel support. However, if you
are using Debian or Ubuntu Linux, you need to recompile the kernel. Set
CONFIG_EFI_PARTITION to y to compile this feature.

File Systems
   Partition Types
     [*] Advanced partition selection
     [*] EFI GUID Partition support (NEW)
....

Find Out Current Disk Size

Type the following command:

# fdisk -l /dev/sdb

Sample outputs:

 
Disk /dev/sdb: 3000.6 GB, 3000592982016 bytes
255 heads, 63 sectors/track, 364801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Disk /dev/sdb doesn't contain a valid partition table

Linux Create 3TB partition size

To create a partition start GNU parted as follows:
# parted /dev/sdb

 Output:

GNU Parted 2.3
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)

Creates a new GPT disklabel i.e. partition table:

(parted) mklabel gpt

Sample outputs:

Warning: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want to continue?
Yes/No? yes
(parted)

Next, set the default unit to TB, enter:

(parted) unit TB

To create a 3TB partition size, enter:

(parted) mkpart primary 0 0

OR

(parted) mkpart primary 0.00TB 3.00TB

To print the current partitions, enter:

(parted) print

Sample outputs:

Model: ATA ST33000651AS (scsi)
Disk /dev/sdb: 3.00TB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Number  Start   End     Size    File system  Name     Flags
 1      0.00TB  3.00TB  3.00TB  ext4         primary

Quit and save the changes, enter:

(parted) quit

Sample outputs:

Information: You may need to update /etc/fstab.

Use the mkfs.ext3 or mkfs.ext4 command to format the file system, enter:
# mkfs.ext3 /dev/sdb1
OR
# mkfs.ext4 /dev/sdb1

Sample outputs:

mkfs.ext4 /dev/sdb1
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
183148544 inodes, 732566272 blocks
36628313 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
22357 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
 102400000, 214990848, 512000000, 550731776, 644972544
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 31 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

Type the following commands to mount /dev/sdb1, enter:
# mkdir /data
# mount /dev/sdb1 /data
# df -H

Sample outputs:

Filesystem             Size   Used  Avail Use% Mounted on
/dev/sdc1               16G   819M    14G   6% /
tmpfs                  1.6G      0   1.6G   0% /lib/init/rw
udev                   1.6G   123k   1.6G   1% /dev
tmpfs                  1.6G      0   1.6G   0% /dev/shm
/dev/sdb1              3.0T   211M   2.9T   1% /data

Make sure you replace /dev/sdb1 with actual RAID or Disk name
or Block Ethernet device such as /dev/etherd/e0.0. Do not forget to
update /etc/fstab, if necessary. Also note that booting from a GPT
volume requires support in your BIOS / firmware. This is not supported
on non-EFI platforms. I suggest you boot server from another disk such
as IDE / SATA / SSD disk and store data on /data.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *