<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://blog.pierre-numerique.org/index.php/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>Vu et Entendu... - Tag - Unix</title>
  <link>http://blog.pierre-numerique.org/index.php/</link>
  <atom:link href="http://blog.pierre-numerique.org/index.php/feed/tag/Unix/rss2" rel="self" type="application/rss+xml"/>
  <description>Le Blog de Pierre Numérique !</description>
  <language>fr</language>
  <pubDate>Thu, 08 Jan 2009 23:06:52 +0100</pubDate>
  <copyright>Pierre Numérique</copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>Yet anOther Desktop Manager 3D</title>
    <link>http://blog.pierre-numerique.org/index.php/post/2007/03/22/Yet-anOther-Desktop-Manager-3D</link>
    <guid isPermaLink="false">urn:md5:28a1afb82e5b50256b2183edcfa23dc1</guid>
    <pubDate>Thu, 22 Mar 2007 19:29:00 +0100</pubDate>
    <dc:creator>Pierre</dc:creator>
        <category>Logiciels</category>
        <category>3D</category><category>Bureau</category><category>Gadget</category><category>Gestionnaire</category><category>Linux</category><category>MacOS X</category><category>Microsoft</category><category>Unix</category><category>Virtuel</category><category>Windows</category><category>Yom</category>    
    <description>&lt;p&gt;Une gestion des bureaux virtuels... en 3 dimensions ! &lt;img src=&quot;/themes/default/smilies/wink.png&quot; alt=&quot;;-)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;    &lt;p&gt;Systématiquement présent dans les différents &lt;a href=&quot;http://fr.wikipedia.org/wiki/Window Manager&quot;&gt;Window Manager
&lt;/a&gt; des systèmes &lt;a href=&quot;http://fr.wikipedia.org/wiki/Unix&quot;&gt;Unix
&lt;/a&gt; et &lt;a href=&quot;http://fr.wikipedia.org/wiki/Linux&quot;&gt;Linux
&lt;/a&gt; (pour Mac OS X je ne sais pas), les bureaux virtuels sont par défaut absents des système Windows. &lt;a href=&quot;http://fr.wikipedia.org/wiki/Microsoft&quot;&gt;Microsoft
&lt;/a&gt; propose néanmoins son &lt;a href=&quot;http://www.microsoft.com/windowsxp/downloads/powertoys/xppowertoys.mspx&quot;&gt;Virtual Desktop Manager&lt;/a&gt; parmi ses Power Toys, mais celui que je vous présente aujourd&amp;quot;hui, &lt;a href=&quot;http://chsalmon.club.fr/index.php?fr/Yod-m-3d-presentation&quot;&gt;Yod'm 3D&lt;/a&gt; a la particularité d'ajouter la 3 ème dimension à votre bureau !&lt;/p&gt;


&lt;p&gt;C'est un peu gadget, mais les effets de rotation du cube contenant vos différents bureaux vrtuels sont saisissant...  Certains trouveront ça un peu gadget... mais moi j'adore ! &lt;img src=&quot;/themes/default/smilies/wink.png&quot; alt=&quot;;-)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;


&lt;p&gt;Je vous laisse en juger par vous même en téléchargeant le logiciel sur le &lt;a href=&quot;http://chsalmon.club.fr/index.php?fr/Yod-m-3d-presentation&quot;&gt;site de l'auteur&lt;/a&gt;. Rien à installer, donc pas de risque de créer de perturbations dans votre système !&lt;/p&gt;


&lt;p&gt;&lt;strong&gt;Source :&lt;/strong&gt; &lt;a href=&quot;http://www.journaldugeek.com/index.php?2007/03/21/6196-yet-another-desktop-manager-3d&quot;&gt;Le Journal du Geek&lt;/a&gt;&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.pierre-numerique.org/index.php/post/2007/03/22/Yet-anOther-Desktop-Manager-3D#comment-form</comments>
      <wfw:comment>http://blog.pierre-numerique.org/index.php/post/2007/03/22/Yet-anOther-Desktop-Manager-3D#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.pierre-numerique.org/index.php/feed/atom/comments/1133</wfw:commentRss>
      </item>
    
  <item>
    <title>Domaines virtuels avec Postfix</title>
    <link>http://blog.pierre-numerique.org/index.php/post/2005/11/08/521-domaines-virtuels-avec-postfix</link>
    <guid isPermaLink="false">urn:md5:cd1551cd4c5f941589ac53ac297ee16c</guid>
    <pubDate>Tue, 08 Nov 2005 23:58:00 +0000</pubDate>
    <dc:creator>Pierre</dc:creator>
        <category>Linux</category>
        <category>Configuration</category><category>Domaine</category><category>Geek</category><category>Linux</category><category>Postfix</category><category>Unix</category><category>Virtuel</category>    
    <description>&lt;p&gt;Une petite modif de la configuration de mon &lt;a href=&quot;http://www.postfix.org/&quot;&gt;Postfix&lt;/a&gt; afin d'héberger plusieurs domaines&lt;/p&gt;    &lt;p&gt;Suite à l'hébergement d'un nouveau domaine pour le site Web de mon petit frère Thomas pour le BDE de son école, j'ai reçu un mail destiné à webmaster@domaine.com mais qui, vu la configuration sommaire de ma messagerie.. a fini dans ma boîte aux lettres...  &lt;img src=&quot;/themes/default/smilies/sad.png&quot; alt=&quot;:(&quot; class=&quot;smiley&quot; /&gt; Heureusement il n'y en a eu qu'un, mais ceci m'a conforté dans le fait qu'il fallait que je fasse quelque chose !&lt;/p&gt;


&lt;p&gt;J'ai donc fait quelques recherches sur la toile et après avoir laissé de côté les diverses  solutions à base de &lt;a href=&quot;http://www.mysql.com&quot;&gt;MySQL&lt;/a&gt; et autres &lt;acronym title=&quot;Lightweight Directory Access Protocol&quot;&gt;LDAP&lt;/acronym&gt; que je trouvais un peu lourdes dans le cadre d'un serveur personnel... Je suis tombé sur le Howto qui va bien : &lt;a href=&quot;http://x.guimard.free.fr/postfix/index.php?page=VIRTUAL_README.html&quot;&gt;hébergement de  sites virtuels avec Postfix&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Grosso modo, la problématique est simple... J'héberge 3 domaines sur ma machine : &lt;em&gt;toto.com&lt;/em&gt;, &lt;em&gt;titi.com&lt;/em&gt;, &lt;em&gt;tata.com&lt;/em&gt; et dans la configuration qui était en place, quelque soit le domaine, un mail envoyé à un utilisateur &lt;em&gt;user@toto.com&lt;/em&gt; arrivait dans la même boîte aux lettres que &lt;em&gt;user@titi.com&lt;/em&gt; ou &lt;em&gt;user@tata.com&lt;/em&gt;. Mon but étant bien entendu de distinguer ces 3 adresses pour qu'un mail envoyé à ces trois adresses arrive dans trois boîtes aux lettres différentes... !&lt;/p&gt;


&lt;p&gt;Dans un premier temps j'ai donc modifié le fichier &lt;em&gt;/etc/postfix/main.cf&lt;/em&gt; en remplaçant la ligne&lt;/p&gt;


&lt;pre&gt;mydestination = $mydomain, $myhostname, localhost.$mydomain, $myhostname.toto.com titi.com tata.com&lt;/pre&gt;


&lt;p&gt;par&lt;/p&gt;


&lt;pre&gt;mydestination = $mydomain, $myhostname, localhost.$mydomain, $myhostname.toto.com&lt;/pre&gt;


&lt;p&gt;ou $mydomain=toto.com&lt;/p&gt;


