ฉันมีแท่ง USB ที่ควรจะสามารถบู๊ตได้ แต่คอมพิวเตอร์ไม่สามารถบู๊ตได้ ฉันสงสัยว่าไม่มี MBR (Master Boot Record)
ฉันจะทดสอบได้อย่างไรว่าเป็นเช่นนั้นโดยเฉพาะอย่างยิ่งจากบรรทัดคำสั่งใน Linux
ฉันมีแท่ง USB ที่ควรจะสามารถบู๊ตได้ แต่คอมพิวเตอร์ไม่สามารถบู๊ตได้ ฉันสงสัยว่าไม่มี MBR (Master Boot Record)
ฉันจะทดสอบได้อย่างไรว่าเป็นเช่นนั้นโดยเฉพาะอย่างยิ่งจากบรรทัดคำสั่งใน Linux
คำตอบ:
คุณสามารถตรวจสอบสิ่งนี้ด้วย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
จากนั้นคุณก็มี bootsector อยู่ใน/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
/dev/sdb1: x86 boot sector
แต่ไม่มีอะไรอื่น? ในกรณีของฉันมันจะไม่บูต ...
dd
ไอเอ็นจีภาพไปยังไดรฟ์ USB of=/dev/sdb
ในกรณีของฉันจำเป็นต้องใช้ /dev/sdb1
มันไม่ได้ทำงานร่วมกับ
เนื่องจากCesarBไม่ได้โพสต์ความคิดเห็นของเขาเป็นคำตอบ:
jcomeau@aspire:~$ sudo file -s /dev/sdb
[sudo] password for jcomeau:
/dev/sdb: DOS floppy 1440k, DOS/MBR hard disk boot sector
คุณสามารถใช้TestDisk (ฟรีโอเพนซอร์สและข้ามแพลตฟอร์ม) เพื่อทำสิ่งนี้ มันสามารถสแกนไดรฟ์ที่คุณต้องการและวิเคราะห์เลย์เอาต์พาร์ติชั่น (หรือคุณสามารถระบุมันและมันจะพยายามค้นหาพาร์ติชั่นในสไตล์เลย์เอาต์ที่คุณเลือก) TestDisk ยังสามารถเขียนทับ MBR บนดิสก์ด้วยที่คุณเลือก
dd
file -s /dev/sda