Versions de profils système Introduction 11.. IInnttrroodduuccttiioonn Les versions de profils système peuvent avoir différentes utilisations. Elles peuvent permettre de résoudre les différents problèmes liés à la complexité de la gestion des stations de travail et des serveurs. Vous avez un ordinateur portable ? Avez-vous un jour souhaité disposer d'un ensemble de fichiers de configuration pour le bureau, d'un autre pour la maison et d'un troisième pour le site d'un client ? Et de pouvoir passer d'une configuration à l'autre, à volonté, et ce, même au démarrage du système ? De plus, vous souhaiter pouvoir partager certains aspects de votre configuration système entre ces trois sites. Faites-vous des choses de plus en plus compliquées avec _L_i_n_u_x ces derniers temps ? Avez-vous déjà souhaité pouvoir geler un paramètrage qui fonctionne et ensuite en expérimenter d'autres pendant l'absence des utilisateurs ? Avez-vous déjà été appelé en pleine nuit à cause d'une configuration défaillante ? L'utilisateur doit être de retour dans quelques heures et vous n'êtes pas capable de remettre le système en fonctionnement alors que vous tentiez de l'améliorer. Eh bien, si vous répondez oui à n'importe laquelle de ces questions, alors _L_e_s _v_e_r_s_i_o_n_s _d_e _p_r_o_f_i_l_s _s_y_s_t_è_m_e sont pour vous. 11..11.. DDeeffiinniittiioonn dd''uunn pprrooffiill ssyyssttèèmmee Un profil système est défini par un ensemble de fichiers de configuration. Ces fichiers de configuration appartiennent à différents sous-systèmes. Quelquefois un fichier appartient même à deux sous-systèmes ou plus. 11..22.. VVeerrssiioonn ddee pprrooffiill ssyyssttèèmmee Une version est constituée de tous les fichiers de configuration qui définissent un état spécifique de votre ordinateur. En changeant de version de profil, vous sauvegardez effectivement les fichiers de configuration courants dans une zone de stockage spéciale (/etc/linuxconf/archive) et vous restaurez les fichiers de la nouvelle version activée. 11..33.. PPaarrttaaggee ddeess ffiicchhiieerrss eennttrree ddeeuuxx vveerrssiioonnss ddee pprrooffiill ssyyssttèèmmee L'échange de tous les fichiers de configuration d'un profil en cours d'utilisation par d'autres fichiers de configuration n'est pas toujours très utile. Par exemple, on peut définir deux versions de profil système : un pour le bureau et un autre pour la maison. Quelques sous-systèmes sont identiques pour les deux environnements et l'on peut s'attendre à ce que lorsqu'on modifie un aspect de son portable Linux à la maison, on puisse retrouver les mêmes modifications le lendemain matin au bureau. Quelquefois, on peut souhaiter voir les deux environnements évoluer séparément. En fait, on a besoin de pouvoir contrôler sous-système par sous-système comment les choses sont sauvegardées/restaurées entre les différentes versions de profil système. 11..44.. TTeecchhnnoollooggiiee dd''aarrcchhiivvaaggee _L_i_n_u_x_c_o_n_f utilise le système _R_C_S pour sauvegarder les copies des différents fichiers. RCS est utilisé pour garder un historique de l'état des fichiers de configuration. Cela sera utilisé un jour dans Linuxconf pour créer des rapports d'audit montrant comment les différents sous-systèmes ont été gérés au cours du temps. La technologie d'archivage peut évoluer un jour pour utiliser un serveur d'archives. Ceci permettrait de pouvoir suivre efficacement les modifications de configuration sur de nombreux serveurs et stations de travail. 22.. DDééffiinniittiioonn dd''uunn pprrooffiill ssyyssttèèmmee Voici comment définir une version. 22..11.. UUnn nnoomm Chaque version de profil système possède un nom qui est utilisé pour le sélecter. Le nom ne doit pas contenir d'espace. 22..22.. UUnn ttiittrree Vous pouvez donner un titre pour rendre les menus plus agréables à lire. 22..33.. FFaammiillllee dd''aarrcchhiivvaaggee ppaarr ddééffaauutt Chaque sous-système sans famille d'archivage sera archivé en utilisant celle-ci. La plupart du temps, les versions de profil système seront archivées dans une ou deux familles différentes. Ceci évitant de répéter la famille d'archivage encore et encore. 22..44.. FFaammiilllleess dd''aarrcchhiivvaaggee Une version de profil système est définie en indiquant à Linuxconf comment les différents sous-systèmes qui la composent sont archivés. Ou à quel endroit ils sont archivés. Les fichiers de configuration des sous-systèmes sont archivés ensembles dans une famille. Si deux versions de profil système sont définies de telle façon qu'elles archivent un sous-système donné dans la même famille, alors les fichiers de configuration de ce sous-système seront partagés par les deux versions. Cela signifie qu'une modification, effectuée alors que l'une de ces versions est active, sera disponible lorsque vous changerez pour l'autre version. La commutation entre les deux versions n'affectera pas l'état de ce sous-système spécifique. Une famille consiste simplement en un mot. Ce peut être n'importe quel mot. Cela devient un sous-répertoire dans /etc/linuxconf/archive. Dans ce sous-répertoire, vous trouverez les copies archivées des différents fichiers de configuration sauvegardés ici. A l'intérieur du répertoire d'une famille, se trouve une arborescence de répertoires qui répète les différents répertoires que l'on trouve normalement dans un système Linux, tels que /etc et /etc/ppp. Plusieurs sous-systèmes peuvent être archivés dans une même famille. 33.. FFaammiillllee dd''aarrcchhiivvaaggee ssppéécciiaallee :: ""aauuccuunnee"" En sélectant "aucune" comme famille d'archivage vous indiquez que vous ne voulez absolument pas d'archivage pour ce sous-système. 44.. PPaarraammèèttrreess ppaarr ddééffaauutt Lorsque vous débutez le dialogue de gestion de versions de profil, vous découvrez que Linuxconf a déjà défini deux versions de profil : l'une est appelée Bureau et l'autre Maison. Les deux sont définies pour archiver tous les sous-systèmes sauf un dans la famille Maison- Bureau. Les sous-systèmes "identité de la station de travail" et "connectivité réseau" sont archivés dans la famille "Maison" pour la version Maison et dans la famille "Bureau" pour la version Bureau. Ces deux paramètrages doivent être suffisamment bons pour les utilisateurs de portables qui se déplacent entre leur maison et leur bureau. 55.. UUttiilliissaattiioonn ddee vvoottrree pprroopprree ssyyssttèèmmee dd''aarrcchhiivvaaggee Linuxconf utilise le script /usr/lib/linuxconf/lib/cfgarchive pour sauvegarder et extraire les différents fichiers de configuration. Ce script est documenté (commenté). Vous pouvez spécifier une autre commande d'archivage en allant dans le menu "Systèmes et fichier de contrôle" puis dans "Toutes commandes et démons". Localisez la commande cfgarchive et entrez le chemin de la commande de remplacement. 66.. GGeessttiioonn ddeess pprrooffiillss ssyyssttèèmmee Une fois que les versions de profil système ont été définies, on peut permuter de l'une à l'autre. Linuxconf préserve les fichiers de configuration de tous les sous-systèmes qui ne sont pas partagés entre deux versions. Ensuite, il restaure les fichiers de configuration de la nouvelle version choisie. 66..11.. UUttiilliissaattiioonn dduu ppaannnneeaauu ddee ccoonnttrrôôllee Dans le panneau de contrôle, on trouve l'option du menu _c_h_a_n_g_e_m_e_n_t _d_e _v_e_r_s_i_o_n _d_e _s_y_s_t_è_m_e. Ce menu affiche la liste de toutes les versions disponibles (sauf celle qui est actuellement active). Il suffit d'en choisir une et c'est tout. Vous pouvez souhaiter voir le menu _A_c_t_i_v_a_t_i_o_n _d_e_s _m_o_d_i_f_i_c_a_t_i_o_n_s du panneau de contrôle ou laisser Linuxconf mettre en action les modifications. 66..22.. AAuu ddéémmaarrrraaggee Au démarrage, une option permet de choisir sa version de profil. De même que pour l'option du panneau de contrôle, ceci entraîne l'archivage de la version courante et la restauration de la nouvelle. Linuxconf peut alors démarrer en utilisant les nouveaux fichiers de configuration. 66..33.. AA ppaarrttiirr ddee llaa lliiggnnee ddee ccoommmmaannddee Des fonctionnalités limitées, pour agir sur l'archivage, sont disponibles à partir de la ligne de commande. Les options tapées sur la ligne de commande n'ont d'effet que sur la version courante. Elles sont pratiques pour faire des essais et revenir en arrière. Il faut se rappeler que _R_C_S est utilisé pour sauvegarder les fichiers. Cela signifie que l'on peut retrouver une très vieille copie d'un fichier de configuration si besoin est. _L_i_n_u_x_c_o_n_f ne supporte cependant pas encore cela. Il vous faut fouiller dans /etc/linuxconf/archive. 66..33..11.. AArrcchhiivvaaggee ddee qquueellqquueess--uunnss oouu ddee ttoouuss lleess ssoouuss--ssyyssttèèmmeess La commande linuxconf --archive [ sub-system ... ] permet de sauvegarder le fichier de configuration de quelques sous- systèmes. Si l'on omet de donner les noms des sous-systèmes, alors tous les sous-systèmes sont sauvegardés. 66..33..22.. RReessttaauurraattiioonn ddee qquueellqquueess--uunnss oouu ddee ttoouuss lleess ssoouuss--ssyyssttèèmmeess La commande linuxconf --extract [ sub-system ... ] permet de restaurer le fichier de configuration de quelques sous- systèmes. Si l'on omet de donner les noms des sous-systèmes, alors tous les sous-systèmes sont restaurés.