Dar sentido a las tablas de partición


17

Esto es salida de fdisk:

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1            2048   419424255   209711104   83  Linux
/dev/sda2       419424256  1258291199   419433472   83  Linux
/dev/sda3      1258291200  1300236287    20972544    f  W95 Ext'd (LBA)
/dev/sda4   *  1300236288  1709836287   204800000    7  HPFS/NTFS/exFAT
/dev/sda5      1258293248  1275062271     8384512   82  Linux swap / Solaris

Y esto es salida de cfdisk:

Name         Flags       Part Type   FS Type           [Label]         Size (MB)
--------------------------------------------------------------------------------
                                     Unusable                               1.05  *
sda1                      Primary    ext4                              214744.18  *
sda2                      Primary    ext4                              429499.88  *
sda5         NC           Logical    swap                                8586.79  *
                          Logical    Free Space                         12889.10  *
sda4         Boot         Primary    ntfs                              209715.20  *
                                     Unusable                          124768.71  *

Se supone que tengo 2 particiones Linux, 1 partición extendida de Windows de aproximadamente 20 GB con una partición lógica de intercambio de 8 GB y aproximadamente 130 GB de espacio sin particiones.

Como si no fuera suficiente, la salida de gpartedtambién es algo diferente. ingrese la descripción de la imagen aquí

Estoy confundido con los resultados que publiqué aquí.

  1. ¿Por qué se /dev/sd4marca como arrancable si inicio en GRUB2?
  2. ¿Qué es / dev / sda3? ¿Cuál es su tipo (primario / lógico)? ¿Por qué no se muestra en cfdisk?
  3. ¿Por qué ese espacio libre (supongo 124768 in cfdisk) está marcado como inutilizable?
  4. ¿Qué significa la bandera NC en la cfdiskpartición de intercambio?

Respuestas:


26

¿Por qué se marca / dev / sd4 como arrancable si inicio en GRUB2?

El arranque es una bandera en el MBR (en realidad un byte que se compara con 0x80). Esa entrada está marcada como de arranque. Un gestor de arranque 'tradicional' lee el MBR, busca una entrada con el indicador de arranque y le pasa el control. Como está utilizando grub, hace algo completamente diferente, ya que utiliza su archivo de configuración. Pero las herramientas le dicen cómo se configuran las particiones (en realidad, es posible que tenga un gestor de arranque en el MBR que lo lleve a / dev / sda4 y grub2 instalado allí).

¿Qué es / dev / sda3? ¿Cuál es su tipo (primario / lógico)? ¿Por qué no se muestra en cfdisk?

/ dev / sda3 es una partición primaria de tipo partición extendida . Es una partición utilizada como contenedor para otras particiones. gparted lo muestra bastante bien en su gráfico.

Podría argumentar si en realidad es una partición o no, por un lado, ocupa un espacio en el MBR, por otro lado, es un contenedor de particiones , no coloca un sistema de archivos allí.

Las herramientas de partición los tratan especialmente, por lo que cfdisk parece preferir no mostrarlo. fdisk, por ejemplo, tampoco permite algunas acciones en esas particiones.

¿Por qué ese espacio libre (supongo 124768 en cfdisk) está marcado como inutilizable?

Creo que esos son los 116.20 GiB mostrados por gparted al final

Solo puede tener hasta 4 particiones primarias (contando la partición extendida). Eso proviene de la cantidad de ranuras al final del MBR. Como ya tiene 4 de ellos, ese espacio no asignado al final no puede dividirse (no puede colocar una partición lógica allí, ya que solo puede tener una única partición extendida, y será contigua).

Sus opciones (fáciles) para usar ese espacio serían:

  • extender / dev / sda4 para usarlo
  • extienda / dev / sda3 para incluir / dev / sda4 (y preferiblemente también hasta el final del disco) y haga / dev / sda4 una partición lógica

¿Qué significa la bandera NC en cfdisk para la partición de intercambio?

Citando la página de manual de cfdisk : "Los indicadores pueden ser Boot, que designa una partición de arranque, o NC, que significa" No compatible con DOS u OS / 2 "". No es algo de qué preocuparse


11

Comencemos ...

  1. Está marcado como de arranque, para que Windows pueda cargar su cargador de arranque desde él. Aunque Grub puede cargar primero, se "cargará en cadena" en el cargador de arranque de Windows, si Windows se selecciona de la lista. Para que se ejecute el cargador de arranque de Windows, debe estar en una partición de arranque (¿Alguien podría verificar esto por mí? Nunca he intentado eliminar el indicador de arranque en una instalación de Windows 7 ...)

  2. SDA3 es en realidad una partición extendida . Su disco está formateado como MBR , en lugar de GPT . Una de las restricciones es que MBR solo puede tener hasta 4 particiones primarias . Para evitar esto, puede usar una partición primaria extendida, para luego crear múltiples particiones lógicas más pequeñas dentro (obteniendo más de 4 particiones).

  3. Debido a la limitación de MBR, no puede crear una quinta partición primaria fuera de la partición lógica extendida . Esto es normal. Si extiende la Partición Extendida, entonces debería poder crear una nueva partición dentro de ella y usar el resto de su disco.

  4. De las páginas del manual de cfdisk :

Las banderas pueden ser Boot , que designa una partición de arranque o NC , que significa "No compatible con DOS u OS / 2".


