La partición no aparece en / dev

13

Recientemente desmonté un disco duro de 4TB de una computadora para acceder a los archivos directamente desde otra computadora. Parecía que no había problemas con el proceso de desmontaje. Al conectar el disco duro a la otra computadora, el disco duro se reconoce en "/ dev" como sdb, pero la partición "sdb1" no aparece, por lo tanto no puedo montarlo. Si corro

fdisk -l /dev/sdb


WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sdb: 4000.8 GB, 4000787030016 bytes
255 heads, 63 sectors/track, 486401 cylinders, total 7814037168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Device Boot          Start     End      Blocks      Id  System
/dev/sdb1               1  4294967295  2147483647+  ee  GPT

Aparece la partición sdb1. Como se trata de una partición de 4 TB, también ejecuté el comando

parted /dev/sdb

GNU Parted 2.3
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print                                                            
Model: ASMT 2105 (scsi)
Disk /dev/sdb: 4001GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start  End  Size  File system  Name  Flags

Luego escribió "imprimir". En este caso, la partición sdb1 NO aparece.

¿Por qué hay una falta de coincidencia de información aquí? ¿Esto significa que la partición ha sido eliminada? ¿Hay alguna forma de recuperar esta partición y montarla?

Muchas gracias por adelantado

rmsrms1987
fuente
Hay tres razones por las que esa línea / dev / sdb1 no aparece pero sí / dev / sdb. 1. porque no hay una tabla de particiones en ese disco porque no se creó. 2. La tabla de particiones está dañada o 3. la tabla de particiones alberga un sistema de archivos primario que esta computadora no puede reconocer debido a que las bibliotecas no están instaladas. Remedio: puede ejecutar diagnósticos en la tabla de particiones utilizando fdisk /dev/sdby escribiendo 'p' para obtener más información. Si la partición está allí, y no está dañada, y tiene bibliotecas para analizar y leer, esa línea debería aparecer.
Eric Leschinski

Respuestas:

16

Ejecute el comando partprobepara hacer que la computadora vuelva a escanear el disco en busca de particiones.

Lawrence
fuente
Gracias por la respuesta. Intenté ejecutar ese comando, junto con solo reiniciar toda la computadora sin éxito.
rmsrms1987
¿Cuál es el resultado de fdisk -l /dev/sdb? Además, ¿cuál es el resultado de dmesg?
Lawrence
1
@ rmsrms1987 Esto es extraño ... Está utilizando fdisk en una partición de 4TiB, y parece funcionar bien. Sin embargo, este artículo ibm.com/developerworks/linux/library/l-gpt/index.html explica que MBR no puede manejar particiones de más de 2 TiB (solo GPT), y que fdisk no puede manejar GPT. Esto parece implicar que tiene un MBR en su disco. ¿Podría darnos la salida de fdisk -l / dev / sdb? TY
MariusMatutiae
Creo que la partición se creó con GNU Parted, ya que tiene más de 2 TB, pero no se emite nada cuando intento acceder a través de este método. Por alguna razón, sdb1 solo aparece cuando se usa fdisk.
rmsrms1987
1
He editado mi publicación original para mostrar una salida más detallada del fdisk y salidas separadas. Gracias nuevamente por ayudarme con este problema.
rmsrms1987
3

No sé si esto sigue siendo un problema actualizado, pero tuve el mismo problema con uno de mis discos duros. Lo usé testdisky le dije que analizara el disco. Encontró la partición faltante y actualizó la tabla de partición de discos. Luego ejecuté el comando partprobey la partición apareció en / dev / totalmente funcional.

drags4ck
fuente
Esto parece un duplicado de otra respuesta.
bwDraco
1

Probablemente este no sea su problema, pero tuve un problema con síntomas similares causado por la existencia de un superbloque RAID en la unidad.

Ahora, de acuerdo, quería borrar todo de mi disco de todos modos, por lo que esto no se recomienda si ese no es el caso para usted. Pero mdadm --zero-superblock /dev/sdbhizo el truco para mí en mi caso.

WhittlesJr
fuente
0

¿Nadie había hablado de arrancar desde un LiveCD / LiveUSB moderno que admite GPT?

Simplemente intente arrancar la computadora con una distribución en vivo de cualquier Linux moderno, también intente con el disco en vivo GParted, SystemRescueCD, etc.

Podría ser que la computadora que usó no sea compatible con GPT y / o discos <2TiB, también podría ser el controlador SATA que no admite> disco 2TiB (vi algunos en mis manos, algunos en placas base, algunos en receptáculos USB). .. y tu es 4TiB, eso también es peor, algunos controladores solo admiten hasta tres TiB, pero no 4TiB o más por disco.

¿Por qué ves la partición principal cuando usas fdisk -l? Probablemente esté viendo la partición MBR 'protectora' que protege la / s partición / es GPT; que se almacena en el primer sector del disco ... la mayoría de los controladores SATA que tienen problemas con el disco> 2TiB y también algunos que solo tienen problemas con> 3TiB pueden ver los primeros 2TiB / 3TiB del disco, y así ven el MBR (primer sector) correctamente, pero no GPT, ya que GPT almacena los datos después del MBR y al final del disco.

Intente asegurarse de ambas cosas: tiene compatibilidad GPT (use gfisdk en lugar de fdisk para verificar) y tiene un controlador SATA no limitado a solo <2TiB ni uno limitado a <3TiB.

La mejor manera de verificarlo: Arranque desde cualquier LiveLinux, como GParted, SystemRescueCD, etc. e intente enumerar particiones (con fdisk), las modernas fdisk -lpueden enumerar particiones GPT.

PD: la estructura de los campos MBR limita la zona utilizable a los primeros 2TiB, debido a la longitud de los campos (MBR fue diseñado con esa limitación).

Claudio
fuente
0

Si bien fdisk, dependiendo de la versión, intentará crear una partición en una unidad de 4TB e incluso marcará el tipo de partición como GPT, esa partición no será reconocida por parted.

La solución es eliminar la partición que creó con fdisk y usar parted para hacer todo:

parted /dev/sdb
mklabel gpt
unit TB
mkpart primary 0 3
print
quit

Es posible que deba ejecutar "mkpart primary 0 3TB" en lugar de "mkpart primary 0 3".

En el improbable caso de que no vea / dev / sdb1 después de esto, ejecute partprobe y vuelva a mirar.

bnwww
fuente