&lt;p&gt;j'ai ensuite créé les deux domaines virtuels &lt;em&gt;titi.com&lt;/em&gt; et &lt;em&gt;tata.com&lt;/em&gt; en ajoutant les lignes suivantes :&lt;/p&gt;


&lt;pre&gt;virtual_mailbox_domains = titi.com tata.com
virtual_mailbox_base = /virtual
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
virtual_minimum_uid = 100
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
virtual_alias_maps = hash:/etc/postfix/virtual&lt;/pre&gt;


&lt;p&gt;Le domaine &lt;em&gt;toto.com&lt;/em&gt;  n'est pas impacté par l'ensemble de ces manipulations.&lt;/p&gt;


&lt;p&gt;Une fois ces lignes ajoutées, les messages à destination des domaines &lt;em&gt;titi.com&lt;/em&gt; et &lt;em&gt;tata.com&lt;/em&gt; seront délivrés en toute indépendance des utilisateurs Unix du serveur.&lt;/p&gt;


&lt;p&gt;Lorsqu'un mail va arriver à destination de user@titi.com, Postfix va aller consulter ces deux &lt;em&gt;maps&lt;/em&gt; /etc/postfix/vmailbox et /etc/postfix/virtual afin de savoir ce qu'il faut faire.&lt;/p&gt;


&lt;p&gt;on renseigne donc ces deux fichiers :&lt;/p&gt;


&lt;pre&gt;cat /etc/postfix/vmailbox
webmaster@titi.com   titi.com/webmaster/Maildir/
admin@titi.com  titi.com/admin/Maildir/
webmaster@tata.com   tata.com/webmaster/Maildir/
admin@tata.com  tata.com/admin/Maildir/&lt;/pre&gt;


&lt;pre&gt;         
cat /etc/postfix/virtual
@tata.com  user@tutu.com
mailing@titi.com user1@domain1.com, user2@domain2.com, user3@domain3.com&lt;/pre&gt;


&lt;p&gt;on crée l'arobrescence /virtual/titi.com ...&lt;/p&gt;


&lt;pre&gt;mkdir -p /virtual/titi.com/webmaster /virtual/tata.com/webmaster /virtual/titi.com/admin /virtual/tata.com/admin&lt;/pre&gt;


&lt;p&gt;puis les Maildir pour chaque utilisateur virtuel (dans le cas de Mailbox, seul /virtual/titi.com/ /virtual/tata.com/ sont à créer à priori)&lt;/p&gt;


&lt;pre&gt;maildirmake /virtual/tata.com/webmaster/Maildir/ ...&lt;/pre&gt;


&lt;p&gt;L'utilisateur Unix propriétaire de ces répertoires est alors créé&lt;/p&gt;


&lt;pre&gt;groupadd -g 5000 vmail
useradd -g vmail -u 5000 vmail -d /virtual -m&lt;/pre&gt;


&lt;p&gt;Et enfin Postfix est redémarré :&lt;/p&gt;


&lt;pre&gt;/etc/init.d/postfix restart&lt;/pre&gt;


&lt;p&gt;A la suite de ça, si tout a été fait correctement, les comportements vont être les suivants :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;les mails à destination de &lt;em&gt;user@toto.com&lt;/em&gt; seront délivrés comme ils l'étaient avant.&lt;/li&gt;
&lt;li&gt;Les mails à destination de &lt;em&gt;webmaster@titi.com&lt;/em&gt;, &lt;em&gt;admin@titi.com&lt;/em&gt;, &lt;em&gt;webmaster@tata.com&lt;/em&gt; et &lt;em&gt;admin@tata.com&lt;/em&gt; seront déposées dans les boîtes aux lettres virtuelles correspondantes&lt;/li&gt;
&lt;li&gt;Tous les autres mails à destination du domaine &lt;em&gt;tata.com&lt;/em&gt; seront reroutés vers l'adresse &lt;em&gt;user@tutu.com&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Les mails à destination de  &lt;em&gt;mailing@titi.com&lt;/em&gt; seront reroutés vers &lt;em&gt;user1@domain1.com&lt;/em&gt;, &lt;em&gt;user2@domain2.com&lt;/em&gt; et &lt;em&gt;user3@domain3.com&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Tous les autres mails à destination de titi.com seront notifiés &amp;quot;User Unknown&amp;quot; par le système de messagerie.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;En ce qui me concerne, j'ai pour l'instant laissé de côté la partie boîtes virtuelles, il faut en effet que je potasse la configuration du serveur &lt;a href=&quot;http://www.imap.org/&quot;&gt;&lt;acronym title=&quot;Internet Message Access Protocol&quot;&gt;IMAP&lt;/acronym&gt;&lt;/a&gt; que j'utilise : &lt;a href=&quot;http://www.courier-mta.org/imap/&quot;&gt;Courier-Imap&lt;/a&gt;. Donc pour le moment, c'est uniquement un systèe de redirections que j'utilise. Vu que la majorité des mails sont pour moi, je vais pas non plus multiplier les compte de messageries...! Par contre, c'est pratique car ça permet de multiplier les adresses mail afin de savoir d'où provient le mail et de pouvoir faire du tri et du filtrage facilement :&lt;/p&gt;


&lt;p&gt;Par exemple, pour chaque site où je rentre mon mail, je mets le nom du site en lieu et place de ma véritable adresse, cela permet de déceler par quel intermédiaire mon adresse a pu être spammée (par exemple) ou de classer mes mails en fonction du destinataire... Et bien d'autres choses encore... &lt;img src=&quot;/themes/default/smilies/smile.png&quot; alt=&quot;:-)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.pierre-numerique.org/index.php/post/2005/11/08/521-domaines-virtuels-avec-postfix#comment-form</comments>
      <wfw:comment>http://blog.pierre-numerique.org/index.php/post/2005/11/08/521-domaines-virtuels-avec-postfix#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.pierre-numerique.org/index.php/feed/atom/comments/493</wfw:commentRss>
      </item>
    
  <item>
    <title>Création d'un Ramdisk sous Solaris</title>
    <link>http://blog.pierre-numerique.org/index.php/post/2004/12/20/65-creation-dun-ramdisk-sous-solaris</link>
    <guid isPermaLink="false">urn:md5:9807d09e8f450dbadef3a912e9a123e6</guid>
    <pubDate>Mon, 20 Dec 2004 17:10:00 +0000</pubDate>
    <dc:creator>Pierre</dc:creator>
        <category>Solaris</category>
        <category>File System</category><category>Mémoire</category><category>Ramdisk</category><category>Solaris</category><category>Système</category><category>Unix</category>    
    <description>&lt;p&gt;Les différentes étapes nécessaires à la création d'un File System en &lt;acronym&gt;RAM&lt;/acronym&gt; sous Solaris 9&lt;/p&gt;    &lt;p&gt;Lors de leur fonctionnement, certaines applications, ont besoin de générer des fichiers temporaires pour le traitement de leur données. Ces fichiers temporaires sont habituellement créés dans un répertoire de travail, tel /tmp ou /var/tmp. Ces fichiers n'étant que des données temporaires, ils sont généralement supprimés après leur traitement, dans le cas contraire, il est nécessaire de mettre en place une purge régulière du répertoire de travail. Au delà d'une certaine charge, les accès au disque peuvent devenir important et auraient tendance à ralentir les performances globales du serveur, il peut alors être utile dans ce cas, et lorsque les ressources du serveur sont suffisantes en terme de mémoire, de travaille sur un système de fichiers virtuel monté en &lt;acronym&gt;RAM&lt;/acronym&gt;, aussi appelé ramdisk.&lt;/p&gt;


&lt;h5&gt;Création d'un Ramdisk :&lt;/h5&gt;


