Cet article a été archivé et ne sera plus mis à jour par Apple.

OS X Server : comment modifier des fichiers de configuration

La documentation de Server peut vous indiquer de créer ou de modifier des listes de propriétés (plists) ou d’autres fichiers de configuration basés sur du texte pour activer des fonctionnalités qui ne sont pas exposées dans les outils d’administration de serveur.

Si vous ne savez pas comment modifier des fichiers de configuration, consultez les rubriques suivantes.

Choisir un éditeur de texte approprié

TextEdit (dans /Applications/) est un éditeur de texte graphique courant. Il peut être utilisé pour modifier des fichiers de configuration dans certaines circonstances, mais vous devez faire particulièrement attention à enregistrer le document dans un format pouvant être utilisé par le système (voir ci-dessous). Il est également plus difficile de modifier des fichiers avec des autorisations limitées dans TextEdit que dans un éditeur de texte de ligne de commande.

L’utilisation d’un éditeur de texte de ligne de commande permet d’éviter certains des problèmes de mise en forme et d’autorisations associés à l’utilisation de TextEdit. Les trois éditeurs de texte de ligne de commande les plus complets inclus avec OS X sont les suivants :

  • nano est un éditeur simple basé sur la ligne de commande. Il remplace l’éditeur pico. Les instructions d’utilisation de l’éditeur pico peuvent donc être utilisées avec nano. Si vous invoquez l’éditeur pico, c’est en fait nano qui est exécuté. nano est une bonne introduction à l’utilisation d’un éditeur basé sur la ligne de commande, car il comprend une aide à l’écran facile à suivre.

  • vim est un éditeur de texte compatible avec vi. Il offre de nombreuses améliorations puissantes pour déplacer, rechercher et modifier des documents. La modification de base est simple à apprendre et il y a beaucoup de fonctionnalités supplémentaires à explorer. La plupart des fonctionnalités sont accessibles en saisissant des combinaisons de touches qui déclenchent certains comportements. vim, ou l’éditeur dont il s’inspire, vi, est disponible dans la plupart des systèmes d’exploitation UNIX. Si vous avez prévu d’effectuer de nombreuses modifications à partir de la ligne de commande, c’est un bon éditeur à prendre en main, mais si vous n’utilisez qu’occasionnellement un éditeur basé sur la ligne de commande, vous pouvez vous en sortir sans l’apprendre.

  • Emacs est, comme vim, un éditeur extrêmement complet, disponible sur la plupart des systèmes UNIX. En plus de ses capacités de modification, Emacs est extrêmement personnalisable, avec des fonctionnalités supplémentaires disponibles dans des modules qui permettent à l’interface Emacs de faire bien plus que de simples modifications de texte. Il est relativement facile d’effectuer des modifications de base avec cet outil, qui propose un incroyable éventail de fonctionnalités que l’utilisateur dédié peut explorer. Comme vim, Emacs utilise des combinaisons de touches pour l’accès à ses nombreux comportements fonctionnels. La mémorisation est particulièrement performante. Emacs est donc particulièrement utile pour les personnes qui utilisent très souvent la ligne de commande.

Si vous n’avez pas d’expérience avec la ligne de commande et que vous ne prévoyez pas de l’utiliser beaucoup pour les modifications, nano est probablement un meilleur choix. Si vous prévoyez de passer beaucoup de temps à utiliser l’environnement de ligne de commande, il vaut probablement la peine d’apprendre vim ou Emacs. Ils ont des philosophies de conception très différentes. Passez donc du temps avec chacun d’eux pour déterminer ce qui vous convient le mieux.

Vous invoquez un éditeur de ligne de commande en saisissant le nom de l’éditeur, suivi d’une espace, puis du nom du fichier que vous souhaitez ouvrir. Si vous souhaitez créer un nouveau fichier, saisissez un nom pour ce dernier. Voici un exemple d’utilisation de nano pour ouvrir un nouveau fichier nommé « myFile.conf » dans votre dossier Documents :

nano ~/Documents/myFile.conf

En fonction des autorisations sur le fichier, vous devrez peut-être utiliser la commande sudo. Voici un exemple d’utilisation de nano pour modifier le fichier ldap.conf, qui ne peut être modifié que par l’utilisateur root :

sudo nano /etc/openldap/ldap.conf

Pour plus d’informations sur l’utilisation de nano, vim ou Emacs, consultez les pages de leurs manuels (man) respectifs.

Enregistrer des fichiers texte pour une utilisation système

Lorsque vous modifiez des fichiers texte pour qu’ils soient exécutés par des utilitaires UNIX, vous devez enregistrer les fichiers correctement afin qu’ils puissent être utilisés (ou exécutés) par leur programme d’appel. Il est particulièrement important d’utiliser le format texte et de s’assurer que les privilèges sont corrects.

Utiliser le format texte

