Firefox 动态默认首选项配置

Firefox 动态默认首选项配置

我的用户都在 NFS 主目录中,数百名用户都在使用 Firefox,这会产生一些读取/写入磁盘缓存的流量。因此,我想将默认的 Firefox 磁盘缓存移至本地文件系统,以减少无关的 NFS 流量并减轻 NFS 服务器上的负载。

my_firefox_path/defaults/pref/all.js我知道我可以在以下格式的文件中设置系统范围的默认首选项:

pref(“browser.cache.disk.parent_directory”, 字符串)

为了测试我将其设置如下:

pref("浏览器.缓存.磁盘.父目录", "/tmp/firefox/");

不幸的是,由于每个系统都有多个用户,所以这种方法不太好用。有没有办法包含用户和一个轮廓在该首选项文件中,以便我可以在整个系统范围内进行调整,并将其应用于所有用户?例如:

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

答案1

我认为这样做的唯一方法是以编程方式更新每个用户登录时的 user.js 首选项文件。

当用户登录时,将运行执行以下操作的脚本:

  1. 读取他们的 ~/mozilla/firefox/profiles.ini。
  2. 解析配置文件的目录。
  3. 为目录路径(如 /tmp/$(id -u)/firefox/${profile.dirname}/cache)创建一个临时目录和一个变量
  4. 使用 pref("browser.cache.disk.parent_directory", "${TEMP_DIRECTORY_PATH") 创建/更新 ~/mozilla/firefox/${profile.dirname}/user.js 文件;

答案2

您可以尝试为旧缓存文件夹创建指向新位置的符号链接。命令如下:

ln -s /tmp/firefox /path_to_cache_folder_on_share

相关内容