Считайте единственный сектор из диска

Существуют команды basicly 2, чтобы сделать это...

  • useradd
  • adduser (который является более дружественным фронтэндом к useradd)

необходимо выполнить их, имеет корень. Просто прочитайте их руководства, чтобы узнать, как использовать их.

6
задан codeforester 14 June 2018 в 20:31
поделиться

3 ответа

Попробуйте сделать это из интерфейса командной строки примерно так:

# df -h .
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2              27G   24G  1.6G  94% /
# dd bs=512 if=/dev/sda2 of=/tmp/sector200 skip=200 count=1
1+0 records in
1+0 records out

Из man 4 sd :

FILES
   /dev/sd[a-h]: the whole device
   /dev/sd[a-h][0-8]: individual block partitions

И если вы хотите сделать это из программы, просто используйте комбинацию системных вызовов от человек 2 ... например open, lseek, и read с параметрами из примера dd .

7
ответ дан 9 December 2019 в 22:36
поделиться

Остальные в значительной степени покрыли это. Вам необходимо

  • получить доступ к файлу устройства на диске (либо быть пользователем root, либо, лучше, изменить права доступа к нему)

  • использовать функции ввода-вывода файла для чтения секторов = фрагментов (обычно) 512 байт с указанного диска.

0
ответ дан 9 December 2019 в 22:36
поделиться

Я не уверен, какой программный подход лучше всего, но из командной строки Linux вы можете использовать команду dd в сочетании с необработанным устройством для вашего диска, чтобы напрямую читать с диска .

Вам необходимо выполнить sudo эту команду, чтобы получить доступ к необработанному диску (например, /dev/rdisk0).

. Например, следующее будет читать один 512-байтовый блок со смещением 900 блоков от вверху disk0 и выведите его на стандартный вывод.

sudo dd if=/dev/rdisk0 bs=512 skip=900 count=1

См. справочную страницу dd, чтобы получить дополнительную информацию о параметрах для dd.

3
ответ дан 9 December 2019 в 22:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: