Вопрос или проблема
Как распаковать файл .bin
, содержащий загрузочный сектор DOS/MBR. Я запустил binwalk
и он показал мне (примерные) местоположения данных и их типы. Вывод команды file
:
chromeos_15393.58.0_reven_recovery_stable-channel_mp-v2.bin: загрузочный сектор DOS/MBR; раздел 1: ID=0xc, активный, начальный-CHS (0x16,176,27), конечный-CHS (0x1e,216,58), начальный сектор 364544, 131072 секторов; раздел 2: ID=0xee, начальный-CHS (0x0,0,2), конечный-CHS (0x0,0,2), начальный сектор 1, 1 сектор
Исходя из этой информации, я понял, что это загрузочный сектор, но где файлы и как их получить. Для справки, это ChromeOS на основе Android (а Android основан на Linux), ZIP с .bin
находится здесь.
Ответ или решение
Чтобы распаковать файл, содержащий загрузочный сектор DOS/MBR, вам потребуется несколько инструментов и шагов. В этом ответе я постараюсь объяснить процесс подробно.
Шаги для распаковки файла загрузочного сектора
-
Используйте инструмент
binwalk
: Вы уже использовалиbinwalk
, что является правильным первым шагом. Этот инструмент анализирует двоичные файлы и определяет возможные структуры файловых систем и встроенные файлы. Вы можете использовать следующую команду для дальнейшего анализа:binwalk -e chromeos_15393.58.0_reven_recovery_stable-channel_mp-v2.bin
Опция
-e
(или--extract
) попытается извлечь найденные файлы и сохранить их в специальную директорию. -
Проверьте результаты выполнения
binwalk
: После выполнения команды вы должны увидеть, что в текущей директории появится новая папка, например,chromeos_15393.58.0_reven_recovery_stable-channel_mp-v2.bin.extracted
, в которой будут расположены извлеченные файлы и информация о них. -
Работа с разделами: Из вывода команды
file
видно, что в вашем .bin файле есть два раздела. Первый раздел (ID=0xc) является активным, а второй (ID=0xee) — это конечный раздел (обычно зарезервирован для информации о разделе):- Первый раздел (ID=0xc): содержит файловую систему. Необходимо извлечь его содержимое, чтобы получить доступ к файлам.
- Второй раздел (ID=0xee): обычно содержит информацию о загрузке, и его извлечение не всегда необходимо.
-
Использование
dd
для извлечения первого раздела: Вы можете использовать командуdd
, чтобы извлечь данные из первого раздела. Для этого вам нужно будет указать смещение (startsector) и размер (количество секторов):dd if=chromeos_15393.58.0_reven_recovery_stable-channel_mp-v2.bin of=partition1.img bs=512 skip=364544 count=131072
Здесь
if
— это входной файл,of
— файл для выхода (в котором будет содержимое первого раздела),bs=512
— размер блока,skip=364544
— это смещение в секторах, аcount=131072
— количество секторов для извлечения. -
Анализ извлеченного раздела: После того как вы создали файл
partition1.img
, можно использоватьbinwalk
для анализа и извлечения его содержимого:binwalk -e partition1.img
-
Извлечение файлов: После выполнения этой команды вы должны увидеть, что файлы в разделе были успешно извлечены в соответствующую директорию. Перейдите в созданную папку и проверьте доступные вам файлы.
Заключение
Теперь вы должны иметь возможность получить доступ ко всем файлам из исходного .bin файла, содержащего загрузочный сектор DOS/MBR. Если возникнут дополнительные вопросы по ходу работы, не стесняйтесь спрашивать. Успехов!