&lt;p&gt;Le périphérique est créé à l'aide de la commande &lt;em&gt;&lt;a href=&quot;http://docs.sun.com/app/docs/doc/817-0690/6mgflntjs?l=fr&amp;a=view&quot; hreflang=&quot;en&quot;&gt;ramdiskadm (1M)&lt;/a&gt;&lt;/em&gt; à laquelle on précise le nom et la taille du device :&lt;/p&gt;


&lt;p&gt;par exemple, pour crééer un ramdisk de 512 Mo nommé &lt;em&gt;virtualdisk&lt;/em&gt; on lancera la commande :&lt;/p&gt;


&lt;pre&gt;ramdiskadm -a &lt;strong&gt;virtualdisk&lt;/strong&gt;  &lt;strong&gt;512m&lt;/strong&gt;&lt;/pre&gt;


&lt;p&gt;Il est alors nécessaire de construire un système de fichiers sur ce nouveau périphérique à l'aide de la commande &lt;em&gt;&lt;a href=&quot;http://docs.sun.com/app/docs/doc/817-0690/6mgflntgq?l=fr&amp;q=newfs&amp;a=view&quot; hreflang=&quot;en&quot;&gt;newfs (1M)&lt;/a&gt;&lt;/em&gt; :&lt;/p&gt;


&lt;pre&gt;echo y | newfs /dev/rramdisk/&lt;strong&gt;virtualdisk&lt;/strong&gt;&lt;/pre&gt;


&lt;p&gt;Le point de montage est créé à l'aide de la commande &lt;em&gt;&lt;a href=&quot;http://docs.sun.com/app/docs/doc/817-0689/6mgfkpcto?l=fr&amp;q=mkdir&amp;a=view&quot; hreflang=&quot;en&quot;&gt;mkdir (1)&lt;/a&gt;&lt;/em&gt; et le système de fichiers monté avec la commande &lt;em&gt;&lt;a href=&quot;http://docs.sun.com/app/docs/doc/817-0690/6mgflntg1?l=fr&amp;q=newfs&amp;a=view&quot; hreflang=&quot;en&quot;&gt;mount (1M)&lt;/a&gt;&lt;/em&gt; :&lt;/p&gt;


&lt;pre&gt;mkdir -p /ramdisk/&lt;strong&gt;virtualdisk&lt;/strong&gt;
mount /dev/ramdisk/&lt;strong&gt;virtualdisk&lt;/strong&gt; /ramdisk/&lt;strong&gt;virtualdisk&lt;/strong&gt;&lt;/pre&gt;


&lt;p&gt;Il est alors possible d'utiliser le système de fichiers de la même manière que s'il était sur disque, à la différence près que les données écrites sur ce file system ne survivront pas à un redémarrage du serveur.&lt;/p&gt;


&lt;h5&gt;Suppression d'un Ramdisk :&lt;/h5&gt;


&lt;p&gt;La suppression d'un ramdisk créé précédemment se fait en effectuant les étapes inverses de celles effectuées lors de la création.&lt;/p&gt;


&lt;p&gt;Le démontage du File System est effectuée à l'aide de la commande &lt;em&gt;&lt;a href=&quot;http://docs.sun.com/app/docs/doc/805-8067/6j7j82mrd?q=umount&amp;a=view&quot; hreflang=&quot;en&quot;&gt;umount (1M)&lt;/a&gt;&lt;/em&gt; et le point de montage est supprimé avec la commande &lt;em&gt;&lt;a href=&quot;http://docs.sun.com/app/docs/doc/805-8066/6j7j7466f?q=rmdir&amp;a=view&quot; hreflang=&quot;en&quot;&gt;rmdir&lt;/a&gt;&lt;/em&gt;:&lt;/p&gt;


&lt;pre&gt;umount /ramdisk/&lt;strong&gt;virtualdisk&lt;/strong&gt;
rmdir /ramdisk/&lt;strong&gt;virtualdisk&lt;/strong&gt;&lt;/pre&gt;


&lt;pre&gt;Le ramdisk est supprimé par la commande '&lt;a href=&quot;http://docs.sun.com/app/docs/doc/817-0690/6mgflntjs?l=fr&amp;a=view&quot; hreflang=&quot;en&quot;&gt;ramdiskadm (1M)&lt;/a&gt;'' :&lt;/pre&gt;


&lt;pre&gt;ramdiskadm -d &lt;strong&gt;virtualdisk&lt;/strong&gt;&lt;/pre&gt;


&lt;h5&gt;Automatisation lors du démarrage du serveur.&lt;/h5&gt;


&lt;p&gt;Afin de s'affranchir de toutes opérations manuelles, la création et suppression des ramdisk ont été automatisés dans le script &lt;a href=&quot;http://www.pierre-numerique.org/downloads/Solaris/scripts/ramdisk/ramdisk&quot;&gt;ramdisk&lt;/a&gt;. Ce script est placé dans le répertoire /etc/init.d, et des liens sont effectués dans /etc/rc2.d et/tsc/rc3.d afin que cela soit pris en compte au démarrage.&lt;/p&gt;


&lt;pre&gt;ln -s /etc/init.d/ramdisk /etc/rc3.d/S99ramdisk
ln -s /etc/init.d/ramdisk /etc/rc2.d/K01ramdisk&lt;/pre&gt;


&lt;p&gt;Ainsi les ramdisk définis dans le script de démarrage seront automatiquement créés au démarrage et supprimés lors de l'arrêt du serveur.&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.pierre-numerique.org/index.php/post/2004/12/20/65-creation-dun-ramdisk-sous-solaris#comment-form</comments>
      <wfw:comment>http://blog.pierre-numerique.org/index.php/post/2004/12/20/65-creation-dun-ramdisk-sous-solaris#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.pierre-numerique.org/index.php/feed/atom/comments/51</wfw:commentRss>
      </item>
    
  <item>
    <title>Synchronisation de répertoires distants</title>
    <link>http://blog.pierre-numerique.org/index.php/post/2004/10/27/11-synchronisation-de-repertoires-distants</link>
    <guid isPermaLink="false">urn:md5:62bb4158bc81c260963aeb00eb5fb5b0</guid>
    <pubDate>Wed, 27 Oct 2004 13:31:00 +0000</pubDate>
    <dc:creator>Pierre</dc:creator>
        <category>Solaris</category>
        <category>15K</category><category>Administration</category><category>Sun Fire</category><category>Système</category><category>Unix</category>    
    <description>&lt;p&gt;ce billet fait suite à celui décrivant &lt;a href=&quot;http://blog.pierre-numerique.org/index.php/2004/10/25/6-mise-en-place-dune-sauvegarde-systeme-automatisee-sur-un-sunfire-15k&quot; hreflang=&quot;fr&quot;&gt;la sauvegarde système des domaines d'un SunFire 15K&lt;/a&gt;, et décrit la mise en place d'une synchronisation du répertoire de sauvegarde avec le deuxième &lt;acronym&gt;SC&lt;/acronym&gt; du 15K&lt;/p&gt;    &lt;h4&gt;Description globale de la réplication&lt;/h4&gt;


&lt;p&gt;Plutôt que de sauvegarder sur bande les fichiers générés et de nécessiter une intervention manuelle, le répertoire de backup sera répliqué sur le deuxième system controller du SunFire 15K.
La synchronisation des deux serveurs sera effectuée à l'aide de l'utilisatire &lt;em&gt;&lt;a href=&quot;http://rsync.samba.org/&quot; hreflang=&quot;en&quot;&gt;rsync&lt;/a&gt;&lt;/em&gt;.&lt;/p&gt;


&lt;p&gt;Dans la suite du document, on effectuera donc la synchronisation du &lt;em&gt;sf15k01sc1&lt;/em&gt; sur le &lt;em&gt;sf15k01sc0&lt;/em&gt;. Le &lt;em&gt;sf15k01sc0&lt;/em&gt; sera donc considéré comme Maître et le &lt;em&gt;sf15k01sc1&lt;/em&gt; comme Esclave. En tout état de cause, toutes les modifications devront être faites sur le serveur maître (&lt;em&gt;sf15k01sc0&lt;/em&gt;), sous peine d’être supprimées lors de la synchronisation.&lt;/p&gt;



