Существует ли инструмент командной строки для чтения байтовых секторов/кластеров с определенных адресов на диске?

Существует ли инструмент командной строки для чтения байтовых секторов/кластеров с определенных адресов на диске?

Итак, я изучил детали различных типов файловых систем и создавал загрузочные USB-накопители... Много... Я делал это с Mac, который засорял все, что я к нему подключал, даже после того, как я обнулял диск или делал на нем случайную перезапись, какими-то файлами метаданных. Мне стало любопытно, и я начал копаться.

Я использовал dd для записи дисков в файлы, затем анализировал их в Python, чтобы измерить (n)-байт с самого начала и написать однострочные команды для анализа вывода.

По сути, я хочу иметь возможность считывать необработанные данные с диска, начиная с определенного адреса, до определенного адреса. Я хотел бы иметь возможность делать это из командной строки, чтобы я мог легко выполнять grep для строк или записывать различные сектора в различные файлы. Существуют ли какие-либо существующие стандартные инструменты, которые делают это? (Похоже, это одна из тех задач, которая просто обязана быть... но я ошибался раньше.)

решение1

Вы можете указать dd, читать или записывать части диска. Используйте bsпараметр, чтобы определить размер блока, который вы хотите посчитать, затем skip(при чтении) или seek(при записи) для определения начальной позиции и countопределения количества блоков для чтения. Вы также должны указать, iflag=fullblockчтобы избежать сюрпризов с короткими чтениями.

Связанный контент