Як я скидаю дискові сектори?


11

Я хочу бачити вміст сектора 0 (мбр) мого жорсткого диска. Можливо?

Відповіді:


14

Так, звичайно.

$ dd if=/dev/sda of=mbr bs=512 count=1
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0.000188571 s, 2.7 MB/s

$ stat -c %s mbr
512

$ hd mbr
00000000  eb 48 90 d0 bc 00 7c 8e  c0 8e d8 be 00 7c bf 00  |.H....|......|..|
00000010  06 b9 00 02 fc f3 a4 50  68 1c 06 cb fb b9 04 00  |.......Ph.......|
00000020  bd be 07 80 7e 00 00 7c  0b 0f 85 10 01 83 c5 10  |....~..|........|
00000030  e2 f1 cd 18 88 56 00 55  c6 46 11 05 c6 46 03 02  |.....V.U.F...F..|
00000040  ff 00 00 20 01 00 00 00  00 02 fa 90 90 f6 c2 80  |... ............|
00000050  75 02 b2 80 ea 59 7c 00  00 31 c0 8e d8 8e d0 bc  |u....Y|..1......|
00000060  00 20 fb a0 40 7c 3c ff  74 02 88 c2 52 be 7f 7d  |. ..@|<.t...R..}|
00000070  e8 34 01 f6 c2 80 74 54  b4 41 bb aa 55 cd 13 5a  |.4....tT.A..U..Z|
00000080  52 72 49 81 fb 55 aa 75  43 a0 41 7c 84 c0 75 05  |RrI..U.uC.A|..u.|
00000090  83 e1 01 74 37 66 8b 4c  10 be 05 7c c6 44 ff 01  |...t7f.L...|.D..|
000000a0  66 8b 1e 44 7c c7 04 10  00 c7 44 02 01 00 66 89  |f..D|.....D...f.|
000000b0  5c 08 c7 44 06 00 70 66  31 c0 89 44 04 66 89 44  |\..D..pf1..D.f.D|
000000c0  0c b4 42 cd 13 72 05 bb  00 70 eb 7d b4 08 cd 13  |..B..r...p.}....|
000000d0  73 0a f6 c2 80 0f 84 ea  00 e9 8d 00 be 05 7c c6  |s.............|.|
000000e0  44 ff 00 66 31 c0 88 f0  40 66 89 44 04 31 d2 88  |D..f1...@f.D.1..|
000000f0  ca c1 e2 02 88 e8 88 f4  40 89 44 08 31 c0 88 d0  |........@.D.1...|
00000100  c0 e8 02 66 89 04 66 a1  44 7c 66 31 d2 66 f7 34  |...f..f.D|f1.f.4|
00000110  88 54 0a 66 31 d2 66 f7  74 04 88 54 0b 89 44 0c  |.T.f1.f.t..T..D.|
00000120  3b 44 08 7d 3c 8a 54 0d  c0 e2 06 8a 4c 0a fe c1  |;D.}<.T.....L...|
00000130  08 d1 8a 6c 0c 5a 8a 74  0b bb 00 70 8e c3 31 db  |...l.Z.t...p..1.|
00000140  b8 01 02 cd 13 72 2a 8c  c3 8e 06 48 7c 60 1e b9  |.....r*....H|`..|
00000150  00 01 8e db 31 f6 31 ff  fc f3 a5 1f 61 ff 26 42  |....1.1.....a.&B|
00000160  7c be 85 7d e8 40 00 eb  0e be 8a 7d e8 38 00 eb  ||..}.@.....}.8..|
00000170  06 be 94 7d e8 30 00 be  99 7d e8 2a 00 eb fe 47  |...}.0...}.*...G|
00000180  52 55 42 20 00 47 65 6f  6d 00 48 61 72 64 20 44  |RUB .Geom.Hard D|
00000190  69 73 6b 00 52 65 61 64  00 20 45 72 72 6f 72 00  |isk.Read. Error.|
000001a0  bb 01 00 b4 0e cd 10 ac  3c 00 75 f4 c3 00 00 00  |........<.u.....|
000001b0  00 00 00 00 00 00 00 00  29 b6 ef 39 00 00 00 00  |........)..9....|
000001c0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
000001d0  01 6f 83 fe bf f6 af 35  1b 00 88 d8 9e 00 00 fe  |.o.....5........|
000001e0  ff ff 0f fe ff ff 2a 32  a2 01 97 58 ff 10 00 00  |......*2...X....|
000001f0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 55 aa  |..............U.|
00000200

Дивіться man dd та man hd, як це працює.


І так. Будьте обережні з дд! Не зловживайте sudo; звичайний обліковий запис користувача з груповим diskчленством достатній для читання блоків. Якщо на ньому написано "дозвіл відмовлено", - можливо, ви намагаєтеся перезаписати жорсткий диск, уважно подивіться, що ви робите. Якщо ваш MBR буде стертий, ви втратите таблицю розділів. Його буде важко відновити (хоч і не неможливо). Уважно стежте за своїм жорстким диском: /dev/sdaне плутайте з /dev/sda1або /dev/sdb. Будьте обережні і не поспішайте. Прочитайте man dd. Удачі.


@ulidtko: +1, хороша відповідь, я зробив інший шлях: sudo cat / dev / sda> mydump, ctrl + c, sudo ghex mydump. Як ви вважаєте, чи є сенс?
Тимофей

1
@ulidtko: Хм, дивно сказати, що "не використовуйте sudo ... достатньо регулярного облікового запису користувача". Я думаю, що це вже ВЕЛИЧЕЗА безпека, якщо користувач може прочитати вміст диска через / dev / entry, тоді (і) він може прочитати будь-які файли тощо, що було б неможливо через файлову систему через проблеми з дозволом. Якщо він працює для вас у вашій системі як звичайний користувач: занадто погано ... У моїй системі / dev / sda не може бути прочитаний звичайним користувачем, якщо тільки вони не належать до групи "дисків" ... Але ні від «звичайного користувача» , який на самому справі небезпечно, знову!
ЛГБ

1
@LGB: він каже, що не зловживайте судо :-)
Тимофей

1
@ulidtko: гаразд, добре, хоча я навіть видалив себе з групи дисків, це може бути небезпечно, якщо хтось якимось чином зламається з моїм користувачем, повний доступ може бути зроблений для диска ... І про "не зловживання судо": гаразд, моя англійська далеко не ідеальна, час від часу трапляється, що я щось пропускаю, щоб усвідомити речення, вибачте за це!
ЛГБ

1
@ulidtko, +1 для попереджень. Це одне з місць, де ви насправді можете поспішати зіпсувати речі як корінь.
Thorbjørn Ravn Andersen

3

На додаток до запропонованої відповіді я б також запропонував використовувати просто hd:

sudo hd /dev/sda -n 512 -s 0x0

00000000  eb 48 90 d7 bc 00 7a bb  a0 07 8e db 8e c3 be 00  |.H....z.........|
00000010  02 8b ce fc f3 a4 ea a3  00 a0 07 b9 04 00 8b fd  |................|
00000020  80 3d 80 74 05 83 c7 10  e2 f6 c3 b9 04 00 8b f5  |.=.t............|
00000030  88 2c 83 c6 10 e2 f9 c6  05 80 c3 60 b4 43 03 02  |.,.........`.C..|
00000040  ff 00 00 20 01 00 00 00  00 02 fa 90 90 f6 c2 80  |... ............|
00000050  75 02 b2 80 ea 59 7c 00  00 31 c0 8e d8 8e d0 bc  |u....Y|..1......|
00000060  00 20 fb a0 40 7c 3c ff  74 02 88 c2 52 be 7f 7d  |. ..@|<.t...R..}|
00000070  e8 34 01 f6 c2 80 74 54  b4 41 bb aa 55 cd 13 5a  |.4....tT.A..U..Z|
00000080  52 72 49 81 fb 55 aa 75  43 a0 41 7c 84 c0 75 05  |RrI..U.uC.A|..u.|
00000090  83 e1 01 74 37 66 8b 4c  10 be 05 7c c6 44 ff 01  |...t7f.L...|.D..|
000000a0  66 8b 1e 44 7c c7 04 10  00 c7 44 02 01 00 66 89  |f..D|.....D...f.|
000000b0  5c 08 c7 44 06 00 70 66  31 c0 89 44 04 66 89 44  |\..D..pf1..D.f.D|
000000c0  0c b4 42 cd 13 72 05 bb  00 70 eb 7d b4 08 cd 13  |..B..r...p.}....|
000000d0  73 0a f6 c2 80 0f 84 ea  00 e9 8d 00 be 05 7c c6  |s.............|.|
000000e0  44 ff 00 66 31 c0 88 f0  40 66 89 44 04 31 d2 88  |D..f1...@f.D.1..|
000000f0  ca c1 e2 02 88 e8 88 f4  40 89 44 08 31 c0 88 d0  |........@.D.1...|
00000100  c0 e8 02 66 89 04 66 a1  44 7c 66 31 d2 66 f7 34  |...f..f.D|f1.f.4|
00000110  88 54 0a 66 31 d2 66 f7  74 04 88 54 0b 89 44 0c  |.T.f1.f.t..T..D.|
00000120  3b 44 08 7d 3c 8a 54 0d  c0 e2 06 8a 4c 0a fe c1  |;D.}<.T.....L...|
00000130  08 d1 8a 6c 0c 5a 8a 74  0b bb 00 70 8e c3 31 db  |...l.Z.t...p..1.|
00000140  b8 01 02 cd 13 72 2a 8c  c3 8e 06 48 7c 60 1e b9  |.....r*....H|`..|
00000150  00 01 8e db 31 f6 31 ff  fc f3 a5 1f 61 ff 26 42  |....1.1.....a.&B|
00000160  7c be 85 7d e8 40 00 eb  0e be 8a 7d e8 38 00 eb  ||..}.@.....}.8..|
00000170  06 be 94 7d e8 30 00 be  99 7d e8 2a 00 eb fe 47  |...}.0...}.*...G|
00000180  52 55 42 20 00 47 65 6f  6d 00 48 61 72 64 20 44  |RUB .Geom.Hard D|
00000190  69 73 6b 00 52 65 61 64  00 20 45 72 72 6f 72 00  |isk.Read. Error.|
000001a0  bb 01 00 b4 0e cd 10 ac  3c 00 75 f4 c3 00 00 00  |........<.u.....|
000001b0  00 00 00 00 00 00 00 00  b2 ec b2 ec 00 00 80 01  |................|
000001c0  01 00 07 fe 3f 34 3f 00  00 00 b6 fd 0c 00 00 00  |....?4?.........|
000001d0  01 35 0f ef ff ff f5 fd  0c 00 cc 39 ec 0d 00 00  |.5.........9....|
000001e0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
000001f0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 55 aa  |..............U.|

Рішення засноване на тому, що /dev/sdaце спеціальний файл пристрою, який може бути прочитаний.


+1, дуже добре. Хоча люди часто вважають MBR єдиною логічною одиницею, хоча фізично зберігається лише в одному секторі серед інших. І зручно, коли логічні одиниці містяться в - або, можливо, представлені - окремими файлами. Можливо, саме тому я зберегла MBR у файл і працювала над ним.
ulidtko
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.