Динамическая конфигурация настроек Firefox по умолчанию

10

Все мои пользователи находятся в домашних каталогах NFS, и с сотнями пользователей, использующих Firefox, он генерирует немного трафика чтения / записи в кэш диска. В результате я хотел бы перенести дисковый кеш Firefox по умолчанию в локальную файловую систему, чтобы уменьшить посторонний трафик NFS и снизить нагрузку на мой NFS-сервер.

Я знаю, что могу установить общесистемные настройки по умолчанию в файле, который называется my_firefox_path/defaults/pref/all.jsследующей формы:

pref ("browser.cache.disk.parent_directory", строка)

Для тестирования у меня было установлено следующее:

pref ("browser.cache.disk.parent_directory", "/ tmp / firefox /");

К сожалению, это не работает, так как в каждой системе несколько пользователей. Есть ли способ включить пользователя и профиль в этот файл настроек, чтобы я мог настроить всю систему, и она будет применяться ко всем моим пользователям? Что-то типа:

pref ("browser.cache.disk.parent_directory", "/ tmp / firefox / $ USER / $ PROFILE");

Эндрю Кейс
источник
Вы можете использовать getenv () для получения переменных окружения. Например: getenv («USER») для имени пользователя; не уверен, как вы могли бы получить путь к профилю, хотя. Расширения могут легко получить путь к профилю, но я ожидаю, что сделать API расширения доступным вне расширения будет непростой задачей.
cyberx86
Невозможно использовать getenv () или получить путь к профилю, запустив его в файле .js: Components.classes ["@ mozilla.org/file/directory_service;1"]. GetService (Components.interfaces.nsIProperties) .get ( «ProfD», Components.interfaces.nsIFile) .path
Эндрю Кейс,
В зависимости от отношений с вашими пользователями, почему бы не внести изменения (или попросить их внести изменения) один раз в их профиле и покончить с этим? Поскольку, даже если вы найдете способ указать, они могут переопределить его.
Патрик Мевзек
1
Вряд ли вы можете сделать это непосредственно в этом файле, в соответствии с этим . Вы пытались сделать это символической ссылкой? это = папка NFS.
Florin Asăvoaie

Ответы:

0

Вы можете попробовать создать символическую ссылку для старой папки кэша на новое место. Команда будет такой:

ln -s /tmp/firefox /path_to_cache_folder_on_share
ugly_animal
источник
Это не решает проблему, так как это будет всего лишь один каталог кэша для всех пользователей.
Эндрю Шульман
Это решает половину проблемы, @AndrewSchulman, если /tmp/$USER/firefoxдля каждого пользователя был создан сценарий входа в систему, а затем создать ссылку, тогда общий профиль мог бы использовать путь ссылки. например mkdir -p /tmp/$USER/firefox; ln -s /tmp/$USER/firefox /path_to_cache_folder_on_share
микрофон