Como fazer com que a GPT se estenda para o total de 3 TB que um disco possui?

1

Eu tenho um terceiro instalar o Linux no meu servidor remoto e algo deu errado com ele. Tem um disco de 3 TB lá:

# hdparm -I /dev/sda | grep size
Logical  Sector size:                   512 bytes
Physical Sector size:                  4096 bytes
device size with M = 1024*1024:     2861588 MBytes
device size with M = 1000*1000:     3000592 MBytes (3000 GB)
cache/buffer size  = unknown

No entanto, o gpt parece reconhecer apenas 2 TB dele:

# fdisk -l /dev/sda

Disk /dev/sda: 2 TiB, 2199023254528 bytes, 4294967294 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: FA1FA25D-68B0-4288-9B4B-7D870C76C3AB

Device         Start        End    Sectors  Size Type
/dev/sda1       2048     999423     997376  487M EFI System
/dev/sda2     999424  196311039  195311616 93.1G Linux RAID
/dev/sda3  196311040 4294967260 4098656221  1.9T Linux filesy

O mesmo que com o parted:

# parted /dev/sda
GNU Parted 3.2
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Model: ATA WDC WD30EFRX-68E (scsi)
Disk /dev/sda: 2199GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  512MB   511MB   fat32              boot, esp
 2      512MB   101GB   100GB                      raid
 3      101GB   2199GB  2099GB

Como posso fazer o gpt se estender para os 3TB completos? Não há dados na máquina ainda e não é o único disco (como em, o sistema sobreviverá perdendo todos os dados no disco), mas eu gostaria de poder consertar isso remotamente.

Editar: comandos adicionais solicitados:

# lsblk
NAME    MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda       8:0    0     2T  0 disk
├─sda1    8:1    0   487M  0 part  /boot/efi
└─sda2    8:2    0  93.1G  0 part
  └─md0   9:0    0  93.1G  0 raid1 /


# blockdev --getsz /dev/sda
4294967294

# hdparm -N /dev/sda

/dev/sda:
 max sectors   = 5860533168/5860533168, HPA is disabled

Editar: eu deletei o dispositivo com

echo 1 > /sys/block/sda/device/delete

e redigitalizado com

echo "0 0 0" >  /sys/class/scsi_host/host0/scan

mas na verdade o kernel acha que é de 2TB

[1163699.012539] scsi 0:0:0:0: Direct-Access     ATA      WDC WD30EFRX-68E 0A80 PQ: 0 ANSI: 5
[1163699.016198] sd 0:0:0:0: Attached scsi generic sg0 type 0
[1163699.016582] sd 0:0:0:0: [sde] 4294967294 512-byte logical blocks: (2.19 TB/1.99 TiB)
[1163699.021485] sd 0:0:0:0: [sde] Write Protect is off
[1163699.021490] sd 0:0:0:0: [sde] Mode Sense: 73 00 00 08
[1163699.022765] sd 0:0:0:0: [sde] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA

Eu estou querendo saber se simplesmente o kernel no Debian Jessie é muito antigo para ver o 3TB.

Edit: nope, na versão do kernel 4.7.8 eu ainda recebo apenas 2TiB.

    
por Remigiusz Modrzejewski 16.11.2016 / 09:29

1 resposta

1

Infelizmente, isso é um problema com a máquina, não com a pilha de software. Ele usa o controlador LSISAS1068E, que aparentemente limita as unidades a 2,2 TB. Estou procurando uma maneira de contornar isso, mas isso não tem nada a ver com o que tentei até agora.

    
por 16.11.2016 / 15:31