Configuración de preferencia predeterminada dinámica de Firefox

10

Todos mis usuarios están en directorios de inicio de NFS y con cientos de usuarios que usan Firefox, genera un poco de tráfico de lectura / escritura en la caché del disco. Como resultado, me gustaría mover la caché predeterminada del disco de Firefox a un sistema de archivos local solo para reducir el tráfico NFS extraño y aligerar la carga en mi servidor NFS también.

Sé que puedo configurar las preferencias predeterminadas de todo el sistema en un archivo llamado my_firefox_path/defaults/pref/all.jsde la siguiente forma:

pref ("browser.cache.disk.parent_directory", cadena)

Para probar, lo configuré en lo siguiente:

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

Lamentablemente, eso no funciona bien, ya que hay varios usuarios en cada sistema. ¿Hay alguna manera de incluir un usuario y un perfil en ese archivo de preferencias para que pueda modificar este sistema y se aplique a todos mis usuarios? Algo como:

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

Andrew Case
fuente
Es posible que pueda usar getenv () para recuperar variables de entorno. Por ejemplo: getenv ("USUARIO") para el nombre de usuario; Sin embargo, no estoy seguro de cómo podría obtener la ruta del perfil. Las extensiones pueden recuperar fácilmente la ruta del perfil, pero espero que hacer que la API de extensión esté disponible fuera de una extensión sería un desafío.
cyberx86
No puedo usar getenv () o tomar la ruta del perfil ejecutando esto en el archivo .js: Components.classes ["@ mozilla.org/file/directory_service;1"]. GetService (Components.interfaces.nsIProperties) .get ( "ProfD", Components.interfaces.nsIFile) .path
Andrew Case
Dependiendo de la relación con sus usuarios, ¿por qué no hacer el cambio (o pedirles que lo hagan) una vez en su perfil y terminarlo? Dado que, incluso si encuentra una manera de especificar, pueden anularlo.
Patrick Mevzek
1
Es poco probable que pueda hacer eso directamente en ese archivo, de acuerdo con esto . ¿Has intentado convertirlo en un enlace simbólico? it = la carpeta nfs.
Florin Asăvoaie

Respuestas:

0

Puede intentar crear un enlace simbólico para la carpeta de caché anterior al nuevo lugar. El comando será como:

ln -s /tmp/firefox /path_to_cache_folder_on_share
feo_animal
fuente
Esto no resuelve el problema, ya que seguiría siendo solo un directorio de caché para todos los usuarios.
Andrew Schulman
Sin embargo, esto resuelve la mitad del problema, @AndrewSchulman, si había que crear un script de inicio de sesión /tmp/$USER/firefoxpara cada usuario y luego hacer el enlace, entonces el perfil compartido podría usar la ruta del enlace. por ejemplo mkdir -p /tmp/$USER/firefox; ln -s /tmp/$USER/firefox /path_to_cache_folder_on_share
Mike