Как найти номера начального и конечного блоков файла с помощью терминала в Ubuntu? [закрыто]

Есть ли какая-нибудь команда, которая выводит начальный и конечный блоки жесткого диска файла? ( Решение отмечено как принятое)


Обновление:

Приведенные ниже ответы являются ответом на исходный запрос. Благодарю их всех. Но меня немного смущает то, что LBA не помещается в диапазон блоков, показанный fdisk . (однако уменьшение вдвое числа совпадает с диапазоном; значит ли это, что размер блока LBA равен 2048?!?)

2
задан 13 April 2017 в 15:24

3 ответа

Используйте hdparm:

sudo hdparm --fibmap FILENAME

где FILENAME - путь к вашему файлу.

Что касается ваших расчетов:

97504 * 512/1024 ^ 2 = 47,6 вот как вы это делаете.

Относительно несоответствия в диапазоне блоков:

Вы обошли диск NTFS на выходе fdisk, который заканчивается на LBA 251863039, вывод hdparm сообщает, что файловая система, в которой находится тестируемый файл, начинается с LBA 251863040. Таким образом, вы смотрите на неправильную файловую систему в выводе fdisk, потому что ваш файл находится на sda2, а не на sda1.

0
ответ дан 13 April 2017 в 15:24

Инструменты, которые вы, вероятно, ищете tail и head.

tail -5 file.txt

head -5 file.txt 

Это даст вам последние 5 (хвост) и первые 5 строк (голова) файла.txt

0
ответ дан 13 April 2017 в 15:24

Для файловой системы ext4 команда

sudo debugfs /dev/sda1 <<<"blocks /boot/vmlinuz-3.11.0-14-generic"

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

0
ответ дан 13 April 2017 в 15:24

Другие вопросы по тегам:

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