Uma consulta básica sobre o particionamento do Linux

1

Estou tentando entender a tabela de partições do meu smartphone Android baseado no MTK-6572 (Karbonn-A35). A idéia é ampliar a partição de armazenamento interna (montada como /data ) e diminuir a partição Phone Storage (montada como /mnt/sdcard ), para que eu possa instalar mais aplicativos no telefone sem receber o erro "Disk Full". No entanto, há uma coisa que eu quero entender antes de prosseguir para alterar o arquivo de partição EBR1. Atualmente, aqui está como meu MBR & EBR1 parece (sim, eu também estou me perguntando por que diabos eles criam uma partição estendida de 2TiB em tamanho, enquanto meu sdcard é apenas 2GB!):

$disktype MBR
--- MBR
Regular file, size 512 bytes
DOS/MBR partition map
Partition 1: 2.000 TiB (2199023255040 bytes, 4294967295 sectors from 1024)
  Type 0x05 (Extended)
Partition 2: 10 MiB (10485760 bytes, 20480 sectors from 18432)
  Type 0x83 (Linux)
Partition 3: 10 MiB (10485760 bytes, 20480 sectors from 38912)
  Type 0x83 (Linux)
Partition 4: 650 MiB (681574400 bytes, 1331200 sectors from 113152)
  Type 0x83 (Linux)


$disktype EBR1
--- EBR1
Regular file, size 512 bytes
DOS/MBR partition map
Partition 1: 376 MiB (394264576 bytes, 770048 sectors from 1443328)
  Type 0x83 (Linux)
Partition 2: 1.293 GiB (1388314624 bytes, 2711552 sectors from 2213376)
  Type 0x83 (Linux)
Partition 3: 1.998 TiB (2196501691904 bytes, 4290042367 sectors from 4924928)
  Type 0x83 (Linux)

Se você vir a 4ª e a 5ª partições (ou seja, o fim do 4º no MBR e o início do 1º no EBR1), há alguma sobreposição. A quarta partição diz 1331200 sectors from 113152 . Mas quando você conta 1331200 setores de 113152, você obtém 1444352 de onde a próxima partição deve começar. No entanto, a próxima partição (ou seja, a 1ª na EBR) começa em 1443328, o que é um pouco mais cedo do que isso. Isso não é um tipo de sobreposição para esses poucos setores (1444352−1443328 = 1024)? Esses 1024 setores são parte da quarta e quinta partições? Ou estou faltando alguma coisa sobre o meu entendimento sobre tabelas de partição?

Isso é uma coisa, outra coisa é sobre a terceira partição no EBR1. Este artigo da Wikipédia sobre EBR diz que apenas as duas primeiras entradas em uma EBR devem ser usadas:

EBRs have essentially the same structure as the MBR; except only the first two entries of the partition table are supposed to be used, besides having the mandatory boot record signature (or magic number) of 0xAA55 at the end of the sector.

Então, como é que o EBR1 do meu dispositivo contém três entradas? Mais uma vez, isso é uma coisa não-padrão ou estou faltando alguma coisa?

editar

Saída hexadecimal do EBR1 mostrando as três entradas:

    
por Prahlad Yeri 07.07.2016 / 04:05

1 resposta

1

Registros de inicialização estendidos precisam conter apenas dois valores, e seus EBRs provavelmente precisam. A segunda entrada em um EBR aponta para a próxima EBR (a menos que seja a última da cadeia).

Seu utilitário disktype percorre a cadeia de três EBRs e exibe cada uma das entradas como se fossem um MBR de entradas múltiplas.

(Isso é explicado na seção Valores do artigo da Wikipédia)

    
por 07.07.2016 / 07:23