24

У меня есть флешка, которая должна быть загрузочной, но компьютер не загружается. Я подозреваю, что MBR (Master Boot Record) отсутствует.

Как мне проверить, так ли это, желательно из командной строки в Linux.

3 ответа3

22

Вы можете проверить это с помощью dd и file , например, для /dev/sda:

root@rapunzel:~# dd if=/dev/sda of=/tmp/test count=1 bs=512
1+0 records in
1+0 records out
512 bytes (512 B) copied, 6.1994e-05 s, 8.3 MB/s

Затем у вас есть загрузочный сектор в /tmp/test вы можете спросить файл, что он думает:

root@rapunzel:~# file /tmp/test
/tmp/test: x86 boot sector; partition 1: ID=0x7, starthead 32, startsector 2048, 1850621692 sectors; partition 2: ID=0x17, starthead 254, startsector 2922062850, 8209215 sectors; partition 3: ID=0xfd, starthead 254, startsector 1850623740, 1071439110 sectors, code offset 0x63, OEM-ID "      м", Bytes/sector 190, sectors/cluster 124, reserved sectors 191, FATs 6, root entries 185, sectors 64514 (volumes <=32 MB) , Media descriptor 0xf3, sectors/FAT 20644, heads 6, hidden sectors 309755, sectors 2147991229 (volumes > 32 MB) , physical drive 0x7e, dos < 4.0 BootSector (0x0)

Вы также можете проверить файл вручную с помощью hexdump -C

17

поскольку CesarB не опубликовал свой комментарий в качестве ответа:

jcomeau@aspire:~$ sudo file -s /dev/sdb
[sudo] password for jcomeau: 
/dev/sdb: DOS floppy 1440k, DOS/MBR hard disk boot sector
3

Для этого вы можете использовать TestDisk (бесплатный, с открытым исходным кодом и кроссплатформенный). Он может сканировать любой диск, который вы хотите, и анализировать макет раздела (или вы можете указать его, и он попытается найти разделы в выбранном вами стиле макета). TestDisk также может перезаписать MBR на диске выбранным вами.

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