Зачем нужен кеш inode?

Вероятно, в вашем ssh_config в ~ / .ssh / config строку вроде

Host *
  IdentityFile /home/%d/.ssh/id_rsa.pub

или аналогичную. Здесь есть две проблемы. Подстановка % d означает, что весь домашний каталог, а опция IdentityFile должна получить закрытый ключ, а не открытый.

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

Или у вас может быть какой-то похожий псевдоним, пытающийся использовать этот ключ? Что дает тип ssh ?

3
02.01.2017, 10:24
2 ответа

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

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

2
27.01.2020, 21:18

Записи каталогов и inode - это разные объекты, поэтому они получают отдельные кеши: кэш dentry в dcache.c , кеш inode в inode_hashtable в inode.c . Но кеш inode является подчиненным по отношению к dcache:

dcache является мастером icache - всякий раз, когда существует запись dcache , индексный дескриптор будет существовать всегда.

Как вы, несомненно, уже знаете, цель этих кешей - повысить производительность и избежать постоянного обращения к диску, особенно для inode, который может обновляться много раз, пока файл открыт.

4
27.01.2020, 21:18

Теги

Похожие вопросы