2

Таким образом, компьютер моего друга сломался, потому что файловая система повреждена. Однако ей нужны файлы из системы, поэтому переустановка не сработает, так как у нас все еще есть способ восстановить файлы.

Мой подход к решению этой проблемы состоял бы в том, чтобы загрузить живую версию Helix (дистрибутива Ubuntu) с USB, выполнить команду dd чтобы заблокировать копирование раздела Windows на внешний диск, а затем использовать, прежде всего, для восстановления столько, сколько мы можем ,

В любом случае я пытаюсь найти команду в интернете, но безрезультатно. Кто-нибудь знает команду для просмотра всех разделов на диске? Имейте в виду, что я пытаюсь просмотреть его с компакт-диска Live Helix.

1 ответ1

1

Краткий ответ? Linux - сам по себе - может использоваться для того, что вы пытаетесь сделать. Наиболее простой командой для вывода списка устройств и разделов на уровне блоков является lsblk но вы также можете интерпретировать вывод cat /proc/partitions если у вас не установлен lsblk . Но, возможно, вам нужно найти подходящий live CD для таких целей. Кажется, что этот Live Run CD работает хорошо. То же самое с этим компакт-диском Ubuntu Rescue Remix . Но если вы подключите сам привод к реальной установке Linux.

Чем дольше ответ? Я написал это длинное объяснение о том, как обнаруживать подключенные блочные устройства и монтировать их на тот случай, если вы или кто-то еще захотите пойти по этому пути. Я чувствую, что всегда лучше знать, как работают основные принципы работы системы при работе с вещами, настолько сложными, как восстановление данных.

Поэтому я считаю, что основная команда Linux/Unix, которую вы ищете, состоит в том, чтобы просмотреть все разделы на устройстве:lsblk ; список блочных устройств. Например, это вывод lsblk на виртуальную машину Ubuntu Linux, которую я использую для разработки и тестирования:

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  

Это может показаться странным, но если вы понимаете, что показывает список устройств, а также разделы на них, вы можете легче интерпретировать происходящее. Например, глядя на этот вывод, вы видите, что в sda5 есть два разных раздела: sandbox--vg-root/dm-0 и sandbox--vg-swap_1/dm-1 . Поскольку sandbox--vg-root/dm-0 - самый большой из двух разделов, мы можем смело предположить, что это основной раздел. И если бы я хотел восстановить данные из sandbox--vg-root/dm-0 , я мог бы смонтировать это в Linux, выполнив команду mount.

Теперь предположим, что lsblk не установлен на вашем live CD. Тогда нет проблем: тогда просто посмотрите на список доступных разделов, выполнив эту команду:

cat /proc/partitions

И пример вывода с моей тестовой виртуальной машины Ubuntu Linux выглядит следующим образом:

  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

Теперь в этом случае не так ясно, что dm-0 и dm-1 , но справедливо предположить, что они являются разделами, которые вы ищете, полагая, что они следуют непосредственно за sda5 а общий размер sda5 отражает сумму dm-0 и dm-1 .

После этого мы теперь знаем, что нам нужно смонтировать sandbox--vg-root/dm-0 . А в случае среды Linux с возможностью записи вы могли бы сделать что-то подобное. Сначала создайте каталог, к которому будет подключен том; это создаст ~/recover_mount в вашем домашнем каталоге:

mkdir ~/recover_mount/

А затем вы должны смонтировать устройство в ~/recover_mount/ следующим образом:

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

После этого, если вы ls -la ~/recover_mount/ , вы сможете легко получить доступ ко всему содержимому основного раздела на этом диске.

Но это все при условии, что вы монтируете раздел Linux с другого компьютера Linux. Если вы работаете в Linux, но хотите смонтировать раздел Windows, это может оказаться сложнее. В лучшем случае мы можем предположить, что диск Windows является NTFS, поэтому его можно монтировать следующим образом:

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

Обратите внимание на параметр -t ntfs . Или, возможно, вам нужно изменить это на ntfs-3g следующим образом:

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

Но больше всего ваш Linux live CD должен иметь поддержку NTFS. Большинство современных ядер делают по умолчанию. Но, честно говоря, если вы серьезно относитесь к восстановлению данных в таком случае, возможно, лучше вынуть диск из машины с Windows и подключить его к работающей системе Linux, а не к работающему компакт-диску, и попытаться сделать то, что изложено выше. путь.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .