Я использую Gentoo Linux и в настоящее время перемещаю /usr/portage
(базу данных portage, содержащую тысячи небольших файлов ebuild), /var/tmp/portage
(каталог компиляции portage) и /var/tmp/ccache
(каталог кэша компилятора) в reiserfs. Эти каталоги чувствительны к производительности, и тысячи небольших файлов запрашиваются и записываются, когда portage вычисляет зависимости пакетов и компилирует пакеты.
Какой самый быстрый способ перенаправления каталогов в новую файловую систему? Будет ли большая потеря производительности при использовании символической ссылки, так как система анализирует символическую ссылку как текст? Будет ли лучше mount bind?
решение1
Mount --bind
должно быть быстрее, чем символическая ссылка.
Если вы mount -B /mnt/portage /usr/portage
читаете, /usr/portage
то получите i-узел /mnt/portage
, и он должен работать так же быстро, как и обычный каталог.
Скорость разрешения символической ссылки будет зависеть от количества компонентов в связанном пути, поэтому для /usr/portage
связанного с /mnt/portage
ней пути потребуется три дополнительных чтения i-node и два поиска в каталоге.
Я сомневаюсь, что вы заметите какую-либо разницу между этими методами, если только вы не используете эти файловые системы очень часто.