Làm thế nào để thực hiện một hexdump của bản nhạc đầu tiên của ổ cứng?


12

Làm thế nào tôi có thể thực hiện một hexdump trong Ubuntu cho bản nhạc đầu tiên của ổ cứng?

Tôi đang tìm kiếm một đầu ra winhex-esque nếu điều đó có ý nghĩa. Bản nhạc đầu tiên có 63 cung, mỗi phần dài 512 byte. Tôi đã thử

dd if=/dev/sda bs=1 count=512 | hexdump -C

nhưng điều đó chỉ mang lại cho tôi thứ dường như là MBR, hay khu vực đầu tiên của ổ cứng. Tôi đoán tôi đang bối rối về những gì bs và đếm nên được. Bs có nghĩa là có bao nhiêu byte để hiển thị và đếm là bao nhiêu bội số của bs? Cảm ơn!


Nếu tôi thử bs-1 Count = 32256, nó xuất hiện để cắt đầu ra chỉ còn khoảng hai trang để cuộn trong thiết bị đầu cuối ... tôi không biết tại sao.
Daniel Gratz

Câu trả lời:


11

bslà kích thước khối, tính bằng byte và countlà số lượng các khối cần lấy. Vì vậy, lệnh bạn thực sự muốn kết xuất bản nhạc đầu tiên là:

dd if=/dev/sda bs=512 count=63 | hexdump -C

Trang người đàn ông dd có thể giúp đỡ.


Cảm ơn. Bất cứ ý tưởng tại sao tôi không nhìn thấy đầu ra đầy đủ? Tôi thậm chí không nhìn thấy khối thứ 1 (MBR) khi tôi gõ lệnh trên. Nó chỉ cho tôi đầu ra trong khoảng từ 000050d0 đến 00007e00.
Daniel Gratz

1
Sẽ hexdump -C -n 32256 /dev/sdakhông làm việc?
RedGrittyBrick

2
Có, bạn nghĩ rằng bạn đang sử dụng chương trình lục giác tương tác, như trên Windows. Bạn đang sử dụng một chương trình không tương tác, chỉ kết xuất mọi thứ trong một luồng đầu ra dài, chỉ có N dòng cuối cùng còn lại trên thiết bị đầu cuối của bạn ở cuối. Khối xây dựng Unix tiếp theo để bạn tìm hiểu là lệnh more(hoặc less). (-:
JdeBP

Khi tôi hoàn thành việc ghi đè thanh USB của mình, tôi có thể kiểm tra điều này, nhưng bạn không thể thử kết xuất nó vào một tệp để duyệt qua. Sẽ không dd if=/dev/sda bs=512 count=63 | hexdump -C > firsttrack.txtxuất nó thành một tập tin?
Cướp
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.