LINUX.ORG.RU

Советую почитать про то, как хранятся файлы на жёстком диске, и зачем нужны файловые системы.

batekman ★★★
()

Всё увеличивающее количество уровней абстракции от приложения до «железа» делают это всё менее реальным, ну а сложность и реализуемость зависят от конкретной ситуации.

Elyas ★★★★★
()

ioctl FIEMAP FIBMAP

anonymous
()
Ответ на: комментарий от WereFox

Ну смотри, я открываю файл какой-нибудь в папке, и жесткий диск знает с какого и до какого места нужно считывать. Разве так сложно узнать пользователю об этом?

letni
() автор топика

Искать низкоуровневые утилиты для конкретной ФС. Ну или изучать строение ФС, чтобы самому в редакторе диска разбирать структуры и искать куски файлов.

Radjah ★★★★★
()
Ответ на: комментарий от letni

А зачем оно тебе, если не секрет? Если просто для прикола, то возьми простую файловую систему, типа DOS или даже TR-DOS для спектрума, там можно было работать на низком уровне прямо из редакторов диска (были такие).

anonymous
()

В большинстве ФС имеет место фрагментация файлов. То есть данные файла могут оказаться в нескольких местах жёсткого диска. Более того, куски файла могут на диске располагаться в иной последовательности, нежели в файле (то есть конец файла может лежать перед началом). Это вызвано тем, что размер файла может меняться динамически.

KivApple ★★★★★
()

debugfs /dev/sdX

debugfs: pwd debugfs: blocks /patch/to/file

Только не байты от начала А номера блоков в которых .

sova ★★
()
Последнее исправление: sova (всего исправлений: 1)
Ответ на: комментарий от letni

Ну смотри, я открываю файл какой-нибудь в папке, и жесткий диск знает с какого и до какого места нужно считывать. Разве так сложно узнать пользователю об этом?

«Знание приумножает скорбь» :)

Зачем тебе знать о физических и логических секторах, кластерах, файловых системах и фактическом расположении файла на блинах НЖМД или в ячейках SSD? Ты стрелять по нему собрался?

открываю файл какой-нибудь в папке - за этим, внешне простым твоим действием, работает несколько уровней абстракций, заботливо скрываемых от тебя ОС и графической оболочкой.

Содержимое твоей «папки» может оказаться не файлом на диске, а каким-нибудь устройством, сетевым ресурсом или вообще каналом связи между работающими программами.

blexey ★★★★★
()
# hdparm --fibmap /boot/kernel

/boot/kernel:
 filesystem blocksize 4096, begins at LBA 8390656; assuming 512 byte sectors.
 byte_offset  begin_LBA    end_LBA    sectors
           0   22293040   22304343      11304
Lavos ★★★★★
()
Ответ на: комментарий от Lavos

Спасибо, то что надо. Не исключаю, что другие ответы правильные, но твой самый наглядный.

letni
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.