&lt;h4&gt;Pré requis à la mise en place de cette  réplication&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;La commande rsync doit être présente sur chacun des serveurs.&lt;/li&gt;
&lt;li&gt;Un espace de stockage suffisant doit être créé sur chaque serveur&lt;/li&gt;
&lt;li&gt;Les clefs ssh des utilisateurs effectuant cette réplication (&lt;em&gt;root&lt;/em&gt; dans notre cas) doivent avoir été configurées pour permettre l'autologin.&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;Installation de rsync&lt;/h4&gt;


&lt;p&gt;La version de Solaris isntallée sur les &lt;acronym&gt;SC&lt;/acronym&gt; n'inclut pas l'utilisatire &lt;em&gt;rsync&lt;/em&gt;, par conséquent, celui ci sera installé depuis le package  &lt;a href=&quot;http://www.pierre-numerique.org/downloads/Solaris/packages/2.8/rsync-2.6.3-sol8-sparc-local.gz&quot;&gt;rsync-2.6.3-sol8-sparc-local&lt;/a&gt; librement téléchargeable sur le site &lt;a href=&quot;http://www.sunfreeware.com&quot; hreflang=&quot;en&quot;&gt;Sunfreeware.com&lt;/a&gt;. A noter que le package &lt;a href=&quot;http://www.pierre-numerique.org/downloads/Solaris/packages/2.8/popt-1.7-sol8-sparc-local.gz&quot;&gt;popt-1.7-sol8-sparc-local&lt;/a&gt; doit également être installé.&lt;/p&gt;


&lt;p&gt;L'installation du package se fait de façon classique :&lt;/p&gt;


&lt;p&gt;Décompression des paquets :&lt;/p&gt;


&lt;pre&gt;gunzip /tmp/popt-1.7-sol8-sparc-local.gz
gunzip /tmp/rsync-2.6.3-sol8-sparc-local.gz&lt;/pre&gt;

&lt;p&gt;Puis installation de ceux ci à l'aide de la comande &lt;em&gt;pkgadd&lt;/em&gt; :&lt;/p&gt;


&lt;pre&gt;pkgadd -d /tmp/popt-1.7-sol8-sparc-local
pkgadd -d /tmp/rsync-2.6.3-sol8-sparc-local&lt;/pre&gt;


&lt;p&gt;l'ensemble des données à synchroniser entre les deux &lt;acronym&gt;SC&lt;/acronym&gt; sont situées dans le répertoire &lt;em&gt;/export/install&lt;/em&gt;.&lt;/p&gt;


&lt;h4&gt;Configuration de l'autologin &lt;acronym&gt;SSH&lt;/acronym&gt;&lt;/h4&gt;


&lt;p&gt;Création des clefs publiques et privés sur chaque serveur :&lt;/p&gt;


&lt;pre&gt;/usr/local/bin/ssh-keygen -t rsa&lt;/pre&gt;


&lt;p&gt;Puis copie de la clef publique dans le fichier &lt;em&gt;authorized_keys&lt;/em&gt; du serveur distant afin de permettre l'autologin :&lt;/p&gt;


&lt;pre&gt;/usr/local/bin/ssh root@10.0.66.120 &amp;lt; .ssh/id_rsa.pub '[ ! -d ${HOME}/.ssh ] &amp;amp;&amp;amp; mkdir -p ${HOME}/.ssh ;\ &lt;br /&gt; cat  &amp;gt;&amp;gt; .ssh/authorized_keys'&lt;/pre&gt;


&lt;p&gt;L'opération est réalisée sur les deux &lt;acronym&gt;SC&lt;/acronym&gt; et on vérifie que l'autologin est effectif.&lt;/p&gt;


&lt;h4&gt;Mise en place de la synchronisation&lt;/h4&gt;


