Dynamiczna domyślna konfiguracja preferencji Firefoksa


10

Wszyscy moi użytkownicy są w katalogach domowych NFS, a dzięki setkom użytkowników korzystających z Firefoksa generuje on trochę ruchu odczytu / zapisu do pamięci podręcznej dysku. W związku z tym chciałbym przenieść domyślną pamięć podręczną dysku Firefox na lokalny system plików, aby ograniczyć zbędny ruch NFS i zmniejszyć obciążenie również mojego serwera NFS.

Wiem, że mogę ustawić domyślne preferencje systemowe w pliku o nazwie my_firefox_path/defaults/pref/all.jso następującej formie:

pref („browser.cache.disk.parent_directory”, ciąg znaków)

Do testowania ustawiłem go w następujący sposób:

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

Niestety to nie działa dobrze, ponieważ w każdym systemie jest wielu użytkowników. Czy istnieje sposób na dołączenie użytkownika i profilu do tego pliku preferencji, abym mógł dostosować cały ten system i zastosować go do wszystkich moich użytkowników? Coś jak:

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


Możesz użyć getenv () do pobrania zmiennych środowiskowych. Na przykład: getenv („USER”) dla nazwy użytkownika; nie jestem pewien, jak można uzyskać ścieżkę profilu. Rozszerzenia mogą łatwo pobrać ścieżkę profilu, ale spodziewam się, że udostępnienie interfejsu API rozszerzenia poza rozszerzeniem byłoby wyzwaniem.
— cyberx86,

Nie można użyć metody getenv () ani pobrać ścieżki profilu, uruchamiając ją w pliku .js: Components.classes ["@ mozilla.org/file/directory_service;1"]. GetService (Components.interfaces.nsIProperties) .get ( „ProfD”, Components.interfaces.nsIFile) .path
— Andrew Case

W zależności od relacji z użytkownikami, dlaczego nie wprowadzić zmian (lub poprosić ich o wprowadzenie zmian) raz w swoim profilu i zrobić to? Ponieważ nawet jeśli znajdziesz sposób na określenie, mogą go zastąpić.
— Patrick Mevzek,

1
Jest mało prawdopodobne, że można to zrobić bezpośrednio w tym pliku, w zależności od tego . Próbowałeś zrobić z niego dowiązanie symboliczne? it = folder nfs.
— Florin Asăvoaie

Odpowiedzi:


0

Możesz spróbować utworzyć dowiązanie symboliczne do starego folderu pamięci podręcznej w nowym miejscu. Polecenie będzie wyglądało tak:

ln -s /tmp/firefox /path_to_cache_folder_on_share

To nie rozwiązuje problemu, ponieważ nadal byłby to tylko jeden katalog pamięci podręcznej dla wszystkich użytkowników.
— Andrew Schulman

rozwiązuje to jednak połowę problemu, @AndrewSchulman, jeśli /tmp/$USER/firefoxdla każdego użytkownika trzeba utworzyć skrypt logowania, a następnie utworzyć łącze, profil wspólny może użyć ścieżki łącza. np. mkdir -p /tmp/$USER/firefox; ln -s /tmp/$USER/firefox /path_to_cache_folder_on_share
— mike
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.