Preferencje systemowe wydają się być przechowywane w różnych miejscach, w zależności od tego, czy dotyczą one użytkownika, czy systemu. Wiele z nich jest przechowywanych w jednym /Library/Preferences/
lub $HOME/Library/Preferences/
(dla ustawień poszczególnych użytkowników). Ale każde okienko preferencji będzie miało swój własny sposób przechowywania.
Możesz zobaczyć, które preferencje są przechowywane w ten sposób, pisząc:
defaults read <domain>
Gdzie <domain>
jest początek nazwy pliku w preferencjach systemowych poszczególnych użytkowników lub pełna ścieżka do .plist
pliku. Na przykład:
defaults read com.apple.screensaver
defaults read /Library/Preferences/com.apple.screensaver
Pierwsza pokaże dostosowanie ustawień wygaszacza dla poszczególnych użytkowników, a druga pokaże ustawienia wygaszacza systemu.
Ustawienia są w dużej mierze uporządkowane według okienka preferencji, choć niekoniecznie tak prosto. Prawdopodobnie będziesz musiał zajrzeć do /Library/Preferences
podfolderów (szczególnie SystemConfiguration
), aby je wszystkie znaleźć.
Jedną z opcji byłoby po prostu skopiowanie odpowiednich plików i odłożenie ich z powrotem na nowe instalacje.
Innym sposobem byłby eksport i import w razie potrzeby.
Eksportowanie preferencji systemowych zarządzania energią (oszczędzania energii) do pm.plist:
defaults export /Library/Preferences/SystemConfiguration/com.apple.PowerManagement pm.plist
Importowanie tych preferencji z pm.plist
nowego komputera:
defaults import /Library/Preferences/SystemConfiguration/com.apple.PowerManagement sysprefs.plist
Możesz nawet edytować różne eksportowane .plist
pliki, jeśli istnieją określone preferencje systemowe, które udostępniasz / nie chcesz udostępniać między komputerami. W ten sposób możesz mieć lokalne ustawienia, a import
polecenie ich nie zastąpi, po prostu dodaj te, które ustawiłeś w .plist
plikach. Możesz użyć tego defaults
polecenia również do modyfikowania własnych .plist
plików (ale upewnij się, że podałeś pełną ścieżkę do pliku, a nie tylko nazwę, albo możesz modyfikować preferencje dla poszczególnych użytkowników).
Automatyczne tworzenie skryptu w celu wprowadzenia wszystkich wymaganych zmian jest prawie niemożliwe. Administratorzy systemu Mac spędzają wiele godzin w ciemnych barach, pijąc piwo lub bourbon i wymieniając fragmenty tych plików - niechętnie udostępniamy całą tę pracę, chyba że jesteś przygotowany na wybranie karty.
W rzeczywistości najłatwiejszym sposobem na przechwycenie zmian konfiguracji jest użycie migawki.
Weź kopię InstallEase i zrób migawkę swojego nowego komputera Mac. Teraz wykonaj całą konfigurację, którą chcesz, i możesz zrobić kolejną migawkę i zbudować instalator, który zainstaluje zmienione pliki na nowym komputerze Mac.
Oczywiście mogą pojawić się komplikacje podczas stosowania zmian w nowej wersji systemu operacyjnego, ale właśnie dlatego pijemy bourbon.
źródło
Ostatnim razem, gdy wykonałem czystą reinstalację, właśnie skopiowałem cały
~/Library/Preferences/
folder i nie napotkałem z tego powodu żadnych problemów. Ustawienia starych wersji aplikacji i ustawienia specyficzne dla komputerów Mac należy po prostu zignorować. W~/Library/Preferences/
nowej instalacji prawie nie ma plików , a jeśli usuniesz wszystkie pliki~/Library/Preferences/
, pliki preferencji zostaną odtworzone, gdy będą potrzebne.Pliki preferencji dla aplikacji w trybie piaskownicy są teraz przechowywane
~/Library/Containers/
, ale nie wiem, czy skopiowanie go na inny komputer Mac spowodowałoby jakiekolwiek problemy.Możesz także użyć Asystenta migracji .
Lub jeśli wybierzesz
.osx
trasę, możesz różnicować dane wyjściowedefaults read
:defaults read|awk 'length<200'>/tmp/a
defaults read|awk 'length<200'>/tmp/b;diff /tmp/[ab]
Możesz uruchomić
sudo opensnoop
lub użyć fseventer, aby zobaczyć, jakie pliki są modyfikowane po zmianie preferencji z GUI.źródło
Po wielu godzinach szukania czegoś, co przynajmniej przydałoby się w moim problemie, znalazłem witrynę o nazwie Secrets , która zawiera wiele typowych poleceń Mac OS „domyślnie pisz”.
W każdym razie dziękuję Tony'emu i drfrogsplatless za udzielenie mi wyjaśnień i wskazówek, które były dla mnie pomocne.
(edycja: witryna offline, w wersji zarchiwizowanej)
źródło
Mackup jest tym, czego szukasz. https://github.com/lra/mackup/tree/master/doc
źródło
Oto częściowo ukończony skrypt Apple, który napisałem w sierpniu 2016 r. Dla mojego komputera Mac, opublikowany tutaj jako „dowód koncepcji” jest trochę mocny, ale można w niego grać:
(* Przed uruchomieniem tego skryptu musisz najpierw przyznać rajstopy Apple Script w Preferencjach systemowych -> Bezpieczeństwo i prywatność -> Dostępność i zezwolić Apple Script na sterowanie komputerem. Możesz zacząć od uruchomienia skryptu, dopóki nie zawiedzie punkt. Następnie zatrzymaj skrypt, przejdź do okna dialogowego Preferencje i zaznacz pole wyboru obok Edytora skryptu. Następnie możesz wrócić, usunąć wszystkie zrobione zrzuty ekranu (aby uniknąć mylących duplikatów) i ponownie uruchomić skrypt.
Dlaczego musisz to zrobić? Pojawia się kilka okien dialogowych preferencji, po otwarciu i „sfotografowaniu” należy je wyraźnie zamknąć jednym kliknięciem przycisku Anuluj. Apple Script nie może tego zrobić, chyba że ma uprawnienia do „kontrolowania twojego komputera” w ramach tego pref. *)
źródło