Краткий ответ? 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, а не к работающему компакт-диску, и попытаться сделать то, что изложено выше. путь.