1

Я задал вопрос о пересмотре кода, чтобы узнать, смогу ли я смело заменить следующий код:

:inode => [stat.ino, stat.dev_major, stat.dev_minor],

что вызвало NotImplementedError из-за того, что jruby не извлекает реализацию статистики для dev_major/dev_minor в Solaris,

:inode => [stat.ino, nil, nil],

и из их объяснения я понял, что если я работаю на одном жестком диске, это нормально, но если мои файлы распространяются на нескольких жестких дисках, существует (небольшой) риск столкновения, когда два inode имеют одинаковое число.

Но в моем случае все файлы журналов с каждого сервера монтируются в одном и том же каталоге через NFS, поэтому мне было интересно, будут ли при доступе к файлам номера инодов, полученные с помощью ruby, быть фактическими номерами инодов удаленных файлов или " local "inode number" ссылки NFS, в этом случае я буду в безопасности.

Кстати, я не очень знаком с этими понятиями, и английский не является моим родным языком, поэтому я прошу прощения, если мне неясно.

Спасибо за вашу помощь

1 ответ1

1

Номера инодов поступают с серверов NFS (систем, которые содержат файлы журналов). Система, на которой работает ваше приложение ruby, является клиентом NFS. Так что, да, существует вероятность коллизий номеров инодов.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .