Назад к вопросам
Middle
74
questionbank
Какую информацию хранит i-узел?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
I-узел (inode) хранит метаинформацию о файле или каталоге в файловой системе. Он не содержит самих данных файла.
Ключевая информация, хранящаяся в i-узле:
- Тип файла (обычный файл, каталог, символическая ссылка и т.д.).
- Права доступа (владелец, группа, другие; права чтения, записи, выполнения).
- Число жестких ссылок на данный i-узел.
- Идентификатор пользователя-владельца (UID).
- Идентификатор группы-владельца (GID).
- Размер файла в байтах.
- Временные метки:
- Время последнего доступа (atime).
- Время последней модификации (mtime).
- Время последнего изменения i-узла/метаданных (ctime).
- Номера блоков на диске, где хранятся данные файла.
- Размер блока данных.
Пример структуры (условный):
// Условное представление структуры i-узла
struct inode {
// Метаданные файла
unsigned int i_mode; // Тип файла и права доступа
unsigned int i_uid; // UID владельца
unsigned int i_gid; // GID владельца
unsigned int i_nlink; // Число жестких ссылок
__time_t i_atime; // Время последнего доступа
__time_t i_mtime; // Время последней модификации
__time_t i_ctime; // Время создания/изменения
unsigned long i_size; // Размер файла
unsigned long i_blocks; // Количество блоков, занимаемых файлом
unsigned int i_blksize; // Размер блока файловой системы
// Адреса блоков данных (прямые, косвенные. Зависит от ФС)
unsigned int i_block[N_BLOCKS];
// + дополнительная информация, специфичная для ФС
};
Таблица с примерами прав доступа в восьмеричной системе:
| Значение (Octal) | Описание |
|---|---|
| 777 | Все права для владельца, группы, других |
| 755 | rwx для владельца, r-x для группы и других |
| 644 | rw- для владельца, r-- для группы и других |