questões de tamanho e alinhamento do setor fdisk

10

Eu executei o comando:

# fdisk /dev/sda1

A saída foi:

The device presents a logical sector size that is smaller than
the physical sector size. Aligning to a physical sector (or optimal
I/O) size boundary is recommended, or performance may be impacted.

Command (m for help): p

Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0xe0c5913d

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1              63    40965749    20482843+  1c  Hidden W95 FAT32 (LBA)
Partition 1 does not start on physical sector boundary.
/dev/sda2   *    40966144   334567423   146800640    7  HPFS/NTFS/exFAT
/dev/sda3       334567424   753997823   209715200   83  Linux
/dev/sda4       753999870  1953525167   599762649    5  Extended
Partition 4 does not start on physical sector boundary.
/dev/sda5       753999872  1949376511   597688320   83  Linux
/dev/sda6      1949378560  1953525167     2073304   82  Linux swap / Solaris

Estou com problemas porque os seguintes itens:

  • O dispositivo apresenta um tamanho de setor lógico menor que o tamanho do setor físico. É recomendado o alinhamento com um limite de tamanho do setor físico (ou E / S ideal), ou o desempenho pode ser afetado.

  • A partição 1 não inicia no limite do setor físico.

  • A partição 4 não inicia no limite do setor físico.

Como posso resolver um ou mais desses itens sem perder meus arquivos e partições?

Quais são os problemas que terei deixando tudo como está?

Sir Jo Black
fonte
O tamanho do setor lógico é quase sempre 512 bytes - isso não é surpreendente. Os controladores de disco sabem disso e funcionam de acordo. Eu nunca vi um problema com os limites de setor e partição não alinhados - isso poderia ter sido um problema anos atrás.
1948 muru

Respostas:

11

O tamanho do setor lógico sendo menor que o tamanho do setor físico é normal para a maioria dos discos modernos. É assim que os discos de formato avançado são mais frequentemente implementados. Alguns discos externos usam o mesmo tamanho de setor (4096 bytes) para setores físicos e lógicos, e ouvi dizer que agora alguns discos internos avançados fazem o mesmo, mas a maioria dos discos atualmente são modelos de formato avançado com 512 bytes setores lógicos e setores físicos de 4096 bytes. Não há nada que você possa (ou deva tentar) sobre isso.

Dito isto, é importante alinhar partições corretamente para discos de formato avançado. Fiz alguns testes em discos de formato avançado para determinar o que acontece quando suas partições estão desalinhadas e publicamos os resultados aqui. Em resumo, a extensão do problema varia muito de um sistema de arquivos para outro e de um disco para outro, mas há quase sempre uma penalidade de desempenho significativa (e às vezes enorme ) associada a partições desalinhadas.

Seu /dev/sda4, no entanto, não contém diretamente um sistema de arquivos; é uma partição estendida, o que significa que é simplesmente um contêiner para outras partições. Os dados diretamente associados /dev/sda4são simplesmente dois setores (lógicos), que provavelmente nem são adjacentes um ao outro, portanto, eles não podem ser alinhados corretamente. As penalidades de desempenho real viriam do alinhamento das partições contidas /dev/sda4. No seu caso, /dev/sda4mantém /dev/sda5e /dev/sda6, ambos os quais estão alinhados corretamente. Assim, você não precisa se preocupar /dev/sda5. O aviso que você vê é simplesmente um código que está sendo entusiasmado demais em relatar um "problema" quando um não existe.

O seu /dev/sda1, por outro lado, não está alinhado corretamente - ele começa no setor 63, que não é divisível por 8. Se você deve fazer algo a respeito depende de quanto você usa essa partição, como você usa (tamanho do arquivo, leituras x gravações etc.), quão importante é obter o desempenho ideal dele, se você possui backups adequados etc. Recomendamos que você leia o artigo mencionado anteriormente e decida se deve corrigir o problema. (Eu não relatei os resultados do FAT nesse artigo por razões de espaço, mas o desempenho do FAT sofreu muito - IIRC, não tanto quanto o ReiserFS, mas pelo menos tão ruim quanto a maioria dos outros sistemas de arquivos nativos do Linux.)

Se você decidir consertar /dev/sda1, comece fazendo o backup. Com isso feito, uma maneira de corrigi-lo é excluí-lo, criar uma nova partição em seu lugar e restaurar seus arquivos. Outra maneira (após o backup) é redimensionar a partição no GParted. Faça uma pequena alteração no ponto de partida; qualquer versão recente do GParted deve arredondar para um múltiplo de 2048 setores, e você ficará bem. Mover o ponto inicial de uma partição é sempre mais arriscado e leva mais tempo do que mover o ponto final. Como a partição tem apenas 19 GiB de tamanho, a operação não deve levar uma quantidade ridícula de tempo, mesmo movendo o ponto inicial, mas não será instantânea.

Como observação e plano de fundo, apenas ferramentas bastante antigas desalinham partições nos modernos discos de formato avançado. Meu palpite é que você usou essa ferramenta (a versão antiga do Linux do fdiskou um DOS FDISK, talvez) para criar /dev/sda1, em seguida, usou uma ferramenta mais moderna (a mais recente fdisk, partedou GParted, talvez) para criar o resto de suas partições.

Rod Smith
fonte