Файловые системы FAT (и аналогичные VFAT) фактически не хранят номера inode на диске. Вместо этого Linux изобретает inode номера «на лету» для файлов, как они видны. Эти генерируемые номера inode хранятся в кеше, чтобы попытаться сохранить их согласованными, но этот кеш имеет фиксированный размер; как только он будет заполнен, старые записи будут выброшены.
Предположительно, действие монтирования вашей второй файловой системы является достаточным для того, чтобы кеш числа ввода в файловой системе VFAT забыл о ваших файлах, вызывая выделение новых номеров индексных дескрипторов и представляя проблему, которую вы наблюдаете.
Дополнительная информация:
- Discussion об ошибке, связанной с этой проблемой на Findutils рассылки списка
- Linux Исходники ядра: fs/fat/inode.c (в частности, призыв к
iunique
в fat_build_inode
, который выполняет распределение числа инода).
Вы имеете в виду номера inode, которые не являются постоянными по сравнению с перезагрузкой системы? – shahir