Номер инода меняется - PullRequest
4 голосов
/ 12 января 2011

У меня проблема с номером инода.Когда я монтирую один usb-диск (скажем, usb-a), а затем монтирую другой usb-диск (usb-b), номер inode в usb-a меняется.что может вызвать эту проблему?Я использую Linux Kernel 2.6.usb-a - это vfat, а usb-b - это ntfs.

Заранее спасибо, ребята.

1 Ответ

6 голосов
/ 13 января 2011

Файловые системы FAT (и аналогично VFAT) на самом деле не хранят номера инодов на диске.Вместо этого, Linux изобретает номера inode на лету для файлов, которые они видят.Эти сгенерированные номера инодов хранятся в кэше, чтобы попытаться сохранить их согласованность, но этот кэш имеет фиксированный размер;после заполнения старые записи отбрасываются.

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

Дополнительная информация:

  • Обсуждение об ошибке, связанной с этой проблемой, в списке рассылки findutils
  • Исходники ядра Linux: fs / fat / inode.c (в частности, вызов iunique в fat_build_inode, который выполняет выделение номера инода).
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...