De nombreux éditeurs de texte graphique, y compris TextEdit, enregistrent les fichiers texte dans un format trop complexe pour la plupart des programmes UNIX. Si vous utilisez TextEdit pour modifier des fichiers de configuration basés sur du texte, enregistrez-les au format texte, et non au format texte enrichi (RTF) par défaut. Pour modifier le format par défaut des documents texte dans TextEdit, vous disposez de deux options :

  • Pour enregistrer tous les documents au format texte, sélectionnez « Format Texte » sous Format dans la sous-fenêtre Nouveau document des préférences TextEdit.

  • Pour modifier le format d’un document individuel, choisissez « Convertir au format Texte » dans le menu Format.

Bien que le format texte enrichi (RTF) puisse sembler être du texte simple dans un éditeur, il s’agit en réalité d’une spécification complète qui décrit la mise en forme, les couleurs, les polices et d’autres informations qui ne sont pas contenues dans les fichiers texte auxquels s’attendent la plupart des programmes UNIX. Pour voir ce qui se trouve réellement dans un document au format texte enrichi (RTF), enregistrez-en un dans TextEdit, puis ouvrez le même fichier dans un éditeur de texte de ligne de commande.

Les éditeurs de texte de ligne de commande enregistrent automatiquement les fichiers de configuration au format texte.

Autorisations

Vous devez avoir l’autorisation de lire et d’écrire dans le fichier de configuration, et vous devez vous assurer que le fichier modifié conserve ses autorisations d’origine, sinon le système risque de ne pas pouvoir l’utiliser.

De nombreux fichiers système ne peuvent être modifiés que par l’utilisateur root. Si vous ouvrez un fichier de configuration avec des autorisations limitées dans TextEdit après vous être connecté en tant qu’utilisateur standard, vous pouvez recevoir un message indiquant que vous n’êtes pas autorisé à enregistrer le fichier. Évitez de modifier les autorisations sur le fichier ou de vous connecter en tant qu’utilisateur root pour accéder au fichier. Connectez-vous plutôt en tant qu’administrateur et assumez temporairement les privilèges root à l’aide de la commande sudo avec un éditeur de ligne de commande, comme indiqué ci-dessus.

Modifier des listes de propriétés

De nombreux fichiers de préférences et de configuration sous OS X utilisent des listes de propriétés (plists) pour spécifier les attributs ou les propriétés d’une application ou d’un processus. Par exemple, la plist des préférences du Finder se trouve dans le dossier Bibliothèque/Préférences/ du dossier de départ d’un utilisateur. Le fichier s’appelle com.apple.Finder.plist. La convention d’attribution de noms par défaut pour une plist inclut le nom DNS inverse du distributeur, qui a été ajouté au nom de l’application ou du processus, suivi d’une extension « .plist ».

Les listes de propriétés peuvent être au format binaire ou XML. Vous pouvez utiliser un éditeur de texte pour modifier les listes de propriétés XML, et vous pouvez utiliser les outils suivants pour modifier des listes de propriétés dans les deux formats.

  • Xcode et l’éditeur de liste de propriétés sont des outils de développement OS X qui fournissent une interface graphique pour la modification des listes de propriétés. Xcode version 4 ou ultérieure peut modifier directement des listes de propriétés. Les versions précédentes des outils de développement incluent l’éditeur de liste de propriétés en tant qu’application autonome distincte. Ces outils sont très utiles si vous comprenez déjà les listes de propriétés et leurs conventions. Pour plus d’informations, consultez la page http://developer.apple.com/mac.

  • defaults est un outil de ligne de commande que vous pouvez utiliser pour lire et modifier des listes de propriétés. Il est efficace lorsque vous connaissez la clé et la valeur spécifiques de la liste de propriétés que vous devez modifier.

  • PlistBuddy est un autre outil de ligne de commande permettant de lire et de modifier directement les valeurs d’une liste de propriétés. Il est plus flexible que defaults lorsque vous devez apporter des modifications à un fichier plist complexe.

Pour plus d’informations sur l’utilisation de defaults et de PlistBuddy, consultez les pages de leurs manuels (man) respectifs.

Informations supplémentaires

Sauvegarder les fichiers avant de les modifier

Chaque fois que vous modifiez un fichier de configuration ou une liste de propriétés, il est recommandé d’effectuer une sauvegarde du fichier avant de le modifier. Ainsi, si vous avez configuré incorrectement le fichier, vous pouvez le remplacer par une copie de travail. Étant donné que de nombreux fichiers de configuration se trouvent dans des emplacements où vous disposez d’un accès en lecture, mais pas en écriture, vous pouvez généralement copier le fichier à un autre emplacement à l’aide du Finder ou le copier à l’aide de la commande sudo. Par exemple, la commande suivante crée une copie de sauvegarde du fichier syslog.conf appelée syslog.config.original.

sudo cp /etc/syslog.conf /etc/syslog.conf.original

Les deux commandes suivantes permettent de mettre de côté un fichier syslog.conf mal configuré et de le remplacer par la copie de sauvegarde créée ci-dessus.

sudo mv /etc/syslog.conf /etc/syslog.conf.bad

sudo cp /etc/syslog.conf.original /etc/syslog.conf

Date de publication: