Comando Linux para mirar otras unidades / particiones en la computadora desde un CD en vivo

2

Entonces, la computadora de mi amigo se bloqueó porque el sistema de archivos está dañado. Sin embargo, ella necesita archivos del sistema, por lo tanto, una reinstalación no funcionaría, ya que todavía tenemos una forma de recuperar los archivos.

Mi enfoque para resolver este problema sería arrancar una versión en vivo de Helix (una distribución de Ubuntu) desde un USB, ejecutar el ddcomando para bloquear la copia de la partición de Windows en una unidad externa, y luego usar el principal para recuperar todo lo que podamos.

En cualquier caso, estoy tratando de encontrar el comando en Internet pero fue en vano. ¿Alguien sabe el comando para ver todas las particiones en el disco? Tenga en cuenta que estoy tratando de verlo desde un CD Live Helix.

robjob27
fuente
Usted dice: "... inicie una versión en vivo de Helix (una distribución de Ubuntu) desde un USB ...", pero luego dice "Tenga en cuenta que estoy tratando de verlo desde un CD de Live Helix". Entonces, ¿tiene la intención de crear un USB de arranque desde un CD en vivo?
JakeGould
Sí, creé un USB de arranque desde un CD en vivo para ejecutar en la computadora defectuosa porque no quería sacar el disco duro ya que anularía la garantía pero necesitaba acceder a los discos.
robjob27

Respuestas:

1

La respuesta corta? Linux, en sí mismo, se puede utilizar para hacer lo que está intentando hacer. El comando más básico para enumerar dispositivos y particiones a nivel de bloque es, lsblkpero también puede interpretar la salida de cat /proc/partitionssi no lo ha lsblkinstalado. Pero tal vez necesite buscar un CD en vivo apropiado para tales propósitos. Este Runtime Live CD parece que funcionaría bien. Lo mismo ocurre con este CD de Ubuntu Rescue Remix . Pero si conecta la unidad a una configuración real de Linux.

¿La respuesta más larga? Escribí esta larga explicación sobre cómo detectar dispositivos de nivel de bloque conectados y montarlos en caso de que usted, o alguien más, quiera seguir esta ruta. Siento que siempre es mejor saber cómo funcionan los aspectos básicos de cómo funciona un sistema cuando se trata de cosas tan potencialmente difíciles como la recuperación de datos.

Así que creo que el comando básico de Linux / Unix que está buscando es ver todas las particiones en un dispositivo lsblk; Lista de dispositivos de bloqueo. Por ejemplo, esta es la salida de lsblkuna máquina virtual Ubuntu Linux que uso para el desarrollo y las pruebas:

NAME                          MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda                             8:0    0    32G  0 disk 
├─sda1                          8:1    0   243M  0 part /boot
├─sda2                          8:2    0     1K  0 part 
└─sda5                          8:5    0  31.8G  0 part 
  ├─sandbox--vg-root (dm-0)   252:0    0  27.8G  0 lvm  /
  └─sandbox--vg-swap_1 (dm-1) 252:1    0     4G  0 lvm  [SWAP]
sr0                            11:0    1  1024M  0 rom  

Esto puede parecer confuso, pero si comprende que le muestra una lista de dispositivos y particiones en ellos, puede interpretar más fácilmente lo que está sucediendo. Por ejemplo, al mirar este resultado, puede ver que sda5tiene dos particiones distintas: sandbox--vg-root/ dm-0y sandbox--vg-swap_1/ dm-1. Como sandbox--vg-root/ dm-0es la mayor de las dos particiones, podemos asumir con seguridad que es la partición principal. Y si quisiera recuperar datos de sandbox--vg-root/ dm-0, podría montar eso en Linux ejecutando un comando de montaje.

Ahora, digamos que lsblkno es una herramienta instalada en su CD en vivo. Entonces no hay problema: simplemente mira directamente la lista de particiones disponibles ejecutando este comando:

cat /proc/partitions

Y el resultado de ejemplo de mi máquina virtual de prueba de Ubuntu Linux es el siguiente:

  11        0    1048575 sr0
   8        0   33554432 sda
   8        1     248832 sda1
   8        2          1 sda2
   8        5   33302528 sda5
 252        0   29106176 dm-0
 252        1    4194304 dm-1

Ahora, en este caso, no está tan claro eso dm-0y dm-1, pero es justo suponer que son particiones que está buscando deduciendo que siguen directamente sda5y el tamaño total de sda5refleja la suma de dm-0y dm-1.

Una vez hecho esto, ahora sabemos que nos gustaría montar sandbox--vg-root/ dm-0. Y en el caso de un entorno de Linux grabable, haría algo como esto. Primero, cree un directorio en el que se montaría el volumen; esto crearía ~/recover_mounten su directorio de inicio:

mkdir ~/recover_mount/

Y luego montarías el dispositivo de ~/recover_mount/esta manera:

sudo mount /dev/dm-0 ~/recover_mount/

Una vez hecho esto, si ejecutó ls -la ~/recover_mount/, podrá acceder a todos los contenidos de la partición principal en esa unidad con facilidad.

Pero todo esto supone que está montando una partición Linux desde otra máquina Linux. Si está en Linux pero quiere montar una partición de Windows, puede ser más complicado. En el mejor de los casos, podemos suponer que el disco de Windows es NTFS, por lo que se puede montar así:

sudo mount -t ntfs /dev/dm-0 ~/recover_mount/

Tenga en cuenta la -tconfiguración de ntfs. O quizás necesites cambiar eso para que te ntfs-3gguste esto:

sudo mount -t ntfs-3g /dev/dm-0 ~/recover_mount/

Pero, sobre todo, su Live CD de Linux necesitaría tener soporte NTFS. La mayoría de los núcleos modernos lo hacen por defecto. Pero, sinceramente, si se toma en serio la recuperación de datos en un caso como este, podría ser mejor quitar la unidad de disco de la máquina Windows y conectarla a un sistema Linux que funcione, no un CD en vivo, e intentar hacer lo que se ha descrito camino.

JakeGould
fuente
1
Wow, muchas gracias por tu respuesta bien explicada. Desafortunadamente, la distribución Helix que usé (HelixR12009) no tenía los permisos correctos para escribir en una unidad externa (pasé muchas horas tratando de resolver eso). Así que en realidad desechamos esta idea, creamos un USB de arranque de unbuntu, usamos el comando dd para realizar una copia a nivel de bloque en un disco duro externo, luego conectamos el mismo disco duro externo a una máquina con Windows y descargamos software de recuperación de datos gratuito para usar en ese externo manejar. Y eso realmente funcionó para nosotros.
robjob27
Y lo siento, no puedo votar esta respuesta, no tengo un representante lo suficientemente alto.
robjob27
@ user1342086 Feliz de que esto haya funcionado para usted y haya podido solucionarlo por su cuenta. Y no hay necesidad de disculparse por el voto positivo; cuando tengas suficiente representante, recuerda esta respuesta y vota si crees que te ayudó. Y si fue la respuesta la que le ayudó a resolver el problema, recuerde marcarlo como tal.
JakeGould