Preste atenção a esta parte:
Sector size (logical/physical): 4096B/4096B
Este disco é capaz de usar blocos 4KiB. Eu estou supondo que o caso USB e o controlador SATA interno no notebook estão usando estratégias diferentes para lidar com isso: um os traduz em blocos tradicionais de 512 bytes e o outro pode usar o novo tamanho de bloco nativamente.
Acredito que, quando o disco estiver no compartimento de disco do notebook, você obterá essa saída:
Sector size (logical/physical): 512B/4096B
Com um esquema de particionamento GPT, isso se torna um problema: a especificação GPT diz que a tabela de partições deve começar no bloco 1. O bloco nº 0 é reservado para "MBR de proteção", que permite que sistemas mais antigos identifiquem o disco como em uso, mesmo que compreendam apenas o particionamento no estilo MBR.
Mas se você particionar o disco usando blocos de 512 bytes emulados e alternar para o modo nativo (por exemplo, movendo o disco de um controlador interno para um USB 4 KiB-aware), um bloco de 512 # 1 se tornará o segundo oitavo de 4 KiB bloco # 0.
Respectivamente, se você inicialmente usar blocos nativos de 4 KiB ao particionar o disco e, em seguida, alternar para blocos de 512 bytes emulados, a tabela de partições GPT será iniciada no bloco 8.
Infelizmente, a única maneira de consertar sua situação sem reparticionar seria encontrar um adaptador HDD USB externo mais antigo que especificamente
não pode usar blocos de 4 KiB, por isso acionaria o 512- emulação do setor de bytes como o controlador SATA interno do laptop.
Com o kernel Linux versão 4.14 ou mais recente (ou com um mais antigo que tenha this backported patch ), é possível mudar o tamanho do bloco lógico. Se você também tiver uma versão de losetup
que tenha este patch , você poderá ter seu disco no seu adaptador USB existente e, em seguida, diga:
losetup -P -b 512 /dev/loop0 /dev/sdb
para permitir que você acesse /dev/sdb
a /dev/loop0
usando um tamanho de bloco lógico diferente. As partições aparecerão como /dev/loop0pN
, com N sendo o número da partição ou, se esse esquema ainda não for suportado pela sua distribuição, você poderá omitir a opção -P
e usar a ferramenta kpartx
do pacote device-mapper-multipath :
kpartx -a /dev/loop0
... para criar automaticamente mapeamentos para cada partição em seu dispositivo de loop, chamado /dev/mapper/loop0pN
.
Você pode montar esses dispositivos de partição como de costume, apenas com um nome de dispositivo diferente.
Depois de desmontar os dispositivos de partição, o procedimento para desfazer essa configuração é:
kpartx -d /dev/loop0 # only if the use of kpartx was needed
losetup -d /dev/loop0