&lt;p&gt;La synchronisation est effectuée depuis le (ou les serveur(s) esclave(s) à l'aide de la commande suivante :&lt;/p&gt;


&lt;pre&gt;/usr/local/bin/rsync -a --delete  --rsh=&amp;quot;ssh -l root&amp;quot; root@10.0.147.212:/export/install/ /export/install/&lt;/pre&gt;


&lt;p&gt;On prendra bien soin de ne pas omettre le &amp;quot;/&amp;quot; final après chaque nom de répertoire afin de copier le contenu du répertoire, et nom le répertoire lui même, sans quoi, l'arborescence ne sera pas identique sur le serveur cible.
La première exécution effectue la copie de tous les fichiers du serveur Maître vers le serveur Esclave et peut prendre un temps non négligeable. Les exécutions suivantes ne concerneront que les fichiers modifiés depuis la dernière synchronisation. Un nombre de fichiers élevé dans le répertoire conduira cependant à un temps d'exécution relativement important.
Cette commande peut alors ête ajoutée à la crontab pour une exécution quotidienne.&lt;/p&gt;


&lt;p&gt;L'option &lt;strong&gt;-a&lt;/strong&gt; correspond au mode &lt;em&gt;Archive&lt;/em&gt; et l'équivalent de l'ensemble des options : -rlptgoD
L'option &lt;strong&gt;--delete&lt;/strong&gt;  permet la supression des fichiers qui ne sont pas présents sur le serveur maître, et nous assure d'avoir le même contenu sur l'ensemble des serveurs.
L'ensemble des options existantes est décrite dans la &lt;a href=&quot;http://rsync.samba.org/ftp/rsync/rsync.html&quot; hreflang=&quot;en&quot;&gt;page de man de rsync&lt;/a&gt;&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.pierre-numerique.org/index.php/post/2004/10/27/11-synchronisation-de-repertoires-distants#comment-form</comments>
      <wfw:comment>http://blog.pierre-numerique.org/index.php/post/2004/10/27/11-synchronisation-de-repertoires-distants#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.pierre-numerique.org/index.php/feed/atom/comments/10</wfw:commentRss>
      </item>
    
  <item>
    <title>Installation OpenSSH sur Solaris 8</title>
    <link>http://blog.pierre-numerique.org/index.php/post/2004/10/25/12-installation-openssh-sur-solaris-8</link>
    <guid isPermaLink="false">urn:md5:4430fb6f9d2f6f05d7f33306c6671b0b</guid>
    <pubDate>Mon, 25 Oct 2004 15:36:00 +0000</pubDate>
    <dc:creator>Pierre</dc:creator>
        <category>Solaris</category>
        <category>Administration</category><category>Installation</category><category>Openssh</category><category>Solaris</category><category>Système</category><category>Unix</category>    
    <description>&lt;p&gt;Description de l'installation d'OpenSSh Version 3.5p1 ainsi que de ses dépendances sur une plateforme Solaris 8&lt;/p&gt;    &lt;h3&gt;Prérequis à l'installation d'OpenSSH&lt;/h3&gt;



&lt;p&gt;Afin de satisfaire les dépendances requises package openssh version 3.5p1, les packages suivants devront être installés :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.pierre-numerique.org/downloads/Solaris/packages/2.8/openssl-0.9.6g-sol8-sparc-local.gz&quot;&gt;openssl version 0.9.6g&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.pierre-numerique.org/downloads/Solaris/packages/2.8/libgcc-3.2-sol8-sparc-local.gz&quot;&gt;libgcc version 3.2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;et le package &lt;a href=&quot;http://www.pierre-numerique.org/downloads/Solaris/packages/2.8/openssh-3.5p1-sol8-sparc-local.gz&quot;&gt;openssh version 3.5p1&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;L'ensemble des packages ont été téléchargés sur le site &lt;a href=&quot;http://www.sunfreeware.com&quot; hreflang=&quot;en&quot;&gt;SunFreeware.Com&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Selon la version des patchs du système, il peut s'avérer nécessaire d'installer le patch système &lt;a href=&quot;http://www.pierre-numerique.org/downloads/Solaris/patches/2.8/112438-03.zip&quot;&gt;112438&lt;/a&gt; (Random Patches). Cette installation est nécessaire au bon fonctionnement du serveur sshd . La dernière version de ce patch est disponible sur le site du constructeur &lt;a href=&quot;http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/patch-access&quot; hreflang=&quot;en&quot;&gt;SUN&lt;/a&gt;.&lt;/p&gt;


&lt;h3&gt;Description de l'installation&lt;/h3&gt;


&lt;h4&gt;Eventuelle installation du patch 112438&lt;/h4&gt;


&lt;p&gt;Si le patch 112438 est installé, la commande :&lt;/p&gt;


&lt;pre&gt;showrev –p | grep 112438&lt;/pre&gt;


&lt;p&gt;doit renvoyer une sorie du type :&lt;/p&gt;


&lt;pre&gt;Patch: 112438-01 Obsoletes:  Requires:  Incompatibles:  Packages: SUNWcarx, SUNWcsr, SUNWmdb, SUNWmdbx, SUNWhea&lt;/pre&gt;


&lt;p&gt;Si c'est la cas, toute la partie concernant l'installation du patch peut être ignorée, sinon on procédera à l'installation du patch de manière classique.&lt;/p&gt;


&lt;p&gt;L’installation du patch proprement dit se fait de manière classique :&lt;/p&gt;


&lt;pre&gt;patchadd –M /tmp 112438-01&lt;/pre&gt;


&lt;p&gt;L’installation du patch nécessite un redémarrage du serveur pour que celui ci effectue la reconstruction des ses périphériques (fichiers présents dans /dev et /devices). Cependant dans le cas d’un serveur de production, où un redémarrage ne peut pas être envisagé, il est possible d’effectuer les opérations de façon manuelle et sans perturber le service.
L’opération va consister à charger le driver « Random » dans le noyau et à créer les devices correspondant.&lt;/p&gt;


&lt;p&gt;On passe donc les commandes suivantes afin de s'assurer que le driver n'est plus présent dans le noyau :&lt;/p&gt;


&lt;pre&gt;rem_drv random&lt;/pre&gt;


&lt;p&gt;Cette première commande produira vraisemblablement une erreur, elle est uniquement là pour s’assurer que le driver n’a pas été préalablement enregistré auprès du système, et permet de s’assurer que la commande suivante enregistrera le driver correctement au niveau du système.&lt;/p&gt;


&lt;pre&gt;add_drv random&lt;/pre&gt;


&lt;p&gt;Cette commande permet d’enregistrer le driver auprès du système d’exploitation. On vérifiera le code de retour de cette dernière :&lt;/p&gt;


&lt;pre&gt;echo $?&lt;/pre&gt;


&lt;p&gt;Et on s’assurera que celui ci est égal à 0&lt;/p&gt;


&lt;p&gt;Ensuite, afin de pouvoir créer les périphériques il est nécessaire de récupérer le major correspondant dans le fichier /etc/name_to_major.&lt;/p&gt;


&lt;pre&gt;MAJOR=$(grep -w random /etc/name_to_major | awk '{print $2}')&lt;/pre&gt;


&lt;p&gt;Les devices sont créés via la commande suivante :&lt;/p&gt;


&lt;pre&gt;mknod /devices/pseudo/@0:random c ${MAJOR} 0
mknod /devices/pseudo/@0:urandom c ${MAJOR} 1&lt;/pre&gt;



&lt;p&gt;On leur donne les bons droits (au niveau du groupe)&lt;/p&gt;


&lt;pre&gt;chgrp sys /devices/pseudo/*random*&lt;/pre&gt;


&lt;p&gt;puis on crée les liens dans /dev :&lt;/p&gt;


&lt;pre&gt;ln -s ../devices/pseudo/random@0:random /dev/random
ln –s ../devices/pseudo/random@0:urandom /dev/urandom&lt;/pre&gt;


&lt;p&gt;Le chargement du driver dans le noyau est alors effectué :&lt;/p&gt;


&lt;pre&gt;modload /kernel/drv/random&lt;/pre&gt;


&lt;h4&gt;Arrêt des services et désinstallation des packages préalablement installés ( mise à jour )&lt;/h4&gt;


&lt;p&gt;Dans le cas d’une installation et non d’une mise à jour, cette étape sera omise&lt;/p&gt;


&lt;p&gt;Les démons qui seront mis à jour doivent être arrêtés avant d’effectuer la mise à jour. Par conséquent, à partir de l’étape suivante, il est nécessaire d’effectuer une connexion sur la console, ou via le protocole telnet.&lt;/p&gt;


&lt;p&gt;Arrêt du démond prngd :&lt;/p&gt;


&lt;p&gt;/etc/init.d/prngd stop&lt;/p&gt;


&lt;p&gt;Arrêt du démond sshd :&lt;/p&gt;


&lt;pre&gt;/etc/init.d/sshd stop&lt;/pre&gt;

&lt;p&gt;L’opération est effectuée  à l’aide de la commande pkgrm :&lt;/p&gt;


&lt;pre&gt;pkgrm –n SMCossh
pkgrm –n SMCprngd
pkgrm –n SMCosslc&lt;/pre&gt;


&lt;p&gt;Lors de l’opération si une confirmation d’effacement est demandée, on répondra de manière affirmative (yes).&lt;/p&gt;


&lt;h4&gt;Installation des nouveau packages et démarrage des services&lt;/h4&gt;


&lt;h5&gt;Décompression des paquets téléchargés :&lt;/h5&gt;

&lt;pre&gt;
gunzip /tmp/openssh-3.5p1-sol8-sparc-local.gz
gunzip /tmp/openssl-0.9.6g-sol8-sparc-local.gz
gunzip /tmp/libgcc-3.2-sol8-sparc-local.gz&lt;/pre&gt;


&lt;h5&gt;puis installation des paquetages :&lt;/h5&gt;


&lt;pre&gt;pkgadd -d /tmp/openssl-0.9.6g-sol8-sparc-local
pkgadd -d /tmp/openssh-3.5p1-sol8-sparc-local
pkgadd -d /tmp/libgcc-3.2-sol8-sparc-local&lt;/pre&gt;



&lt;p&gt;On s'assure que le scripts de démarrage &lt;a href=&quot;http://www.pierre-numerique.org/downloads/Solaris/scripts/openssh/sshd&quot;&gt;sshd&lt;/a&gt; est bien présent dans /etc/init.d et que le lien a bien été mis en place dans /etc/rc2.d :&lt;/p&gt;


&lt;pre&gt;ln /etc/init.d/sshd /etc/rc2.dS99sshd&lt;/pre&gt;


&lt;h5&gt;Ajout d'un utilisateur sshd&lt;/h5&gt;


&lt;pre&gt;mkdir /var/empty
chown root:sys /var/empty
chmod 755 /var/empty
groupadd sshd
useradd -g sshd -c 'sshd privsep' -d /var/empty -s /bin/false sshd&lt;/pre&gt;


&lt;p&gt;/var/empty should not contain any files.&lt;/p&gt;


&lt;h5&gt;Génération des clefs publiques et privés du serveur :&lt;/h5&gt;


&lt;pre&gt;/usr/local/bin/ssh-keygen -t rsa1 -f /usr/local/etc/ssh_host_key -N &amp;quot;&amp;quot;
/usr/local/bin/ssh-keygen -t dsa -f /usr/local/etc/ssh_host_dsa_key -N &amp;quot;&amp;quot;
/usr/local/bin/ssh-keygen -t rsa -f /usr/local/etc/ssh_host_rsa_key -N &amp;quot;&amp;quot;&lt;/pre&gt;




&lt;h5&gt;Puis redémarrage du service :&lt;/h5&gt;


&lt;pre&gt;/etc/init.d/sshd start&lt;/pre&gt;


&lt;p&gt;La commande &amp;quot;&lt;strong&gt;ssh -V&lt;/strong&gt;&amp;quot; doit désormais renvoyer &amp;quot;&lt;strong&gt;OpenSSH_3.5p1, SSH protocols 1.5/2.0, OpenSSL 0x0090607f&lt;/strong&gt;&amp;quot;&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.pierre-numerique.org/index.php/post/2004/10/25/12-installation-openssh-sur-solaris-8#comment-form</comments>
      <wfw:comment>http://blog.pierre-numerique.org/index.php/post/2004/10/25/12-installation-openssh-sur-solaris-8#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.pierre-numerique.org/index.php/feed/atom/comments/9</wfw:commentRss>
      </item>
    
  <item>
    <title>Sauvegarde système d'un SunFire 15K</title>
    <link>http://blog.pierre-numerique.org/index.php/post/2004/10/25/6-sauvegarde-systeme-dun-sunfire-15k</link>
    <guid isPermaLink="false">urn:md5:baa30d0c29f11084986622024b4103bb</guid>
    <pubDate>Mon, 25 Oct 2004 14:32:00 +0000</pubDate>
    <dc:creator>Pierre</dc:creator>
        <category>Solaris</category>
        <category>15K</category><category>Sauvegarde</category><category>Solaris</category><category>Sun Fire</category><category>Système</category><category>Unix</category>    
    <description>&lt;p&gt;Description des opérations nécessaires afin de mettre en place une sauvegarde système automatique de 6 domaines d'un SunFire 15K sous Solaris 9.
Le principe consiste à effectuer une sauvegarde des File System / et /usr à l'aide de la commande ufsdump. Cependant, ne disposant pas de lecteur de bandes sur les domaines, chaque File system est sauvegardé dans un fichier compressé situé sur un des System Controller (SC) du 15K.
Une synchronisation des deux System Controller est alors réalisée à l'aide de la commande rsync pour permettre une redondance des données.&lt;/p&gt;    &lt;h3&gt;Sur chaque System Controller&lt;/h3&gt;


&lt;h4&gt;Création des répertoires&lt;/h4&gt;


&lt;p&gt;L'arborescence suivante est créée sous la racine /export/install/exploitation :&lt;/p&gt;

&lt;pre&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;scripts :&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;&lt;p&gt;Exécutables communs à tous les domaines&lt;/p&gt;&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;conf :&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;&lt;p&gt;Fichiers de configuration communs à tous les domaines&lt;/p&gt;&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;cfg/&lt;em&gt;host&lt;/em&gt; :&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;&lt;p&gt;Fichiers de configuration spécifiques au serveur sauvegardé, un répertoire par domaine.&lt;/p&gt;&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;backup/&lt;em&gt;host&lt;/em&gt; :&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;&lt;p&gt;Emplacement des sauvegardes système, propre à chaque serveur,un répertoire par domaine.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;La création des répertoires est réalisée à l'aide des commandes suivantes :&lt;/p&gt;

&lt;pre&gt; 
mkdir /export/install/exploitation/scripts
mkdir /export/install/exploitation/conf&lt;/pre&gt;


&lt;pre&gt;for name in &amp;quot;&lt;em&gt;host1 host2 host3 host4 host5 host6&lt;/em&gt;&amp;quot;
do
     mkdir -p /export/install/exploitation/backups/${name}
     mkdir /export/install/exploitation/cfg/${name}
done&lt;/pre&gt;


&lt;h4&gt;Configuration du serveur  &lt;acronym&gt;NFS&lt;/acronym&gt;&lt;/h4&gt;



&lt;p&gt;Le fichier contenant la liste des File System à exporter doit éventuellement modifié afin de permettre le partage des répertoires créés ci dessus. On s&amp;quot;assurera que la ligne suivante est présente dans le fichier &lt;strong&gt;/etc/dfs/dfstab&lt;/strong&gt; :&lt;/p&gt;


&lt;pre&gt;share -F nfs -o rw,anon=0 /export/install&lt;/pre&gt;


&lt;p&gt;Le cas échéant on modifiera le fichier en conséquences, et on réexportera le réperotire si celui ci l'était déjà :&lt;/p&gt;


&lt;pre&gt;unshare /export/install&lt;/pre&gt;


&lt;pre&gt;share -F nfs -o rw,anon=0 /export/install&lt;/pre&gt;


&lt;p&gt;devient :&lt;/p&gt;


&lt;pre&gt;share -F nfs -o rw,anon=0 /export/install&lt;/pre&gt;


&lt;p&gt;Puis :&lt;/p&gt;


&lt;pre&gt;unshare /export/install/
share -F nfs -o rw,anon=0 /export/install&lt;/pre&gt;


&lt;h4&gt;Mise en place d'une purge automatique des fichiers&lt;/h4&gt;


&lt;p&gt;Une purge automatique des fichiers de sauvegarde est mise en place afin de supprimer les anciens fichiers de sauvegarde.
On ne conservera que deux exemplaires de la sauvegarde système de chaque domaien dans les répertoires /export/install/exploitation/backups/&lt;em&gt;host&lt;/em&gt;.&lt;/p&gt;


&lt;h4&gt;Mise en place le l'utilitaire  logrotate sur les &lt;acronym&gt;SC&lt;/acronym&gt;&lt;/h4&gt;


&lt;h4&gt;Récupération du package :&lt;/h4&gt;

&lt;p&gt;Le package logrotate est récupéré sur le site &lt;a href=&quot;http://www.sunfreeware.com&quot; hreflang=&quot;en&quot;&gt;Sunfreeware.com&lt;/a&gt;
Celui-ci est alors transféré sur chaque system controller du SUnfire 15K et sera installé de la même manière sur les deux.
On installera le package dans la version suivante :&lt;a href=&quot;http://www.pierre-numerique.org/downloads/Solaris/packages/2.8/logrotate-3.6.9-sol8-sparc-local.gz&quot; hreflang=&quot;fr&quot;&gt;logrotate-3.6.9-sol8-sparc-local.gz&lt;/a&gt; ainsi que la dépendance suivante : &lt;a href=&quot;http://www.pierre-numerique.org/downloads/Solaris/packages/2.8/popt-1.7-sol8-sparc-local.gz&quot; hreflang=&quot;fr&quot;&gt;popt-1.7-sol8-sparc-local.gz&lt;/a&gt;&lt;/p&gt;



&lt;h5&gt;Installation du package&lt;/h5&gt;


&lt;p&gt;Les packages sont transférés via &lt;acronym title=&quot;File Transfer Protocol&quot;&gt;FTP&lt;/acronym&gt; sur chaque Sytem Controller :&lt;/p&gt;


&lt;pre&gt;cd /tmp
gunzip logrotate-3.6.9-sol8-sparc-local.gz
pkgadd -d logrotate-3.6.9-sol8-sparc-local&lt;/pre&gt;


&lt;pre&gt;gunzip popt-1.7-sol8-sparc-local.gz
pkgadd -d popt-1.7-sol8-sparc-local&lt;/pre&gt;


&lt;h5&gt;Configuration de logrotate&lt;/h5&gt;


&lt;p&gt;On ajoute le fichier &lt;strong&gt;&lt;a href=&quot;http://www.pierre-numerique.org/downloads/Solaris/scripts/backup15K/backups&quot;&gt;backups&lt;/a&gt;&lt;/strong&gt; dans le répertoire /etc/logrotate.d.&lt;/p&gt;

&lt;pre&gt;&lt;/pre&gt;


&lt;h5&gt;Configuration de la crontab&lt;/h5&gt;


&lt;p&gt;On ajoute le scipt &lt;strong&gt;&lt;a href=&quot;http://www.pierre-numerique.org/downloads/Solaris/scripts/backup15K/logrotate&quot;&gt;logrotate&lt;/a&gt;&lt;/strong&gt; dans le répertoire /etc/cron.d.&lt;/p&gt;


&lt;p&gt;La crontab est éditée et la ligne qui suit est ajoutée pour une exécution quotidienne de la rotation des fichiers à 5h00 du matin.&lt;/p&gt;


&lt;pre&gt;0 5 * * *  /etc/cron.d/logrotate&lt;/pre&gt;



&lt;h3&gt;Sur Chaque Domaine Sauvegardé&lt;/h3&gt;


&lt;h4&gt;Mise en place de l'automontage des répertoires&lt;/h4&gt;



&lt;h5&gt;Création des répertoires :&lt;/h5&gt;


&lt;pre&gt;mkdir -p /adm/exploitation/backups
mkdir -p /adm/exploitation/scripts
mkdir -p /adm/exploitation/conf
mkdir -p /adm/exploitation/cfg&lt;/pre&gt;

&lt;h5&gt;Configuration de l'automonteur :&lt;/h5&gt;


&lt;pre&gt;echo &amp;quot;/adm/exploitation    auto_adm -nobrowse&amp;quot; &amp;gt;&amp;gt; /etc/auto_master&lt;/pre&gt;


&lt;pre&gt;echo &amp;quot;scripts    -ro     sf15k01sc0:/export/install/exploitation/scripts&amp;quot; &amp;gt;&amp;gt; /etc/auto_adm
echo &amp;quot;backups            sf15k01sc0:/export/install/exploitation/backups/$(hostname)&amp;quot; &amp;gt;&amp;gt; /etc/auto_adm
echo &amp;quot;conf       -ro     sf15k01sc0:/export/install/exploitation/conf&amp;quot; &amp;gt;&amp;gt; /etc/auto_adm
echo &amp;quot;cfg                sf15k01sc0:/export/install/exploitation/cfg/$(hostname)&amp;quot; &amp;gt;&amp;gt; /etc/auto_adm&lt;/pre&gt;



&lt;h4&gt;Mise en place de la sauvegarde automatisée&lt;/h4&gt;


&lt;p&gt;La sauvegarde du système est planifiée deux fois par mois à l'aide de la crontab. L'entrée suivante est donc ajoutée dans la crontab de chaque domaine :&lt;/p&gt;


&lt;pre&gt;0 1 20,5 * * /adm/exploitation/scripts/save_syst.ksh&lt;/pre&gt;



&lt;h4&gt;Script de Sauvegarde et fichiers de configuration&lt;/h4&gt;


&lt;p&gt;Trois fichiers sont nécessaire au bon fonctionnement de la sauvegarde :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.pierre-numerique.org/downloads/Solaris/scripts/backup15K/save_syst.ksh&quot;&gt;/adm/exploitation/scripts/save_syst.ksh&lt;/a&gt; : Exécutable lancé par la crontab, global à tous les domaines.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.pierre-numerique.org/downloads/Solaris/scripts/backup15K/save_syst.cfg&quot;&gt;/adm/exploitation/cfg/save_syst.cfg&lt;/a&gt; : Fichier de configuration propre à chaque domaine.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.pierre-numerique.org/downloads/Solaris/scripts/backup15K/save_syst.lst&quot;&gt;/adm/exploitation/conf/save_syst.lst&lt;/a&gt; : Liste des File system à sauvegarder&lt;/li&gt;
&lt;/ul&gt;</description>
    
    
    
          <comments>http://blog.pierre-numerique.org/index.php/post/2004/10/25/6-sauvegarde-systeme-dun-sunfire-15k#comment-form</comments>
      <wfw:comment>http://blog.pierre-numerique.org/index.php/post/2004/10/25/6-sauvegarde-systeme-dun-sunfire-15k#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.pierre-numerique.org/index.php/feed/atom/comments/5</wfw:commentRss>
      </item>
    
  <item>
    <title>Mise en place d'un dépôt CVS</title>
    <link>http://blog.pierre-numerique.org/index.php/post/2004/10/24/10-mise-en-place-dun-depot-cvs</link>
    <guid isPermaLink="false">urn:md5:9103199e1e101fa93501723276df6e11</guid>
    <pubDate>Sun, 24 Oct 2004 17:30:00 +0000</pubDate>
    <dc:creator>Pierre</dc:creator>
        <category>Linux</category>
        <category>CVS</category><category>Debian</category><category>Installation</category><category>Linux</category><category>Unix</category>    
    <description>&lt;p&gt;Afin de développer mon site perso, j'ai mis en place un dépôt &lt;a href=&quot;https://www.cvshome.org/&quot; hreflang=&quot;en&quot;&gt;&lt;acronym&gt;CVS&lt;/acronym&gt;&lt;/a&gt; sur le serveur, j'y accède via le réseau à travers le protocole &lt;em&gt;pserver&lt;/em&gt;.&lt;/p&gt;    &lt;h4&gt;Installation des binaires &lt;acronym&gt;CVS&lt;/acronym&gt;&lt;/h4&gt;


&lt;p&gt;L'installation sous &lt;a href=&quot;http://www.debian.org/index.fr.html&quot; hreflang=&quot;fr&quot;&gt;debian&lt;/a&gt; se fait de manière triviale :&lt;/p&gt;

&lt;pre&gt;apt-get install cvs cvsutils&lt;/pre&gt;


&lt;h4&gt;Création d'un utilisateur dédié&lt;/h4&gt;


&lt;p&gt;Pour des raisons de sécurité, un utilisateur dédié sera créé. Tous les fichiers et processus créés lui appartiendront.&lt;/p&gt;


&lt;p&gt;Création du Home Directory et du répertoire de dépôt des fichiers :&lt;/p&gt;


&lt;pre&gt;mkdir -p /home/cvs/depot&lt;/pre&gt;


&lt;p&gt;Création de l'utilisateur&lt;/p&gt;


&lt;pre&gt;groupadd  cvs
useradd -g cvs -d /home/cvs/ cvs
chown -R cvs:cvs /home/cvs&lt;/pre&gt;


&lt;p&gt;Un Mot de passe est éventuellement attribué à l'utilisateur cvs si l'on souhaite effectuer une délégation de l'administration du serveur &lt;acronym&gt;CVS&lt;/acronym&gt;.&lt;/p&gt;


&lt;h4&gt;Mise en place du dépôt&lt;/h4&gt;


&lt;p&gt;Pour la suite des opérations, on se connectera avec l'utilisateur cvs créé précédemment.&lt;/p&gt;


&lt;h5&gt;Inititalisation du dépôt&lt;/h5&gt;


&lt;p&gt;On définit la variable CVSROOT correspondant au répertoire dans lequel nous allons créer les fichiers&lt;/p&gt;


&lt;pre&gt;export CVSROOT=/home/cvs/depot&lt;/pre&gt;

&lt;p&gt;Le dépôt est alors initialisé :&lt;/p&gt;


&lt;pre&gt;cvs init&lt;/pre&gt;


&lt;p&gt;on peut alors voir qu'un répertoire CVSROOT (à ne pas confondre avec la variable $CVSROOT) a été créé sous le répertoire /home/cvs/depot. C'est dans ce répertoire qu'est présente toute la configuration du dépôt.&lt;/p&gt;


&lt;h5&gt;Configuration de l'authentification&lt;/h5&gt;


&lt;p&gt;Afin de permettre l'authentification des utilisateurs, la configuration va être légèrement modifiée. On va d'ailleurs utiliser les commandes CVS pour modifier le fichier de configuration :&lt;/p&gt;


&lt;pre&gt;cd /tmp
export CVSROOT=/home/cvs/depot
cvs checkout CVSROOT&lt;/pre&gt;


&lt;p&gt;Le fichier CVSROOT/config est édité :&lt;/p&gt;


&lt;p&gt;la ligne&lt;/p&gt;


&lt;pre&gt;#SystemAuth=no&lt;/pre&gt;


&lt;p&gt;est décommentée pour devenir&lt;/p&gt;


&lt;pre&gt;SystemAuth=no&lt;/pre&gt;


&lt;p&gt;La modification est alors mise à jour sur le dépôt :&lt;/p&gt;


&lt;pre&gt;cvs commit&lt;/pre&gt;


&lt;h5&gt;Création des utilisateurs du dépôt&lt;/h5&gt;


&lt;p&gt;Les utilisateurs du dépôt sont recensés dans un fichier '&amp;quot;passwd'' de la forme :&lt;/p&gt;


&lt;pre&gt;[utilisateur CVS]:[mot de passe crypté]:[utilisateur unix]&lt;/pre&gt;


&lt;p&gt;Où :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;utilisateur cvs&lt;/em&gt; correspond au login sur le serveur cvs&lt;/li&gt;
&lt;li&gt;&lt;em&gt;mot de passe crypté&lt;/em&gt; est obtenu à l'aide de la commande &lt;em&gt;htpasswd&lt;/em&gt; fournie avec &lt;a href=&quot;http://httpd.apache.org&quot; hreflang=&quot;en&quot;&gt;Apache&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;utilisateur unix&lt;/em&gt; est en fait le propriétaire des fichiers et des processus (cvs dans notre cas)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Exemple :&lt;/p&gt;


&lt;p&gt;On crée l'utilisateur &lt;em&gt;pierre&lt;/em&gt; :&lt;/p&gt;


&lt;p&gt;le mot de passe crypté est obtenu de la manière suivante :&lt;/p&gt;


&lt;pre&gt;htpasswd -n pierre
New password:
Re-type new password:
pierre:&lt;strong&gt;/DSunBSY9WZsY&lt;/strong&gt;&lt;/pre&gt;


&lt;p&gt;la ligne à ajouter dans le fichier $CVSROOT/passwd est donc la suivante :&lt;/p&gt;


&lt;pre&gt;pierre:/DSunBSY9WZsY:cvs&lt;/pre&gt;


&lt;h4&gt;Configuration du démon xinetd&lt;/h4&gt;

&lt;p&gt;Les manipulations qui suivent sont à effectuer avec l'utilisateur &lt;em&gt;root&lt;/em&gt;.
Les processus serveurs &lt;acronym&gt;CVS&lt;/acronym&gt; seront lancés via le super démon xinetd lors de la connexion de l'utilisateur. Il existe d'autre type de connexions, comme via le protocole &lt;a href=&quot;http://www.dicodunet.com/definitions/reseaux/ssh.htm&quot; hreflang=&quot;fr&quot;&gt;&lt;acronym&gt;SSH&lt;/acronym&gt;&lt;/a&gt; (Source &lt;a href=&quot;http://www.dicodunet.com/&quot; hreflang=&quot;fr&quot;&gt;Dico du net&lt;/a&gt;) par exemple, cependant, l'accès étant actuellement limité au réseau local et fermé à l'extérieur (Internet) cela ne s'avère pas nécessaire. Cela fera néanmoins peut être l'objet d'un prochain billet.&lt;/p&gt;


&lt;p&gt;On va ajouter le fichier &lt;em&gt;cvspserver&lt;/em&gt; avec le contenu qui suit dans le répertoire /etc/xinetd.d&lt;/p&gt;


&lt;pre&gt;service cvspserver
{
        socket_type = stream
        protocol = tcp
        wait = no
        user = cvs
        server = /usr/bin/cvs
        server_args = -f --allow-root=/home/cvs/depot pserver
        only_from = 192.168.0.2
}&lt;/pre&gt;



&lt;p&gt;On s'assurera toutefois que la ligne&lt;/p&gt;


&lt;pre&gt;includedir /etc/xinetd.d/&lt;/pre&gt;


&lt;p&gt;est présente dans le fichier /etc/xinetd.conf et on l'y ajoutera le cas échéant.&lt;/p&gt;


&lt;p&gt;On vérifie que le démon xinetd écoute bien sur le port d'écoute alloué à CVS (2401)&lt;/p&gt;

&lt;pre&gt;# netstat -lntp | grep 2401
tcp        0      0 0.0.0.0:2401            0.0.0.0:*               LISTEN      18361/xinetd&lt;/pre&gt;


&lt;h4&gt;Opérations courantes avec &lt;acronym&gt;CVS&lt;/acronym&gt;&lt;/h4&gt;


&lt;p&gt;Avant toute chose, il est essentiel de définir la valeur de la variable CVSROOT et de se connecter pour pouvoir travailler :&lt;/p&gt;


&lt;p&gt;Pour une connexion via le protocole &lt;em&gt;pserver&lt;/em&gt;, celle ci devient :&lt;/p&gt;


&lt;pre&gt;export CVSROOT=:pserver:pierre@192.168.0.1:/home/cvs/depot
cvs login
Logging in to :pserver:pierre@bretagne:2401/home/cvs/depot
CVS password:&lt;/pre&gt;


&lt;p&gt;Import d'un répertoire (ou module ) dans le dépôt :&lt;/p&gt;


&lt;pre&gt;cd /home/user/sources
cvs import -m &amp;quot;Premier import des Sources&amp;quot; Sources Pierre Version1&lt;/pre&gt;


&lt;p&gt;Téléchargement des sources :&lt;/p&gt;


&lt;pre&gt;cvs checkout &lt;em&gt;module&lt;/em&gt;&lt;/pre&gt;

&lt;p&gt;Mise à jour des sources :&lt;/p&gt;


&lt;pre&gt;cvs update&lt;/pre&gt;


&lt;p&gt;Mise à jour de ses fichiers sur le serveur :&lt;/p&gt;


&lt;pre&gt;cvs commit&lt;/pre&gt;


&lt;p&gt;Déconnexion :&lt;/p&gt;


&lt;pre&gt;cvs logout&lt;/pre&gt;



&lt;h4&gt;WinCVS&lt;/h4&gt;


&lt;p&gt;Pour une utilisation sous environnement graphique, on peut télécharger l'excellent logiciel libre &lt;a href=&quot;http://www.wincvs.org/&quot; hreflang=&quot;en&quot;&gt;WinCVS&lt;/a&gt;, disponible pour les environnements Win32,MacOS et Linux&lt;/p&gt;




&lt;h4&gt;Quelques liens...&lt;/h4&gt;


&lt;p&gt;cet article est une synthèse à ma façon des liens qui suivent :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.idealx.org/doc/cvs.fr.html&quot; hreflang=&quot;fr&quot;&gt;Utilsation de &lt;acronym&gt;CVS&lt;/acronym&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://europa.ac-grenoble.fr/slis/devel/cvs-howto.html&quot; hreflang=&quot;fr&quot;&gt;CVS-HOWTO&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.cvshome.org/&quot; hreflang=&quot;en&quot;&gt;CVS Home Page&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
    
    
    
          <comments>http://blog.pierre-numerique.org/index.php/post/2004/10/24/10-mise-en-place-dun-depot-cvs#comment-form</comments>
      <wfw:comment>http://blog.pierre-numerique.org/index.php/post/2004/10/24/10-mise-en-place-dun-depot-cvs#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.pierre-numerique.org/index.php/feed/atom/comments/8</wfw:commentRss>
      </item>
    
</channel>
</rss>