Tamaño del sector fdisk y problemas de alineación

10

Ejecuté el comando:

# fdisk /dev/sda1

El resultado fue:

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

Estoy en problemas porque los siguientes elementos:

  • El dispositivo presenta un tamaño de sector lógico que es más pequeño que el tamaño del sector físico. Se recomienda alinearse con un límite de tamaño del sector físico (o E / S óptima), o el rendimiento puede verse afectado.

  • La partición 1 no comienza en el límite del sector físico.

  • La partición 4 no comienza en el límite del sector físico.

¿Cómo se me permite resolver uno o más de esos elementos sin perder mis archivos y particiones?

¿Cuáles son los problemas que tendré dejando todo como está?

Sir Jo Black
fuente
El tamaño del sector lógico es casi siempre 512 bytes , eso no es sorprendente. Los controladores de disco lo saben y funcionan en consecuencia. Nunca he visto un problema con los límites del sector y la partición que no se alinean, podría haber sido un problema hace años.
Muru

Respuestas:

11

El tamaño del sector lógico es menor que el tamaño del sector físico es normal para la mayoría de los discos modernos. Así es simplemente como los discos de formato avanzado se implementan con mayor frecuencia. Algunos discos externos usan el mismo tamaño de sector (4096 bytes) para los sectores físicos y lógicos, y he oído que algunos discos internos de alta gama ahora hacen lo mismo, pero la mayoría de los discos actualmente son modelos de formato avanzado con 512 bytes. sectores lógicos y sectores físicos de 4096 bytes. No hay nada que pueda (o deba intentar) hacer al respecto.

Dicho esto, es importante alinear correctamente las particiones para discos de formato avanzado. Ejecuté algunas pruebas en discos de formato avanzado para determinar qué sucede cuando sus particiones están desalineadas y publiqué los resultados aquí. En resumen, el alcance del problema varía mucho de un sistema de archivos a otro y de un disco a otro, pero casi siempre hay una penalización de rendimiento significativa (y a veces enorme ) asociada con particiones desalineadas.

Su /dev/sda4, sin embargo, no posee directamente un sistema de archivos; Es una partición extendida, lo que significa que es simplemente un contenedor para otras particiones. Los datos directamente asociados con /dev/sda4son simplemente dos sectores (lógicos), que probablemente ni siquiera son adyacentes entre sí, por lo que no se pueden alinear correctamente. Las penalizaciones de rendimiento reales vendrían de la alineación de las particiones contenidas dentro /dev/sda4. En su caso, se /dev/sda4mantiene /dev/sda5y /dev/sda6ambos están correctamente alineados. Por lo tanto, no necesita preocuparse /dev/sda5. La advertencia que está viendo es simplemente un código que está demasiado entusiasmado por informar un "problema" cuando no existe.

Su /dev/sda1, por otro lado, no está alineado correctamente: comienza en el sector 63, que no es divisible por 8. Si debe hacer algo al respecto depende de cuánto use esa partición, cómo la use (tamaño del archivo, lecturas frente a escrituras, etc.), lo importante que es obtener un rendimiento óptimo, si tiene copias de seguridad adecuadas, etc. Le recomiendo que lea el artículo al que hice referencia anteriormente, y luego decida si solucionar el problema. (No informé los resultados de FAT en ese artículo por razones de espacio, pero el rendimiento de FAT sufrió bastante mal: IIRC, no tanto como ReiserFS, pero al menos tan mal como la mayoría de los otros sistemas de archivos nativos de Linux).

Si decides que quieres arreglarlo /dev/sda1, debes comenzar haciendo una copia de seguridad. Una vez hecho esto, una forma de solucionarlo es eliminarlo, crear una nueva partición en su lugar y restaurar sus archivos. Otra forma (después de realizar una copia de seguridad) es cambiar el tamaño de la partición en GParted. Haga un pequeño cambio en el punto de inicio; cualquier versión reciente de GParted debería redondearse a un múltiplo de 2048 sectores, y estará bien. Mover el punto de inicio de una partición siempre es más arriesgado y lleva más tiempo que mover el punto final. Como la partición tiene un tamaño de solo 19GiB, la operación no debería tomar una cantidad de tiempo ridícula, incluso mover el punto de inicio, pero no será instantánea.

Como nota al margen y antecedentes, solo herramientas bastante antiguas desalinean particiones en discos modernos de formato avanzado. Mi conjetura es que utilizó un instrumento tal (una versión antigua de Linux fdisko DOS FDISK, tal vez) para crear /dev/sda1, a continuación, utiliza una herramienta más moderna (una más reciente fdisk, partedo GParted, tal vez) para crear el resto de las particiones.

Rod Smith
fuente