<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>MilamberSpace &#187; Centos</title>
	<atom:link href="http://blog.milamberspace.net/index.php/tag/centos/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.milamberspace.net</link>
	<description>JMeter (surtout) mais aussi l&#039;Informatique, Internet, etc.</description>
	<lastBuildDate>Sun, 29 Aug 2010 21:29:30 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Gestion des packages avec YUM sans connexion Internet et avec le dvd Redhat</title>
		<link>http://blog.milamberspace.net/index.php/2008/11/15/gestion-des-packages-avec-yum-sans-connexion-internet-et-avec-le-dvd-redhat-101.html</link>
		<comments>http://blog.milamberspace.net/index.php/2008/11/15/gestion-des-packages-avec-yum-sans-connexion-internet-et-avec-le-dvd-redhat-101.html#comments</comments>
		<pubDate>Sat, 15 Nov 2008 19:26:57 +0000</pubDate>
		<dc:creator>Milamber</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Non classé]]></category>
		<category><![CDATA[RedHat]]></category>
		<category><![CDATA[Centos]]></category>
		<category><![CDATA[Yum]]></category>

		<guid isPermaLink="false">http://blog.milamberspace.net/?p=101</guid>
		<description><![CDATA[Mise à jour le 19/08/2010
Pour ceux qui ne connaissent pas YUM, ce dernier est un utilitaire bien pratique dans les distributions Linux utilisant les packages RPM, tel que RedHat ou CentOS.
YUM permet en effet de faire la gestion des packages sur ces types de distributions, en gérant les dépendances entre les packages, c&#8217;est-à-dire que si [...]]]></description>
			<content:encoded><![CDATA[<p><em><span style="text-decoration: underline;">Mise à jour le 19/08/2010</span></em></p>
<p>Pour ceux qui ne connaissent pas <strong>YUM</strong>, ce dernier est un utilitaire bien pratique dans les distributions Linux utilisant les packages RPM, tel que RedHat ou CentOS.</p>
<p>YUM permet en effet de faire la gestion des packages sur ces types de distributions, en gérant les dépendances entre les packages, c&#8217;est-à-dire que si vous voulez installer par exemple PHP sur votre serveur Linux RedHat, il suffit de faire <em>« yum install php »</em> et hop, tous les packages nécessaires à PHP vont être installés (entre autres le serveur Apache HTTP <img src='http://blog.milamberspace.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> ).</p>
<p>Mais pour cela, YUM a besoin d&#8217;une connexion à Internet pour 1/ localiser le package désiré, 2/ télécharger son entête pour voir ses dépendances, 3/ télécharger les entêtes de ses dépendances et générer également les dépendances de ses dépendances, 4/ puis quand il n&#8217;y a plus de dépendances à gérer, procéder au téléchargement et à l&#8217;installation.</p>
<p>Le problème est que parfois, la connexion à Internet n&#8217;est pas disponible pour faire des installations ou des mises à jour sur des serveurs dans des salles blanches sécurisées. <em>Pas de problème,</em> YUM avec un peu de configuration sait aussi travailler en « local », à partir du média d&#8217;origine ou d&#8217;une version de mise à jour.<span id="more-101"></span></p>
<p>Donc, pour pouvoir faire des installations ou des mises à jour depuis le DVD (ou les Cdroms) de Redhat, il faut bien entendu le media, ou mieux l&#8217;image ISO du media.</p>
<p>Ici c&#8217;est l&#8217;image ISO de la Redhat Linux Entreprise (RHEL) version 5.2 pour processeurs Intel avec les extensions 64 bits : <em>rhel-5.2-server-x86_64-dvd.iso</em></p>
<p>Comme pré-requis, j&#8217;ai déposé l&#8217;image ISO dans le répertoire /root/dvd_redhat/</p>
<p><strong><span style="text-decoration: underline;">Etape 1 :</span></strong> Montage de l&#8217;image ISO sur le système de fichiers afin de récupérer les packages RPM qui serviront à l&#8217;installation ou à la mise à jour.</p>
<pre><span style="color: #800000;"><strong>mkdir /root/dvd_redhat/disk/</strong></span></pre>
<pre><span style="color: #800000;"><strong>mount -o loop /root/dvd_redhat/rhel-5.2-server-x86_64-dvd.iso /root/dvd_redhat/disk/</strong></span></pre>
<p>La commande &laquo;&nbsp;<em>mount -o loop</em>&nbsp;&raquo; qui commence à être de plus en plus connue, permet « d&#8217;ouvrir » une image ISO, et de la monter sur l&#8217;arborescence de fichiers. Ici, dans le répertoire /root/dvd_redhat/disk/</p>
<p><span style="text-decoration: underline;"><strong>Etape 2 :</strong></span> Récupération des packages RPM dans un nouveau répertoire.</p>
<p>L&#8217;image ISO montée étant en mode lecture seule, il faut copier les fichiers RPM vers un répertoire en lecture/écriture (pour faire l&#8217;étape 4).</p>
<pre><span style="color: #800000;"><strong>mkdir /root/dvd_redhat/RPM</strong></span></pre>
<pre><span style="color: #800000;"><strong>cd /root/dvd_redhat/disk/Server/</strong></span></pre>
<pre><span style="color: #800000;"><strong>cp *.rpm /root/dvd_redhat/RPM/</strong></span></pre>
<p><strong><span style="text-decoration: underline;">Etape 3 :</span></strong> Installation de l&#8217;utilitaire createrepo</p>
<p>On profite d&#8217;être dans le répertoire qui contient tous les packages RPM, pour installer manuellement l&#8217;utilitaire createrepo, ce dernier permettant de faire l&#8217;étape suivante.</p>
<pre><span style="color: #800000;"><strong>rpm -i createrepo-0.4.11-3.el5.noarch.rpm
</strong></span></pre>
<p><span style="color: #000000;">dans le cas d&#8217;une installation RedHat vide (sans aucun paquetage coché lors de l&#8217;installation), prendre cette ligne de commande :</span></p>
<p><span style="color: #800000;"> </span></p>
<pre><span style="color: #800000;"><strong>rpm -i createrepo-0.4.11-3.el5.noarch.rpm libxml2-python-2.6.26-2.1.2.8.i386.rpm rpm-python-4.4.2.3-18.el5.i386.rpm
yum-metadata-parser-1.1.2-3.el5.i386.rpm yum-3.2.22-26.el5.noarch.rpm python-elementtree-1.2.6-5.i386.rpm
python-iniparse-0.2.3-4.el5.noarch.rpm python-sqlite-1.1.7-1.2.1.i386.rpm
python-urlgrabber-3.1.0-5.el5.noarch.rpm m2crypto-0.16-6.el5.6.i386.rpm
</strong></span></pre>
<p><strong><span style="text-decoration: underline;">Etape 4 :</span></strong> Création du nouveau référentiel (repository) de fichier</p>
<p>On se place sur le nouveau répertoire contenant les RPM copiés de l&#8217;image ISO, et on va créer un nouveau référentiel (index) des fichiers RPM avec la commande createrepo.</p>
<pre><span style="color: #800000;"><strong>cd /root/dvd_redhat/RPM/</strong></span></pre>
<pre><span style="color: #800000;"><strong>createrepo ./</strong></span></pre>
<p>La commande <em>createrepo</em> prend comme argument le répertoire courant, ici /root/dvd_redhat/RPM/ .</p>
<p>Elle va créer un ensemble de fichiers dans un sous-repertoire <em>./repodata/</em></p>
<p>Tiens, on a plus besoin du montage de l&#8217;image ISO, on en profite pour démonter&#8230;</p>
<pre><span style="color: #800000;"><strong>umount /root/dvd_redhat/disk/</strong></span></pre>
<p><strong><span style="text-decoration: underline;">Etape 5 :</span></strong> Création du fichier de référence du nouveau référentiel</p>
<p>Pour que YUM puisse utiliser notre nouveau référentiel, il faut lui ajouter sa référence dans sa configuration. Sous RHEL, il faut simplement créer le fichier suivant :</p>
<pre><span style="color: #800000;"><strong>vi /etc/yum.repos.d/RedHat-Media.repo
======================CONTENU=====================================
[redhat-media]
name=RedHat-$releasever - Media
baseurl=file:///root/dvd_redhat/RPM/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
==================================================================</strong></span></pre>
<p><strong><span style="text-decoration: underline;">Etape 6 :</span></strong> utilisation de YUM</p>
<p>On va commencer par faire un nettoyage de YUM avec le commande suivante :</p>
<pre><span style="color: #800000;"><strong>yum --disablerepo=\* --enablerepo=redhat-media --noplugins clean all</strong></span></pre>
<p>On notera le <em>« &#8211;disablerepo=\* »</em> qui permet de désactiver toutes les références vers d&#8217;autres référentiels, le <em>« &#8211;enablerepo=redhat-media »</em> qui indique que l&#8217;on souhaite travaillait avec notre nouveau référentiel, et pour finir l&#8217;option <em>« &#8211;noplugins » </em>qui va désactiver tous les plugins, notamment celui du RHN qui nécessite une connexion Internet que nous n&#8217;avons pas.</p>
<p>Le <em>« clean all » </em>commandant le nettoyage du cache de YUM.</p>
<p>Voilà.</p>
<p>Ensuite, on peut utiliser YUM pour gérer les installations, les désinstallations, les mises à jour de ses packages en gérant les dépendances.</p>
<p><strong><span style="text-decoration: underline;">Pour une installation :</span></strong></p>
<pre><span style="color: #800000;"><strong>yum --disablerepo=\* --enablerepo=redhat-media --noplugins install &lt;nom_package(s)&gt;</strong></span></pre>
<p><span style="text-decoration: underline;"><strong>Pour une suppression :</strong></span></p>
<pre><span style="color: #800000;"><strong>yum --disablerepo=\* --enablerepo=redhat-media --noplugins remove &lt;nom_package(s)&gt;</strong></span></pre>
<p><span style="text-decoration: underline;"><strong>Pour une mise à jour de version sur l&#8217;ensemble des packages</strong></span> (par exemple un passage de RHEL 5.1 à RHEL 5.2)</p>
<pre><span style="color: #800000;"><strong>yum --disablerepo=\* --enablerepo=redhat-media --noplugins update</strong></span></pre>
<p>Bon courage.</p>
<p>./</p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 741px; width: 1px; height: 1px; overflow: hidden;">rpm -i createrepo-0.4.11-3.el5.noarch.rpm libxml2-python-2.6.26-2.1.2.8.i386.rpm rpm-python-4.4.2.3-18.el5.i386.rpm yum-metadata-parser-1.1.2-3.el5.i386.rpm yum-3.2.22-26.el5.noarch.rpm python-elementtree-1.2.6-5.i386.rpm python-iniparse-0.2.3-4.el5.noarch.rpm python-iniparse-0.2.3-4.el5.noarch.rpm python-sqlite-1.1.7-1.2.1.i386.rpm python-urlgrabber-3.1.0-5.el5.noarch.rpm m2crypto-0.16-6.el5.6.i386.rpm</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.milamberspace.net/index.php/2008/11/15/gestion-des-packages-avec-yum-sans-connexion-internet-et-avec-le-dvd-redhat-101.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
