Mi escritorio tiene un (y único) disco duro de 3 TB con 5 particiones: 1. EFI, 2. Windows 7 SP1 (64 bits), 3. Partición HP Factory Recovery, 4. NTFS para almacenamiento de datos y 5. Ubuntu 18.04. .2 (64 bits). GRUB (v.2.02) es el gestor de arranque.
Siempre que inicio Windows 7, siempre aparece una advertencia de "tabla de particiones secundarias que se superpone a la última partición en 4.294.966.385 bloques" y el último sector utilizable se restablece a 1.565.565.838 (que precede al último sector 5.860.533.168 del disco duro demasiado pronto). ). La misma advertencia sigue apareciendo, ya sea que dejé que Windows 7 lo arreglara o lo arreglé con gparted en Ubuntu.
Las preguntas que solicito de su amable ayuda son dos:
¿Existe alguna solución o forma de evitar que Windows 7 restablezca incorrectamente el GPT secundario durante el proceso de carga de Windows?
La mala ubicación del GPT secundario hace que algunos de mis archivos ahora tengan cero bytes de tamaño. ¿Hay alguna forma de restaurar estos archivos, ya que su contenido todavía está ahí?
A continuación se muestran los mensajes de error detallados:
(1. Fase de Ubuntu)
Digamos que el último sistema operativo de arranque es Ubuntu, y Gparted y Gdisk no detectan ningún error de partición.
(2. Fase de Windows)
Reinicie. Durante la carga de Windows 7 y antes de mostrar el escritorio de Windows, dice:
Checking file system on E:
The type of the file system is NTFS.
Volume label is NTFS_DATA
One of your disks needs to be checked for consistency. You
may cancel the disk check, but it is strongly recommended
that you continue. To skip disk checking, press any key...
Continúo y termino la comprobación del disco recomendada. Después de ingresar a Windows, ejecuto CHKDSK.exe para verificar los discos nuevamente y no obtengo ningún informe de error. (Por cierto, encontré que algunos archivos ahora tienen cero bytes de tamaño como resultado de la verificación del disco durante la fase de carga de Windows).
Abro la Administración de discos de Windows. Puede reconocer correctamente la capacidad total del disco duro como 2794,52 GB. También puede reconocer todas las particiones excepto la última (porque la última es ext4).
Sin embargo, ejecuto gdisk64.exe (la versión de Windows de 64 bits de GPT fdisk) y aparece una advertencia:
c:\gdisk>gdisk64 -l 0:
GPT fdisk (gdisk) version 1.0.4
The protective MBR's 0xEE partition is oversized! Auto-repairing.
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Warning! Secondary partition table overlaps the last partition by
4294966385 blocks!
You will need to delete this partition or resize it in another utility.
Disk 0:: 1565565872 sectors, 746.5 GiB
Sector size (logical): 512 bytes
Disk identifier (GUID): xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 1565565838
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)
Number Start (sector) End (sector) Size Code Name
1 2048 206847 100.0 MiB EF00 EFI system partition
2 206848 1925441535 918.0 GiB 0700
3 1925441536 1953521663 13.4 GiB 0700
4 1953523712 5650817023 1.7 TiB 0700
5 5650817024 5860532223 100.0 GiB 8300
Apagué la PC y la inicié nuevamente en Windows 7. No solicita la misma verificación de disco mencionada anteriormente durante la carga de Windows. Después de ingresar a Windows, abro la Administración de discos de Windows, todavía puede reconocer correctamente la capacidad total del disco duro y las particiones. Sin embargo, gdisk64.exe todavía informa la misma advertencia para la tabla de particiones secundaria que se superpone a la última partición en 4.294.966.385 bloques, y el último sector utilizable es 1.565.565.838, que precede al sector final de la última partición (5.860.532.223) demasiado pronto.
(3. Fase de Ubuntu)
Reiniciar. En Ubuntu 18.04.2, abro gdisk y fdisk en la Terminal. Confirman que existe el mismo problema:
$ sudo gdisk -l /dev/sda
GPT fdisk (gdisk) version 1.0.3
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Warning! Secondary partition table overlaps the last partition by
4294966385 blocks!
Try reducing the partition table size by 17179865540 entries.
(Use the 's' item on the experts' menu.)
Disk /dev/sda: 5860533168 sectors, 2.7 TiB
Model: TOSHIBA DT01ACA3
Sector size (logical/physical): 512/4096 bytes
Disk identifier (GUID): xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 1565565838
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)
Number Start (sector) End (sector) Size Code Name
1 2048 206847 100.0 MiB EF00 EFI system partition
2 206848 1925441535 918.0 GiB 0700
3 1925441536 1953521663 13.4 GiB 0700
4 1953523712 5650817023 1.7 TiB 0700
5 5650817024 5860532223 100.0 GiB 8300
$ sudo fdisk -l /dev/sda
Disk /dev/sda: 2.7 TiB, 3000592982016 bytes, 5860533168 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
Disklabel type: gpt
Disk identifier: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Device Start End Sectors Size Type
/dev/sda1 2048 206847 204800 100M EFI System
/dev/sda2 206848 1925441535 1925234688 918G Microsoft basic data
/dev/sda3 1925441536 1953521663 28080128 13.4G Microsoft basic data
/dev/sda4 1953523712 5650817023 3697293312 1.7T Microsoft basic data
/dev/sda5 5650817024 5860532223 209715200 100G Linux filesystem
Abro gparted y aparece un mensaje de advertencia:
Not all of the space available to /dev/sda appears to be
used, you can fix the GPT to use all of the space (an extra
4294967296 blocks) or continue with the current setting?
[Fix] [Ignore]
Elijo dejar que gparted arregle el GPT. Luego ejecuto gdisk nuevamente y no da ninguna advertencia. El error se solucionó y el último sector utilizable es 5.860.533.134:
$ sudo gdisk -l /dev/sda
GPT fdisk (gdisk) version 1.0.3
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 5860533168 sectors, 2.7 TiB
Model: TOSHIBA DT01ACA3
Sector size (logical/physical): 512/4096 bytes
Disk identifier (GUID): xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 5860533134
Partitions will be aligned on 2048-sector boundaries
Total free space is 4973 sectors (2.4 MiB)
Number Start (sector) End (sector) Size Code Name
1 2048 206847 100.0 MiB EF00 EFI system partition
2 206848 1925441535 918.0 GiB 0700
3 1925441536 1953521663 13.4 GiB 0700
4 1953523712 5650817023 1.7 TiB 0700
5 5650817024 5860532223 100.0 GiB 8300
Reinicio la PC y vuelvo a iniciar Ubuntu. gdisk y gparted no detectan ningún error de GPT.
(4. Fase de Windows)
Luego intento iniciar Windows 7. Lo que sucedió en la Fase de Windows mencionada anteriormente vuelve a suceder. Al iniciar Windows, realiza una "Comprobación del sistema de archivos en E:" y solicita una comprobación de coherencia del disco. Después de eso, tanto chkdsk como Disk Management muestran resultados normales sin ninguna advertencia, pero gdisk64 sigue informando una y otra vez la misma advertencia para la tabla de particiones secundarias que se superpone a la última partición en 4.294.966.385 bloques. El último sector utilizable vuelve a ser 1.565.565.838 y precede al último sector del disco (5.860.533.168) demasiado pronto, aunque gparted lo arregló y lo configuró en 5.860.533.134 en el último reinicio (fase de Ubuntu).
Creo que el problema fundamental aquí aparentemente radica en que Windows 7 configura un GPT secundario/de respaldo en un punto medio del disco duro en lugar de dejar que la copia de seguridad permanezca después de la última partición. Como sé, el "último sector utilizable" es donde comienza el GPT secundario/de respaldo. El disco duro tiene 5.860.533.168 sectores en total. El último sector utilizable es 5.860.533.134 después de la corrección de gparted, pero vuelve a ser 1.565.565.838 después del proceso de carga de Windows 7. El hecho de que mi Windows 7 (SP1, 64 bits) pueda reconocer la capacidad total del disco duro en la Administración de discos no ayuda en sí mismo evita restablecer el GPT de respaldo en un lugar incorrecto. Sé cómo restablecer el GPT secundario a donde debería estar, pero no sé cómo evitar que mi Windows 7 lo extravíe durante la fase de carga del sistema operativo.
A continuación están mis preguntas: La mala ubicación del GPT secundario hace que algunos de mis archivos ahora tengan cero bytes de tamaño. ¿Hay alguna forma de restaurar estos archivos, ya que su contenido todavía está ahí?
¿Existe alguna manera de evitar que Windows 7 restablezca incorrectamente el GPT secundario durante el proceso de carga de Windows?
Por favor ayuda.
Respuesta1
5860533168
(Ubuntu lo ve) es el número real de sectores lógicos. Esto necesita 33 bits y si intenta almacenarlo en 32 bits, el bit más significativo se perderá y el número se convertirá en 1565565872
(Windows lo usa).
Parece que su Windows (o algunas partes de él) usa 32 bits donde debería usar más. Windows y Ubuntu luchan sobre dónde debe colocarse la tabla de particiones secundaria. Ubuntu tiene razón.
Según Microsoft[énfasis mío]:
Microsoft ha investigado cómo Windows admite estos discos de gran tamaño. Los resultados revelan varios problemas que se aplican a todas las versiones de Windows anteriores y posteriores.incluido Windows 7 con Service Pack 1y Windows Server 2008 R2 con Service Pack 1.
Hasta este punto, se sabe que ocurre el siguiente comportamiento incorrecto cuando Windows maneja una capacidad de almacenamiento de disco único superior a 2 TB:
- La capacidad numérica más allá de 2 TB se desborda. Esto da como resultado que el sistema solo pueda abordar la capacidad superior a 2 TB. Por ejemplo, en un disco de 3 TB, la capacidad disponible puede ser sólo de 1 TB.
- La capacidad numérica superior a 2 TB se trunca. Esto da como resultado no más de 2 TB de espacio direccionable. Por ejemplo, en un disco de 3 TB, la capacidad disponible puede ser sólo de 2 TB.
- El dispositivo de almacenamiento no se detecta correctamente. En este caso, no se muestra ni en las ventanas del Administrador de dispositivos ni en la Administración de discos.
Supongo que te metiste en esta situación al clonar un disco que era lo suficientemente pequeño como para no causar problemas en Windows 7 SP1. Probablemente 1 GB (a juzgar por la ubicación de la partición HP Factory Recovery que estaba al final del disco antiguo).
El sistema de archivos de la partición actual del sistema Windows estaba dañado. Es posible reparar sus estructuras, pero no puedes estar seguro de que la corrupción no afectó a archivos importantes. Incluso si funciona ahora, los archivos corruptos pueden causar problemas en el futuro.
Advertencia: los siguientes procedimientos pueden no ser la mejor solución. Nunca he experimentado tu problema, por lo que nunca he intentado recuperarme de él. Esto es justo lo que yo intentaría. Es posible que desee esperar a que aparezcan otras respuestas (o comentarios).
Si todavía tiene el disco antiguo con datos antiguos y está dispuesto a eliminar cualquier cambio que haya realizado en la copia clonada de Windows, puede proceder de la siguiente manera:
- Desconecte el nuevo disco (para evitar conflictos de UUID), conecte el anterior.
- Inicie el antiguo Windows.
- Instale actualizaciones para que su Windows esté listo para admitir completamente discos de 3 TB. (A pesar deEste artículomenciona "configuraciones del sistema configuradas incorrectamente, entradas irregulares en el Registro o tecnología Intel® Rapid Storage" también pueden interferir).
- Clonar de nuevo. Clonaría sólo la antigua partición de Windows en la partición ya existente en el disco grande; Ubuntu permanecería intacto; Es posible que sea necesario actualizar GRUB o/y la entrada de inicio EFI en el disco grande para iniciar Windows correctamente.
Si no puede volver a su antiguo Windows, puede intentar esto:
- Si es posible, no permita que Windows escriba la tabla de particiones secundaria.
- Ejecute
chkdsk
en el sistema de archivos que contiene Windows (normalmenteC:\
). No estoy seguro de qué tan seguro es esto. Tenga en cuenta que hay una parte de su partición de Windows que se encuentra más allá de lo que Windows cree que es el último sector, por lo que la herramienta puede funcionar correctamente o no. Conexión del disco aotro(completamente actualizado) Windows y ejecutarlochkdsk
allí pueden ser más seguros (pero si desea utilizar una carcasa USB para este propósito, tenga en cuentaalgunos recintos pueden causar problemas). - Instale actualizaciones para que su Windows esté listo para admitir discos de 3 TB.