25 votes

Existe-t-il un moyen d'enregistrer les préférences de Mac OS X dans un fichier shell ?

Chaque fois que je réinstalle mon Mac OS et/ou que j'achète un nouveau Mac, je dois configurer manuellement presque toutes les options de souris, de dock, etc.

J'aimerais savoir si Mac OS ou un logiciel peut fournir un moyen de sauvegarder toutes les configurations que j'ai établies avec l'application Préférences Système dans un fichier shell, en créant quelque chose comme celui de Mathias Bynens. https://github.com/mathiasbynens/dotfiles/blob/master/.MacOS

14voto

Shuft Points 420

Les préférences du système semblent être stockées à différents endroits, selon qu'elles sont spécifiques à l'utilisateur ou au système. Un grand nombre d'entre elles sont stockées soit dans /Library/Preferences/ o $HOME/Library/Preferences/ (pour les paramètres par utilisateur). Mais chaque volet de préférences aura sa propre façon de les stocker.

Vous pouvez voir quelles préférences sont stockées de cette manière en tapant :

defaults read <domain>

<domain> est soit le début du nom de fichier dans vos préférences système par utilisateur, soit le chemin complet d'un fichier .plist fichier. Par exemple :

defaults read com.apple.screensaver
defaults read /Library/Preferences/com.apple.screensaver

La première affiche les paramètres de l'économiseur d'écran personnalisés par l'utilisateur, tandis que la seconde affiche les paramètres de l'économiseur d'écran du système.

Les paramètres sont en grande partie organisés par volet de préférences, mais ne sont pas nécessairement aussi simples. Vous devrez probablement fouiller dans le volet /Library/Preferences et les sous-dossiers (notamment SystemConfiguration ) pour les trouver tous.

Une option serait de simplement copier les fichiers concernés et de les remettre en place pour les nouvelles installations.

Une autre solution serait de l'exporter et de l'importer selon les besoins.

Exportation des préférences système de la gestion de l'alimentation (économiseur d'énergie) dans pm.plist :

defaults export /Library/Preferences/SystemConfiguration/com.apple.PowerManagement pm.plist

L'importation de ces préférences depuis pm.plist sur le nouvel ordinateur :

defaults import /Library/Preferences/SystemConfiguration/com.apple.PowerManagement sysprefs.plist

Vous pouvez même vouloir éditer les différents fichiers exportés. .plist si vous souhaitez ou non partager certaines préférences système entre ordinateurs. De cette façon, vous pouvez avoir une certaine personnalisation localement, et la import ne les écrasera pas, mais ajoutera simplement celles que vous avez définies dans la commande .plist fichiers. Vous pouvez utiliser le defaults pour modifier votre propre .plist (mais assurez-vous de spécifier le chemin d'accès complet au fichier, et pas seulement un nom, sinon vous risquez de modifier vos préférences par utilisateur).

1 votes

"com.apple.systempreferences" ne contient pas réellement de préférences pour le système. Il contient les préférences de l'application Préférences Système. Ainsi, aucune des configurations réelles que vous faites avec Les préférences du système sont stockées dans ce fichier.

0 votes

@TonyWilliams, vous avez raison, je vais corriger cela...

10voto

Tony Williams Points 11219

Produire automatiquement un script pour effectuer toutes les modifications requises est pratiquement impossible. Les administrateurs de systèmes Mac passent de nombreuses heures dans des bars sombres à boire de la bière ou du bourbon et à échanger des morceaux de ces fichiers - nous sommes peu disposés à partager tout ce travail à moins que vous ne soyez prêt à payer la note.

En fait, la façon la plus simple de capturer les changements de configuration est d'utiliser l'instantané.

Prenez un exemplaire de InstallEase et photographiez votre nouveau Mac. Maintenant, faites toute la configuration que vous voulez et vous pouvez prendre un autre instantané et construire un installateur qui installera les fichiers modifiés dans un nouveau Mac.

Bien sûr, des complications peuvent survenir lors de l'application des changements à une nouvelle version du système d'exploitation, mais c'est pour cela que nous buvons du bourbon.

1 votes

Existe-t-il au moins une liste avec les options de la commande "defaults write" ?

0 votes

Non. La commande defaults peut écrire dans n'importe quel fichier de préférences du système, il est donc impossible de fournir une liste complète.

0 votes

C'est une idée intelligente.

8voto

La dernière fois que j'ai fait une réinstallation propre, j'ai juste copié toute la ~/Library/Preferences/ et je n'ai rencontré aucun problème à cause de cela. Les paramètres des anciennes versions des applications et les paramètres spécifiques au Mac doivent être ignorés. Il n'y a presque pas de fichiers dans ~/Library/Preferences/ sur une nouvelle installation, et si vous supprimez tous les fichiers de la section ~/Library/Preferences/ les fichiers de préférences seront recréés lorsqu'ils seront nécessaires.

Les fichiers de préférences pour les applications sandboxes sont désormais stockés dans le dossier de l'utilisateur. ~/Library/Containers/ mais je ne sais pas si le fait de le copier sur un autre Mac causerait des problèmes.

Vous pouvez aussi simplement utiliser Assistant de migration .

Ou si vous optez pour la .osx vous pouvez différer la sortie de defaults read :

  1. Ejecutar defaults read|awk 'length<200'>/tmp/a
  2. Modifier certains paramètres
  3. Ejecutar defaults read|awk 'length<200'>/tmp/b;diff /tmp/[ab]

Vous pouvez exécuter sudo opensnoop ou utiliser fseventer pour voir quels fichiers sont modifiés lorsque vous changez les préférences depuis l'interface graphique.

6voto

Enrico P. Varella Points 443

Après de nombreuses heures à chercher quelque chose d'au moins utile à mon problème, j'ai trouvé un site web appelé Secrets qui fournit un grand nombre de commandes courantes d'écriture par défaut de Mac OS.

Quoi qu'il en soit, je remercie Tony et drfrogsplatless de m'avoir donné des éclaircissements et des conseils qui m'ont été utiles.

(edit : site hors ligne, utilisation de la version archivée)

0 votes

web.archive.org/web/20150322005829/http://secrets.blacktree.com ? a une copie d'archive de septembre 2015.

2voto

Laurent Points 51

Mackup est ce que vous recherchez. https://github.com/lra/mackup/tree/master/doc

0 votes

Mackup semble être un outil génial mais il ne supporte pas l'écriture par défaut. En outre, ceci l'explique mieux que le lien que vous avez fourni : github.com/lra/mackup

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X