Почему у '/' есть индекс 2?


8

Во многих системах * nix, таких как OS X и Ubuntu, мы видим, что индекс корневого каталога равен 2. Тогда для чего используется индекс 1?


7
Это будет отличаться в зависимости от файловой системы; Вы заинтересованы в конкретном? Обычно индекс 1 используется для списка плохих блоков, но это не обязательно.
Майкл Гомер

2
Этот SO ответ может быть уместным: stackoverflow.com/a/2109363/2808351
dhag

«Почему» действительно «потому что разработчики ext4 решили сделать это». Индекс AFAIK для /разных файловых систем отличается, и он не указан нигде в стандарте POSIX. Конечно, это могло быть так в оригинальной AT & T UNIX или System V, так что это можно считать традицией, но это определенно не заложено.
Сергей Колодяжный

Ответы:


7

Inode 0 используется как значение NULL, чтобы указать, что нет никакого inode.

Inode 1 используется для отслеживания любых плохих блоков на диске; по сути это скрытый файл, содержащий плохие блоки. Те плохие блоки, которые записаны с помощью e2fsck -c.

Inode 2 используется корневым каталогом и указывает на запуск inode файловой системы.


Следует отметить, что кроме 0 значения взяты из традиции и на самом деле не являются фиксированными. Например, minixfs имеет / as inode 1 и badblocks, как и любой inode /.badblocks.
Джошуа

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.