No hay problema. Estaba publicando la (s) misma (s) respuesta (s), y esa fue la única que no diste mejor que yo. ;)
Ƭᴇcʜιᴇ007

3

Las particiones 1 a 4 son, por convención, "físicas" (eran el único tipo disponible en aquellos tiempos). Así que tienes:

Device    Boot      Start         End      Blocks   Id  System
/dev/sda1            2048   419424255   209711104   83  Linux
/dev/sda2       419424256  1258291199   419433472   83  Linux
/dev/sda3      1258291200  1300236287    20972544    f  W95 Ext'd (LBA)
/dev/sda4   *  1300236288  1709836287   204800000    7  HPFS/NTFS/exFAT

/dev/sda5      1258293248  1275062271     8384512   82  Linux swap / Solaris

... sda1es físico, Linux. sda2es físico, Linux nuevamente. sda3es una partición lógica donde pueden residir otras particiones (5 en adelante). Finalmente, sda4hay una partición de Windows, marcada como de arranque, creo que solo a Windows le importa eso. GRUB2 con mucho gusto arrancará la partición que desee, pero Windows quiere estar en una partición de arranque.

Ahora, dentro de la partición lógica sda3, que cfdiskno se muestra como tal, hay el equivalente de más particiones físicas. Solo en este caso sda5.

Y dado que sda3va del sector 1258M al sector 1300M, pero sda5solo los usa hasta 1275M, los sectores 1275062272 a 1300236287 son gratuitos (pero asignables a sda6).

Finalmente, su sda4(la última partición física posible: el MBR solo tiene cuatro) no se llena hasta el final del disco. Deja unos 116 Gb de descuento. Ese espacio es inutilizable porque no puede crear una partición física para cubrirlo (la partición extendida sda3no puede crecer, porque su extensión está "bloqueada" por sda4):

[SDA3...(sda5)...| FREE    ][...sda4...][ UNREACHABLE SPACE ]end-of-disk

Soluciones para recuperar el espacio no disponible

Ninguno indoloro, me temo. Dependiendo de la geometría, puede eliminar sda4y anotar sus límites. Luego crezca sda3para incluir todo el disco (mismo inicio, 1258291200, pero termine hasta el final del disco), o elimínelo y vuelva a crearlo con el mismo inicio y el máximo final. Ahora puede crear una partición en su sda6interior sda3y hacer que termine en el cilindro justo antes del sector 1300236288. Esto ocupará el espacio libre que queda actualmente en el existente sda3. Finalmente, crea una partición en el interior sda3, y lo hará sda7, diciéndole al sistema que se extiende desde 1300236288 a 1709836287 y es de tipo 7.

Si no formatea esa partición, el contenido permanecerá como está y es una partición de Windows válida. Es

Por supuesto, si las cosas salen mal, puede perder todos sus datos. Las particiones físicas (como la de Windows es ahora sda4) y las particiones físico-lógicas internas (como sería una vez que se convirtió sda7) no necesariamente se mezclan; algunas herramientas se negarán a crearlas. Sugeriría hacer una prueba en un disco virtual del mismo tamaño, creado dentro de un archivo disperso (el archivo en sí solo tendría unos pocos gigabytes) o en un disco externo.

Otra forma, tal vez más segura, es eliminar sda5(es solo cambiar) y sda3mover los sda4parámetros a sda3(esto puede implicar eliminar sda4y recrear sda3con los sda4parámetros antiguos ), y esto dejará la sda4ranura libre (y un "agujero" en el medio del disco). La mayoría de las BIOS permiten tablas de partición fuera de secuencia. Nuevamente, esto no debería requerir copiar nada. sda4ahora se convierte sda3y sigue siendo una partición física, por lo que su geometría debería estar mejor de acuerdo con los supuestos de una herramienta de partición.

Por supuesto que la recomendada camino y más seguro (y más lento) de todos es hacer copias de seguridad todas las particiones, cambiar el formato a todos , y restaurarlos después de haber "reposicionado" de manera adecuada, con la partición extendida pasado y que ocupa todo el disco duro restante. Esto eliminará el espacio libre dentro de sda3 y recuperará el espacio no disponible al final, sin riesgos (si la copia de seguridad se realiza correctamente, verifíquela después de hacer una copia de seguridad. Una vez hice una copia de seguridad en un disco externo defectuoso, que murió en mí al restaurar. No fue divertido en absoluto).


0

Además de lo que ya se dijo sobre el significado de todo esto, creo que la solución más indolora sería tener el espacio de intercambio en el área grande al final y agregar el espacio vacío en el medio a su /home.

Para hacerlo, tienes que

  • elimine su archivo de intercambio tan pronto como no se use, y también la partición extendida que lo contiene
  • extienda su sda2para incluir el espacio vacío completo después (tendrá que eliminarlo y volver a crearlo).
  • vuelva a crear la partición extendida para sentarse después sda3y úsela para mantener tantas particiones como desee (bueno, dentro de ciertos límites).

Esto se hace más fácilmente cfdisk, ya que maneja la partición extendida dinámicamente. Pero tenga cuidado de sda2mantener su LBA inicial, ya que de lo contrario perderá su contenido.

Después de extender el tamaño de la partición, debe cambiar el tamaño del sistema de archivos incluido para aprovechar todo el espacio.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.