Hier, je me suis penché sur une installation d’un serveur MPD pour pouvoir contrôler ma musique de mon smartphone sous Android.grâce au WIFI et que le son sorte sur mon amplis. Prérequis Avoir le dépôt RPMFORGE d’installé Sous CentOS 5 rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm Sous CentOS 6 rpm -Uvh http://apt.sw.be/redhat/el6/en/i386/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.i686.rpm Avoir une carte son sur le [...]
Mot-clefs : CentOS
Installer un serveur MPD sous CentOS avec un client sous Android
Par , le dimanche 13 mai 2012 - 09:47 | Catégories : mpd, mpdroid, musique, télécommande, Divers, CentOS
Hier, je me suis penché sur une installation d’un serveur MPD pour pouvoir contrôler ma musique de mon smartphone sous Android.grâce au WIFI et que le son sorte sur mon amplis. Prérequis Avoir le dépôt RPMFORGE d’installé Sous CentOS 5 rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm Sous CentOS 6 rpm -Uvh http://apt.sw.be/redhat/el6/en/i386/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.i686.rpm Avoir une carte son sur le [...]
Installer un Windows 2008 sur KVM avec Virtio sous CentOS
Par , le dimanche 29 avr 2012 - 10:44 | Catégories : Virtio, CentOS, KVM, Serveur, Windows
Aujourd’hui je vais vous montrer comment installer Windows 2008 avec un disque dur Virtio sous Une machine virtuelle KVM sous CentOS Car si on lance une installation de Windows 2008 sans avoir au préalable les drivers, Windows ne reconnait pas notre disque 1) Dans un premier temps Il faut se diriger vers le site http://www.linux-kvm.com/ pour récupérer les [...]
Faire cohabiter sur un même serveur physique OpenVZ et KVM sur CentOS
Par , le mercredi 07 déc 2011 - 22:11 | Catégories : cohabiter, openvz, CentOS, KVM
j’ai réussi à mettre en place sur un même noyaux OpenVZ et KVM. Ce qui peux permettre de faire tourner aussi bien des containers que des machines virtuels KVM sur centos 5 en même temps. 1) installer le dépot OpenNode et epel # wget http://opennode.activesys.org/CentOS/5/opennode/x86_64/RPMS/opennode-repo-1.1-1.asys.x86_64.rpm # wget http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm # rpm -Uvh opennode-repo-1.1-1.asys.x86_64.rpm # rpm [...]
Quand MySQL WorkBench cherche ses tables ...
Par , le jeudi 20 oct 2011 - 10:45 | Catégories : Base de données, fetching, workbench, CentOS, fedora, Fedora, GNU-Linux, mysql, planet-libre
Depuis hier, je me suis rendu compte que MySQL Workbench n'arrivait plus à lister les tables de mes schémas MySQL.
Dès que je voulais afficher les tables, "Fetching" apparaissait de manière interminable et systématique ... Serait-ce parce que le paquet fourni par Fedora est corrompu ???
# yum reinstall mysql-workbench ne change rien ...
Je passe alors par le dépôt de Remi, mais rien n'y fait ... Cela doit alors provenir de mes données ... seulement voilà, avec un bon vieux MySQL Query, cela fonctionne ... Il m'aura fallu chercher 2 secondes pour tomber sur cet incident ouvert chez MySQL, lire quelques réponses et tester ce qui suit :
$ mysql-upgrade -u myuser -pmypassword -P myport -h myhost
Je relance MySQL WorkBench et ... tadaaa ! Voilà mes tables !!!
Je pensais que partager cette astuce pourrait servir ou me servir à nouveau ;) !
CentOS + Tomcat + beaucoup d'ouvertures de fichiers = java.net.SocketException: Too many open files
Par , le jeudi 22 sept 2011 - 18:00 | Catégories : Système, nofile, tomcat, Too many open files, ulimit, CentOS, fedora, Fedora, GNU-Linux, java, mysql, Opti-Time, planet-libre
Tout est dans le titre !!! Comme d'habitude, c'est plus un pense-bête qu'un véritable article ... si ça peut aider ...
J'ai eu une surprise ce matin sur un serveur client de constater cette erreur :
java.net.SocketException: Too many open files
C'est un serveur sous CentOS 5.5 hébergeant un serveur MySQL, un serveur tomcat avec plusieurs Webapps, un serveur Apache et enfin un serveur propriétaire qui utilise pas mal de socket et a une base de donnée en interne ...
Cocktail génial pour visiblement dépasser la limite par défaut du système s'élevant à 1024 que l'on obtient en faisant un :
ulimit -n
Il y a 2 valeurs possibles à modifier, celle présente dans le fichier /proc/sys/fs/file-max par défaut, celle-ci est assez élevée (plus de 64000). Au besoin il faut modifier la ligne suivante :
Si (comme tel était mon cas) la valeur de ce fichier est plus élevée, il reste à ajouter une entrée au fichier /etc/security/limits.conf :...
fs.file-max = 64000
...
ouuser - nofile 8192
La première colonne désigne l'utilisateur ou le groupe (grâce à @) ou encore n'importe qui grâce à *.@group - nofile 8192
La seconde colonne, on détermine si la limite est soft ou hard, ou les 2 grâce à -.
La troisième colonne indique sur quel paramètre cette configuration s'exécute, ici nofile correspond au paramètre open files retourné par ulimit.
Enfin la dernière colonne indique la valeur.
Dans mon cas, j'ai rajouté :
Il est indiqué sur la documentation Red Hat de redémarrer le serveur pour que cela prenne effet. La solution peut consister à relancer le ou les services concernés ainsi que les sessions utilisateurs.@tomcat - nofile 8192
optitime - nofile 8192
Voilà, en espérant que ça puisse aider et surtout m'éviter de rechercher cette information à nouveau ;) !
Migrer de CentOS vers Scientific Linux
Par , le jeudi 22 sept 2011 - 17:30 | Catégories : migration, CentOS, Scientific Linux
Dans mon dernier billet, je vous expliquais que j’avais pris la décision de changer la distribution de mon serveur principal qui tournait sous CentOS pour Scientific Linux. Voici la méthode que j’ai employé. Je me suis appuyé sur la méthode décrite par redman qui est l’administrateur du Forum Scientific Linux. Je vais vous donner ici [...]
De CentOS à Scientific Linux
Par , le jeudi 08 sept 2011 - 15:55 | Catégories : Scientific Linux, CentOS
Voici plusieurs semaines que je m’interrogeais sur l’opportunité d’un changement de distribution pour mes serveurs. Si CentOS, qui est un clone de RedHat Enterprise Linux, me donnait entière satisfaction depuis des années, ces derniers temps ce n’était plus le cas. Les délais de publications des correctifs de sécurité ainsi que des nouvelles versions m’ont incité [...]
Création d'un dépôt RPM à base de Fedora
Par , le mercredi 17 août 2011 - 17:00 | Catégories : createrepo, gpg, groupe, repository, repoview, spec, Réseau, apache, CentOS, dépôt, fedora, GNU-Linux, linux, planet-libre, RHEL, RPM, rpm, yum
Introduction
Je vais partir du principe que nous allons créer un dépôt RPM pour Fedora 14 et CentOS/RHEL 5 dans /var/www/html/linux/. Voici l'arborescence :Chacun des chemins cités ci-dessus est un dépôt. Ainsi, dans ce qui suit on remplacera /path/myrepo par /var/www/html/linux/fedora/14/i386/ puis pour l'ensemble des commandes par /var/www/html/linux/fedora/14/x86_64/ et ainsi de suite pour chacune des architecture des distributions que concerne notre dépôt./var/www/html/linux/fedora/14/i386/
/var/www/html/linux/fedora/14/x86_64/
/var/www/html/linux/el5/5/i386/
/var/www/html/linux/el5/5/x86_64/
Vos rpm seront donc présents avant la génération de createrepo et repoview ;)

Préparation des chemins contenant les RPM
su -lc 'mkdir -p /var/www/html/linux/fedora/14/i386/'
su -lc 'mkdir -p /var/www/html/linux/fedora/14/x86_64/'
su -lc 'mkdir -p /var/www/html/linux/el5/5/i386/'
su -lc 'mkdir -p /var/www/html/linux/el5/5/x86_64/'Pour el5, on peut installer des pré-configuration lors de l'installation de l'OS, du coup, $releaseversion n'est pas forcément 5, mais peut être 5Workstation, 5client ou 5Server. Dans ce cas on en profite pour créer des liens symboliques :
su -lc 'ln -s /var/www/html/linux/el5/5/ /var/www/html/linux/el5/5Workstation'su -lc 'ln -s /var/www/html/linux/el5/5/ /var/www/html/linux/el5/5Client'
su -lc 'ln -s /var/www/html/linux/el5/5/ /var/www/html/linux/el5/5Server'Installer un dépôt RPM
Installation d'un serveur web
Tout d'abord commençons par installer un serveur Apache :
su -lc 'yum install httpd'
Configuration du dépôt
Pour configurer notre dépôt, nous allons utiliser l'outil createrepo :
su -lc 'yum install createrepo'
Créons dans /etc/httpd/conf.d/ un fichier de configuration pour notre dépôt dans Apache :
su -lc 'vi /etc/httpd/conf.d/repository.conf'
<Directory /var/www/html/>
Options Indexes
Options Indexes FollowSymLinks
Order allow, deny
Allow from all
</Directory>
Création du dépôt
La commande de base pour créer une dépôt est createrepo :
createrepo /path/monrepoLe plus souvent, on crée un dépôt en générant une base sqlite (cela nous sera utile pour repoview), pour cela, il faut utiliser l'option -d :
createrepo -d /path/monrepo
L'option -g permet de prendre en compte un groupe de RPM définit dans un fichier comps.xml :
createrepo -d -g /path/comps.xml /path/monrepo
Ainsi, nous pourrons utiliser les commandes yum grouptruc avec notre dépôt !
L'option --unique-md-filenames semble utile, notamment lorsque 'lon a plusieurs mirroir, permet ede donner un nom unique aux metadatas.
L'option --checksum sha est indispensable pour le dépôt EL-5 (la valeur par défaut, sha256, est ok pour fedora >= 11 et EL >= 6)
Donc au final on se retrouve avec :
createrepo --unique-md-filenames --checksum sha -d -g /path/comps.xml /path/monrepo
Génération de repoview
Un dépôt, c'est bien, de quoi le parcourir avec un design sympa, c'est mieux !
Installation de Repoview
su -lc 'yum install repoview'
Utiliser l'option -d sur la commande createrepo afin de créer la base sqlite qui sera utilisée par repoview.
Création des page html via repoview
Ensuite, c'est très simple on demande à repoview de créer les pages qui permettront de naviguer dans notre dépôt !
repoview /path/monrepo
Pour terminer, assurons-nous de disposer des droits pour l'utilisateur apache :
su -lc 'chmod o+rX /path/monrepo'
Exemple de fichier Comps.xml afin de créer des groupes de rpm
Si vous désirez installer l'ensemble de vos rpm dans votre repo, ou un sous-ensemble spécifique, vous devrez créer un fichier de groupes : comps.xml. Pour notre exemple, si nous voulions que myrpm.noarch.rpm soit installé par défaut et mybinrpm.i386.rpm soit une option, nous créerions un fichier de comps.xml comme ceci :<comps>
<!-- <meta> -->
<!-- Meta information will go here eventually -->
<!-- </meta> -->
<group>
<id>mygroup</id>
<name>MyGroup</name>
<default>true</default>
<description>Default RPMS from MyRepo</description>
<uservisible>true</uservisible>
<packagelist>
<packagereq type="default">myrpm</packagereq>
<packagereq type="optional">mybinrpm</packagereq>
</packagelist>
</group>
</comps>
Pensez à relancer createrepo afin que vos groupes soient accessibles par les personnes ayant votre dépôt de configuré !
Ajout de pages manquantes
Cette opération est effectuée qu'un seule fois à la création de l'arborescence, puis à l'ajout d'un release ou d'une distribution.Index principal dans /var/www/html/
Notre dépôt est prêt, reste à y ajouter quelques pages et feuilles de style !su -lc 'vi /var/www/html/index.htmlVoici le contenu :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
<head>
<meta content="text/html; charset=utf-8" http-equiv="content-type" />
<title>RepoView: MyRpo</title>
<link href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/css/repostyle.css" type="text/css" rel="stylesheet" />
<meta content="index,follow" name="robots" />
<link rel="shortcut icon" href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/favicon.ico" />
</head>
<body>
<div id="page">
<div id="top">
<h1><span><a href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/index.html">My - Packages</a></span></h1>
</div>
<p id="prelude"><a href="http://www.opti-time.com/">Site</a> | <a href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/index.html">Dépôt</a></p>
<div id="wrapper">
<div id="main">
<div id="content">
<h2>Download mirrors</h2>
<ul class="pkglist">
<li><a href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/index.html" class="inpage">http://monurl/linux/</a> - <strong>primary</strong></li>
</ul>
<h2>Distribution choice</h2>
<h3>Fedora - Maintained version</h3>
<ul class="pkglist">
<li>
<a href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/linux/fedora/14/index.html" class="inpage">Fedora 14 (Laughlin)</a> -
repository auto-configuration package : <a href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/linux/fedora/14/x86_64/my-repo-fedora-2.0-0.0.fc14.noarch.rpm">My-repository-fc-14.rpm</a>
</li>
</ul>
<h3>Enterprise Linux (RHEL / CentOS / Other clones)</h3>
<ul class="pkglist">
<li>
<a href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/linux/el5/5/index.html" class="inpage">Enterprise Linux 5.5</a> -
repository auto-configuration package : <a href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/linux/el5/5/x86_64/my-repo-el5-2.0-0.0.el5.noarch.rpm">My-repository-el-5.rpm</a>
</li>
</ul>
<h2>Other resources</h2>
<ul class="pkglist">
<li>
<a href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/linux/RPM-GPG-KEY-MyRepo.gpg" class="inpage">RPM-GPG-KEY-MyRepo</a>: the GnuPG public key of the key pair used to sign MyRepo's packages
</li>
</ul>
</div>
</div>
</div>
<div id="footer">
<ul id="w3c">
<li>
<a id="vxhtml" href="http://validator.w3.org/check/referer">XHTML 1.1 valide</a>
</li>
<li>
<a id="vcss" href="http://jigsaw.w3.org/css-validator/check/referer">CSS 2.0 valide</a>
</li>
</ul>
<p>
by <a href="http://mricon.com/trac/wiki/Repoview">Repoview</a> | Designed for <a href="http://www.myRepo.org/">MyRepo</a>
</p>
</div>
</div>
</body>
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
</html>
su -lc 'vi /var/www/html/css/repostyle.cssVoici le contenu :
NB : Ce style est très fortement/probablement inspiré de celui qu'utilise Remi pour ses dépôts !ul, ul li {
list-style: none;
}
a:link, a:visited {
color: #000;
text-decoration: underline;
}
a:hover {
color: #000;
text-decoration: none;
}
.nav {
text-align: right;
color: gray;
font-size: small;
}
.nactive {
border-bottom: 1px dotted blue;
background-color: lavender;
color: blue;
font-size: small;
text-decoration: none;
}
.ninactive {
color: gray;
font-size: small;
}
.nlink {
text-decoration: none;
color: blue;
font-size: small;
}
.nlink:hover {
background-color: lavender;
border-bottom: 1px dotted blue;
font-size: small;
}
.inpage {
text-decoration: none;
color: blue;
}
.inpage:hover {
background-color: mistyrose;
color: red;
border-bottom: 1px dotted red;
}
.levbar {
position: absolute;
top: 0px;
left: 0px;
width: 11em;
height: 100%;
border-right: 4px dotted gray;
border-bottom: 4px dotted gray;
background-color: gainsboro;
}
.main {
position: absolute;
left: 13em;
width: 75%;
}
h1,h2,h3,h4,h5 {
border-bottom: 1px dotted gray;
border-top: 1px dotted gray;
background-color: whitesmoke;
font-weight: normal;
}
.pagetitle {
border-top: 1px dotted gray;
border-bottom: 1px dotted gray;
padding-top: 5%;
padding-bottom: 5%;
margin-top: 5%;
margin-bottom: 5%;
text-align: center;
width: 100%;
color: gray;
background-color: white;
}
dt {
font-weight: bold;
margin-top: 1%;
}
th {
background-color: whitesmoke;
text-align: left;
}
.field {
background-color: whitesmoke;
text-align: right;
}
.levbarlist {
list-style-type: none;
padding: 5%;
border-top: 1px dotted gray;
border-bottom: 1px dotted gray;
background-color: whitesmoke;
}
.pkglist {
padding-top: 2%;
padding-bottom: 2%;
list-style-type: circle;
}
.letterlist {
background-color: whitesmoke;
}
.letterlist a {
padding-left: 0.2em;
padding-right: 0.2em;
}
.footernote {
text-align: right;
font-size: small;
background-color: whitesmoke;
border-top: 1px dotted gray;
color: gray;
}
.repoview {
text-decoration: none;
color: gray;
border-bottom: 1px dotted gray;
font-size: small;
}
.repoview:hover {
background-color: lavender;
border-bottom: 1px dotted blue;
color: blue;
font-size: small;
}
Index de redirection dans /var/www/html/linux/
su -lc 'vi /var/www/html/linux/index.html'Voici le contenu :
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta http-equiv="refresh" content="0; url=../index.html" />
<title>Repository MyRepo</title>
<meta name="robots" content="noindex,follow" />
<link href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/../css/repostyle.css" type="text/css" rel="stylesheet" />
</head>
<body>
<p><a href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/../index.html">Packages MyRepo</a></p>
</body>
</html>
Index dans chacun des dépôts
Ici placez cet index autant de fois que de distributions supportée par votre dépôtsu -lc 'vi /var/www/html/linux/fedora/14/index.html'Voici le contenu :
NB : changez donc fedora et 14 par el5 et 5 pour CentOS et RHEL.<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="content-type" />
<title>Opti-Time - Fedora 14</title>
<link href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/i386/repoview/layout/repostyle.css" type="text/css" rel="stylesheet" />
<meta content="index,follow" name="robots" />
<link rel="shortcut icon" href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/../../favicon.ico" />
</head>
<body>
<div id="page">
<div id="top">
<h1><span><a href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/../../../index.html">MyRepo- Packages</a></span></h1>
</div>
<p id="prelude"><a href="http://www.myrepo.com/">Site</a> | <a href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/index.html">Dépôt</a></p>
<div id="wrapper">
<div id="main">
<div id="content">
<h2>Fedora 14 (Laughlin)</h2>
<h3>MyRepo</h3>
<ul class="pkglist">
<li>
<a href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/i386/repoview/index.html" class="inpage">i386</a>
</li>
<li>
<a href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/x86_64/repoview/index.html" class="inpage">x86_64</a>
</li>
</ul>
<!--<h3>MyRepo-test</h3>
<ul class="pkglist">
<li>
<a href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/test/i386/repoview/index.html" class="inpage">i386</a>
</li>
<li>
<a href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/test/x86_64/repoview/index.html" class="inpage">x86_64</a>
</li>
</ul>-->
</div>
</div>
<div id="sidebar">
<h2>fedora 14</h2>
<ul class="levbarlist">
<li>
<a href="http://www.slobberbone.net/dotclear/index.php?post/2011/08/17/../../../index.html" class="nlink" title="Back to distribution choice">Back to distribution choice</a>
</li>
</ul>
</div>
</div>
<div id="footer">
<ul id="w3c">
<li>
<a id="vxhtml" href="http://validator.w3.org/check/referer">XHTML 1.1 valide</a>
</li>
<li>
<a id="vcss" href="http://jigsaw.w3.org/css-validator/check/referer">CSS 2.0 valide</a>
</li>
</ul>
<p>
by <a href="http://mricon.com/trac/wiki/Repoview">Repoview</a> | Designed for <a href="http://www.myrepo.com/">MyRepo</a>
</p>
</div>
</div>
</body>
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
</html>
Terminons par redonner la propriété du répertoire /var/www/html/ à apache :
su -lc 'chown -Rf apache:apache /var/www/html/'su -lc 'chmod o+rX /path/monrepo'Scripts de régénération automatique des dépôts
Tâche que vous allez vous trouvez à faire souvent, voici donc un script pour le dépôt el5.5 (effectué avec les droits root) :#!/bin/sh
Et pour Fedora 14 :chown -R apache:apache /var/www/html/linux/el5/
createrepo -g ~/comps.xml -d /var/www/html/linux/el5/5/i386/
createrepo -g ~/comps.xml -d /var/www/html/linux/el5/5/x86_64/
repoview /var/www/html/linux/el5/5/i386/
repoview /var/www/html/linux/el5/5/x86_64/
#permet d'avoir le même style que l'index.html
cp -f /var/www/html/css/repostyle.css /var/www/html/linux/el5/5/i386/repoview/layout/
cp -f /var/www/html/css/repostyle.css /var/www/html/linux/el5/5/x86_64/repoview/layout/
/etc/init.d/httpd reload
#!/bin/sh
chown -R apache:apache /var/www/html/linux/fedora/
createrepo -g ~/comps.xml -d /var/www/html/linux/fedora/14/i386/
createrepo -g ~/comps.xml -d /var/www/html/linux/fedora/14/x86_64/
repoview /var/www/html/linux/fedora/14/i386/
repoview /var/www/html/linux/fedora/14/x86_64/
#permet d'avoir le même style que l'index.html
cp -f /var/www/html/css/repostyle.css /var/www/html/linux/fedora/14/i386/repoview/layout/
cp -f /var/www/html/css/repostyle.css /var/www/html/linux/fedora/14/x86_64/repoview/layout/
/etc/init.d/httpd reload
Génération de la clé GPG et du fichier myrepo.repo
Pour finaliser votre dépôt, il vous faut une clé GPG qui va authentifier vos rpm présents sur le dépôt, je vous invite à lire GnuPG : Signature et Chiffrement afin de créer votre propre clé GPG.Ensuite, il va falloir ajouter la définition de votre dépôt et la clé GPG à chacun de vos "clients" de votre dépôt.
Voici le fichier qui sera dans /etc/yum.repo.d/
su -lc 'vi /etc/yum.repo.d/myrepo.repo'
Et comme un exemple est toujours mieux qu'un beau discours, voici le contenu de mon fichier myrepo.spec qui me permet de générer un rpm pour ajouter MyRepo ![MyRepo]
name=MyRepo Repository for Enterprise Linux $releasever - $basearch
baseurl=http://repository.opti-time.net:81/linux/el5/$releasever/$basearch/
enabled=1
#failovermethod=priority
metadata_expire=7d
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-MyRepo.gpg
Bien-sur, il faudra en faire un pour Fedora 14, en remplaçant el5 par fc ;)Name: myrepo-repo-el5
Version: 1.0
Release: 0.0%{?dist}
Summary: This package is the repository of MyRepo
Group: Applications/ProjectManagement
License: GPL
URL: http://www.myrepo.org/linux/
Vendor: Slobberbone
Source0: %{name}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch: noarch
%description
Repository RHEL / Centos for MyRepo
%prep
%setup -q
%install
rm -rf %{buildroot}
mkdir -p %{buildroot}%{_sysconfdir}/yum.repos.d/
mkdir -p %{buildroot}%{_sysconfdir}/pki/rpm-gpg/
install -c -m 755 optitime.repo %{buildroot}%{_sysconfdir}/yum.repos.d/
install -c -m 755 RPM-GPG-KEY-Opti-TimeSA.gpg %{buildroot}%{_sysconfdir}/pki/rpm-gpg/
%clean
rm -rf %{buildroot}
%files
%defattr(-,root,root,-)
%{_sysconfdir}/yum.repos.d/optitime.repo
%{_sysconfdir}/pki/rpm-gpg/RPM-GPG-KEY-Opti-TimeSA.gpg
%changelog
* Wed Aug 17 2011 MyRepo <slobberbone@myrepo.org> 1.0-1.1
- initial release
Il ne faut pas oublier que lorsque vous mettez vos RPM sur le dépôt que ceux-ci soient signés grâce à la commande :
rpmsign --addsign monrpm.rpmConclusion
Vous voilà fin prêt ! La technique n'est peut-être pas orthodoxe, mais ça a le mérite de fonctionner ! Comme d'habitude, je vous invite à me laisser des commentaires afin de l'améliorer !Bienvenue sur Dotclear ! - Slobberbone V4
Par , le samedi 06 août 2011 - 12:00 | Catégories : installation, slobberbone, Général, apache, blog, CentOS, dotclear, Fedora, GNU-Linux, mysql, planet-libre, web
Slobberbone V4
Ceci est votre premier billet. Quand vous serez prêt à bloguer, connectez-vous pour le modifier ou le supprimer.
Alors oui, j'étais déjà sous Dotclear avant ... mais ce message de bienvenue existe car j'ai enfin migrer mon blog qui était hébergé chez Free http://slobberbone.free.fr/ vers mon serveur dédié chez OVH et du coup installation de Dotclear tout fraiche !!!
Après avoir lancé Communauté-SLA.org en ayant installé la totalité des outils sur ce serveur dédié chez OVH, il était temps d'y mettre mon blog personnel ! Cela faisait 2 ans que Free n'avait pas écraser l'ensemble de ma base de données, il ne fallait donc pas trop attendre ...
J'espère que le thème vous plaira, moi c'est le cas et ça me donne un peu plus envie de bloguer ! :D
Allé pour la route, une petite procédure pour installer Dotclear !
Installation des prérequis
Sous CentOS/Fedora : yum install httpd mysql-server mysql php
Configuration de MySQL
/etc/init.d/mysqld start
/usr/bin/mysql_secure_installation
Préparation de MySQL
Ici l'option "-proot" où "root" est mon mot de passe pour l'utilisateur root ... il va sans dire que ce n'est qu'un exemple :-) et on part du principe que tout est en local
mysql -u root -proot
Résultats :
On crée la base de donnée du blog :#Welcome to the MySQL monitor. Commands end with ; or \g.
#Your MySQL connection id is 7
#Server version: 5.0.77 Source distribution
#
#Type 'help;' or '\h' for help. Type '\c' to clear the buffer
mysqlcreate database blog;#Query OK, 1 row affected (0.01 sec)
Ici on va créer un utilisateur dotclear avec un mot de passe dotclear ( à changer bien évidemment !
mysqlgrant all on blog.* to 'dotclear'@'localhost' identified by 'dotclear';On réinitialise les droits#Query OK, 0 rows affected (0.00 sec)
mysqlflush privileges;Et on quitte mysql !#Query OK, 0 rows affected (0.00 sec)
mysqlquit#Bye
Configuration d'Apache
Pour ajouter la configuration, il vous suffit d'ajouter dans /etc/httpd/conf.d un repertoire monpseudo
cd /etc/httpd/conf.d/
mkdir monpseudo
cd monpseudo touch blog.conf
Ensuit on édite blog.conf vi blog.conf et on réalise une configuration comme telle :
ServerName blog.mondnomdedomaine.net
<LocationMatch "^/monpseudo/dotclear/+$">
Options -Indexes
ErrorDocument 403 /error/noindex.html
</LocationMatch>Ici on part du principe que Dotclear à été installé à la racine de mon répertoire
monpseudo, par défaut présent dans
/var/www/.
cd /var/www/
mkdir monpseudo
chown apache:apache monpseudoOn recharge la configuration d'apache :
service httpd reloadMaintenant, il ne reste plus qu'à préparer l'installation de Dotclear !
Installation de Dotclear
cd /var/www/monpseudo
wget http://download.dotclear.net/loader/dotclear2-loader.php
chown apache:apache dotclear2-loader.php
Et voilà ! Pour terminer l'installation allez sur l'url d'installation de Dotclear : http://monsite/monpseudo/dotclear2-loader.php ! Là vous sera demandé des identifiants de connexion à la base de données MySQL que l'on a crée plus haut !A vous de bloguer !
@ très bientôt !
Installation de Nagios sur CentOS sans RPM
Par , le jeudi 28 juil 2011 - 18:00 | Catégories : Réseau, CentOS, Fedora, GNU-Linux, monitoring, Nagios, ndo2db, skin, vautour
Depuis le temps que j'en parlais ... voilà enfin ma procédure d'installation de Nagios 3.2 sous CentOS 5.
Alors tout d'abord, à l'époque il n'y avait pas de rpm (j'ai trouvé il y a peu un dépôt ... j'y reviendrais dans un autre billet). Donc compilation à la main !
Ensuite, les puristes crierons lorsqu'ils verront où j'installe Nagios ... le but était d'avoir quelque chose d'opérationnel assez rapidement. Faire mieux étant remis à plus tard. Si vous avez des modifications à apporter à cette procédure, je vous invite à laisser un commentaire ! Je la compléterai avec joie ! :)
Préparation de la machine
Avant toute chose, penser à bien configurer votre parefeu et SELinux. Pour un premier test, il faut désactiver le tout ! Pour le parefeu :
service iptables stop
Pour SELinux : vi /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
# targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.
SELINUXTYPE=targeted
Installation des pré-requis
Passage en root
su -
Installation prérequis
yum install gcc httpd mysql-server mysql-devel openssl
Téléchargement des sources Nagios
cd /usr/local/ wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.1.tar.gz wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.14.tar.gz wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.12.tar.gz wget http://prdownloads.sourceforge.net/sourceforge/nagios/ndoutils-1.4b9.tar.gz
Décompression de Nagios Core
tar xfvz nagios-3.2.1.tar.gz cd nagios-3.2.1/
Création du groupe et utilisateur nagios
groupadd nagios groupadd nagcmd useradd nagios -g nagios,nagcmd
Installation de Nagios
Compilation de Nagios Core
./configure --prefix=/usr/local/nagios --enable-mysql --disable-pgsql --with-ndo2db-user=nagios --with-ndo2db-group=nagios --with-command-group=nagcmd
Résultats :
#*** Configuration summary for nagios 3.2.1 03-09-2010 ***:
#
# General Options:
# -
# Nagios executable: nagios
# Nagios user/group: nagios,nagios
# Command user/group: nagios,nagcmd
# Embedded Perl: no
# Event Broker: yes
# Install ${prefix}: /usr/local/nagios/
# Lock file: ${prefix}/var/nagios.lock
# Check result directory: ${prefix}/var/spool/checkresults
# Init directory: /etc/rc.d/init.d
# Apache conf.d directory: /etc/httpd/conf.d
# Mail program: /bin/mail
# Host OS: linux-gnu
#
# Web Interface Options:
#
# HTML URL: http://localhost/nagios/
# CGI URL: http://localhost/nagios/cgi-bin/
# Traceroute (used by WAP): /bin/traceroute
#
#
#Review the options above for accuracy. If they look okay,
#type 'make all' to compile the main program and CGIs.
make all
Résultats :
#*** Compile finished ***
#
#If the main program and CGIs compiled without any errors, you
#can continue with installing Nagios as follows (type 'make'
#without any arguments for a list of all possible options):
#
# make install
# - This installs the main program, CGIs, and HTML files
#
# make install-init
# - This installs the init script in /etc/rc.d/init.d
#
# make install-commandmode
# - This installs and configures permissions on the
# directory for holding the external command file
#
# make install-config
# - This installs *SAMPLE* config files in /usr/local/nagios//etc
# You'll have to modify these sample files before you can
# use Nagios. Read the HTML documentation for more info
# on doing this. Pay particular attention to the docs on
# object configuration files, as they determine what/how
# things get monitored!
#
# make install-webconf
# - This installs the Apache config file for the Nagios
# web interface
#
#
#*** Support Notes *******************************************
#
#If you have questions about configuring or running Nagios,
#please make sure that you:
#
# - Look at the sample config files
# - Read the HTML documentation
# - Read the FAQs online at http://www.nagios.org/faqs
#
#before you post a question to one of the mailing lists.
#Also make sure to include pertinent information that could
#help others help you. This might include:
#
# - What version of Nagios you are using
# - What version of the plugins you are using
# - Relevant snippets from your config files
# - Relevant error messages from the Nagios log file
#
#For more information on obtaining support for Nagios, visit:
#
# http://www.nagios.org/support/
#
#*************************************************************
make install
make install-init
make install-commandmode
make install-config
make install-webconf
Démarrage à vide de Nagios
/etc/init.d/nagios start
Résultat :
#Starting nagios: done.
Installation et Configuration de MySQL si non installée
yum install mysql-server mysql
/etc/init.d/mysqld start
/usr/bin/mysql_secure_installation
Préparation de MySQL
Ici l'option "-proot" où "root" est mon mot de passe pour l'utilisateur root ... il va sans dire que ce n'est qu'un exemple :-) mysql -u root -proot
Résultats :
#Welcome to the MySQL monitor. Commands end with ; or \g.
#Your MySQL connection id is 7
#Server version: 5.0.77 Source distribution
#
#Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> create database nagios;
#Query OK, 1 row affected (0.01 sec)
mysql> grant all on nagios.* to 'nagios'@'localhost' identified by 'nagios';
#Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
#Query OK, 0 rows affected (0.00 sec)
mysql> quit
#Bye
Installation du module base de données NDO

Décompression de NDO
cd /usr/local/
tar xvfz ndoutils-1.4b9.tar.gz
cd ndoutils-1.4b9
Compilation NDO
./configure
Résultats :
#*** Configuration summary for ndoutils 1.4b9 10-27-2009 ***:
#
# General Options:
# -
# NDO2DB user: nagios
# NDO2DB group: nagios
#
#
#Review the options above for accuracy. If they look okay,
#type 'make' to compile the NDO utilities.
make
Mise en place de la librairie NDO dans Nagios
cp src/ndomod-3x.o /usr/local/nagios/bin/ndomod.o
cp src/ndo2db-3x /usr/local/nagios/bin/ndo2db
Création base Nagios
cd db
./installdb -u nagios -p nagios -h localhost -d nagios
Résultats :
#DBD::mysql::db do failed: Table 'nagios.nagios_dbversion' doesn't exist at ./installdb line 51.
#** Creating tables for version 1.4b9
# Using mysql.sql for installation...
#** Updating table nagios_dbversion
#Done!
cp /usr/local/ndoutils-1.4b9/config/ndo2db.cfg-sample /usr/local/nagios/etc/ndo2db.cfg
cp /usr/local/ndoutils-1.4b9/config/ndomod.cfg-sample /usr/local/nagios/etc/ndomod.cfg
Éditer les fichiers de configuration
cd /usr/local/nagios/etc/
vi ndo2db.cfg
Dans ce fichier vous renseignerez l'utilisateur de mysql :
# SOCKET TYPE
# This option determines what type of socket the daemon will create
# an accept connections from.
# Value:
# unix = Unix domain socket (default)
# tcp = TCP socket
#socket_type=unix
socket_type=tcp
...
# DATABASE USERNAME/PASSWORD
# This is the username/password that will be used to authenticate to the DB.
# The user needs at least SELECT, INSERT, UPDATE, and DELETE privileges on
# the database.
db_user=nagios
db_pass=nagios
vi ndomod.cfg
Modifier le type socket :
...
#output_type=file
output_type=tcpsocket
#output_type=unixsocket
...
#output=/usr/local/nagios/var/ndo.dat
output=127.0.0.1
#output=/usr/local/nagios/var/ndo.sock
vi nagios.cfg
Modifier le partie event_broker (/event_broker pour rechercher sous Vi)
-
# EVENT BROKER OPTIONS
# Accepte des datas de l'extérieur (dont NDO)
# Controls what (if any) data gets sent to the event broker.
# Values: 0 = Broker nothing
# -1 = Broker everything
# <other> = See documentation
event_broker_options=-1
broker_module=/usr/local/nagios/bin/ndomod.o config_file=/usr/local/nagios/etc/ndomod.cfg
-
Arrêt de Nagios
/etc/init.d/nagios stop
Démarrage du deamon NDO2DB
/usr/local/nagios/bin/ndo2db -c /usr/local/nagios/etc/ndo2db.cfg
Démarrage de Nagios
/etc/init.d/nagios start
Vérification du démarrage de Nagios
vi /usr/local/nagios/var/nagios.log
NB : Si Code 127 : Nagios Plugin non compilé
Installation des plugins Nagios
Décompression de Nagios Plugin
cd /usr/local
tar xvfz nagios-plugins-1.4.14.tar.gz
Compilation de Nagios Plugin
cd nagios-plugins-1.4.14
./configure
Résultats :
# --with-apt-get-command:
# --with-ping6-command: /bin/ping6 -n -U -w %d -c %d %s
# --with-ping-command: /bin/ping -n -U -w %d -c %d %s
# --with-ipv6: yes
# --with-mysql: /usr/bin/mysql_config
# --with-openssl: yes
# --with-gnutls: no
# --enable-extra-opts: no
# --with-perl: /usr/bin/perl
# --enable-perl-modules: no
# --with-cgiurl: /nagios/cgi-bin
# --with-trusted-path: /bin:/sbin:/usr/bin:/usr/sbin
# --enable-libtap: no
make
make install
Vérification des modules
ls /usr/local/nagios/libexec/
/etc/init.d/nagios restart
Changer authentification
vi /usr/local/nagios/etc/cgi.cfg
Exemple de configuration :
...
use_authentication=1
use_ssl_authentication=0
...
Pour le reste voici une brève explication :
- authorized_for_system_information : indiquent quels sont les utilisateurs pouvant voir l'état des services
- authorized_for_configuration_information : indiquent quels sont les utilisateurs pouvant voir la configuration de serveur Nagios
- authorized_for_system_commands : indiquent quels sont les utilisateurs pouvant exécuter des commandes systèmes au travers de l'interface de Nagios
- authorized_for_all_services : indiquent quels sont les utilisateurs pouvant voir l'état de tout les services (par défaut, on voit uniquement les services pour lesquels l'utilisateur est une personne de contact)
- authorized_for_all_hosts : idem que ci-dessus mais pour les hôtes (les machines)
- authorized_for_all_service_commands : indiquent quels sont les utilisateurs pouvant exécuter des commandes pour tous les services (par défaut, on peut exécuter des commandes uniquement sur les services pour lesquels l'utilisateur est une personne de contact)
- authorized_for_all_host_commands : idem que ci-dessus mais pour les hôtes (les machines)
Je vous laisse le soin de compléter la configuration des personnes autorisées ou non à agir sur l'interface de Nagios !
Déclarer le user nagiosadmin
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
NB :Pour ajouter un utilisateur
htpasswd /usr/local/nagios/etc/htpasswd.users <username>
Changer le propriétaire du répertoire Nagios
chown -Rf nagios:nagios /usr/local/nagios/
Redemarrer le module NDO et Nagios
ps -e | grep ndo2db
kill PID
/usr/local/nagios/bin/ndo2db -c /usr/local/nagios/etc/ndo2db.cfg
/etc/init.d/nagios restart
Modification du script de démarrage de nagios pour prendre en compte ndo2db
vi /etc/init.d/nagios
-
...
start) echo -n "Starting nagios:"
$NagiosBin -v $NagiosCfgFile > /dev/null 2>&1;
if $? -eq 0; then
########################################################################
###############################A Ajouter################################
su - $NagiosUser -c "/usr/local/nagios/bin/ndo2db -c /usr/local/nagios/etc/ndo2db.cfg"
########################################################################
su - $NagiosUser -c "touch $NagiosVarDir/nagios.log $NagiosRetentionFile"
...
stop)
echo -n "Stopping nagios: "
pid_nagios
killproc_nagios nagios
########################################################################
###############################A Ajouter################################
su - $NagiosUser -c "skill ndo2db"
########################################################################
...
-
Installation du skin Vautour
J'utilise un skin très agréable nommé Vautour car il faut avouer que l'interface de base de Nagios est repoussante ... Comme tout projet il faut savoir le vendre et celà passe par l'esthétique !
wget http://www.be-root.com/downloads/nagios/vautour/vautour_style.zip
unzip vautour_style.zip -d /usr/local/nagios/share/
Merci à l'équipe de Be-Root !
Et voilà votre installation de Nagios doit être prête ! Il ne reste plus qu'à configurer notre nagios pour qu'il surveille nos serveurs ! Mais ça c'est dans un prochain billet ;) !
Rappel
Vérifier la configuration
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Faire des propositions d'optimisation (juste pour avoir la commande ;) )
/usr/local/nagios/bin/nagios -s /usr/local/nagios/etc/nagios.cfg
Erreur lors de l'installation d'Eclipse sous CentOS 5
Par , le lundi 11 juil 2011 - 11:00 | Catégories : Eclipse, java-1.4.2-gcj-compat, Opti-Time, planification, rebuild-security-providers, tournées, Développement, CentOS, Gnome, GNU-Linux, java
Bonjour à tous,
Ce matin en voulant rejouer un bug de notre solution d'optimisation et de planification de techniciens mobiles (Opti-Time RMS et GOS). J'ai eu besoin d'installer un environnement de debug sur une CentOS 5 Server. D'ailleurs, vous aurez remarqué (ou pas) que le site Internet d'Opti-Time est flambant neuf !! Et sous Drupal ! Le libre s'installe de plus en plus chez nous et ce n'est pas pour me déplaire !
J'ai d'abord dû installer une interface graphique :
su -lc 'yum groupinstall "X Window System" "Environnement de bureau GNOME"'
Puis vient le moment d'installer Eclipse : su -lc 'yum install eclipse-platform' Hors en voulant installer le paquet 'eclipse-platform' j'ai obtenu l'erreur suivante :
Missing Dependency: /usr/bin/rebuild-security-providers is needed by package java-1.4.2-gcj-compat-1.4.2.0-40jpp.115.x86_64 (installed)
En effet, il se peut qu'au niveau de mes dépôts, entre EPEL, CentOS Plus et surtout ceux d'Opti-Time, il y ait des petits soucis au niveau de java ... même si je ne vois pas trop où ... par soucis d'efficacité, je n'ai pas chercher à comprendre !
Voici la solution détaillée : JPackage jpackage-utils compatibility for CentOS 5.x , sinon vous pouvez tout simplement faire ce qui suit :
su -lc 'rpm ivh http://plone.lucidsolutions.co.nz/linux/centos/images/jpackage-utils-compat-el5-0.0.1-1.noarch.rpm/at_download/file'
Attention à bien autoriser l'installation malgré la clé gpg inconnue !
Une fois fait, on peut reprendre l'installation d'Eclipse :
su -lc 'yum install eclipse-platform'
Et voilà, maintenant, je n'ai plus qu'à récupérer mes sources ... mais là, ça ne vous intéresse plus ;) !
Erreur lors de l'installation d'Eclipse sous CentOS 5
Par , le lundi 11 juil 2011 - 11:00 | Catégories : Développement, CentOS, Eclipse, Gnome, GNU-Linux, java, java-1.4.2-gcj-compat, Opti-Time, planification, rebuild-security-providers, tournées
Bonjour à tous,
Ce matin en voulant rejouer un bug de notre solution d'optimisation et de planification de techniciens mobiles (Opti-Time RMS et GOS). J'ai eu besoin d'installer un environnement de debug sur une CentOS 5 Server. D'ailleurs, vous aurez remarqué (ou pas) que le site Internet d'Opti-Time est flambant neuf !! Et sous Drupal ! Le libre s'installe de plus en plus chez nous et ce n'est pas pour me déplaire !
J'ai d'abord dû installer une interface graphique :
su -lc 'yum groupinstall "X Window System" "Environnement de bureau GNOME"'
Puis vient le moment d'installer Eclipse : su -lc 'yum install eclipse-platform' Hors en voulant installer le paquet 'eclipse-platform' j'ai obtenu l'erreur suivante :
Missing Dependency: /usr/bin/rebuild-security-providers is needed by package java-1.4.2-gcj-compat-1.4.2.0-40jpp.115.x86_64 (installed)
En effet, il se peut qu'au niveau de mes dépôts, entre EPEL, CentOS Plus et surtout ceux d'Opti-Time, il y ait des petits soucis au niveau de java ... même si je ne vois pas trop où ... par soucis d'efficacité, je n'ai pas chercher à comprendre !
Voici la solution détaillée : JPackage jpackage-utils compatibility for CentOS 5.x , sinon vous pouvez tout simplement faire ce qui suit :
su -lc 'rpm ivh http://plone.lucidsolutions.co.nz/linux/centos/images/jpackage-utils-compat-el5-0.0.1-1.noarch.rpm/at_download/file'
Attention à bien autoriser l'installation malgré la clé gpg inconnue !
Une fois fait, on peut reprendre l'installation d'Eclipse :
su -lc 'yum install eclipse-platform'
Et voilà, maintenant, je n'ai plus qu'à récupérer mes sources ... mais là, ça ne vous intéresse plus ;) !
Fin de vie pour la Fedora 13
Par , le mardi 28 juin 2011 - 08:35 | Catégories : EOL, fedora17, RedHat, ScientificLinux, Fedora, CentOS, fedora, fedora13, fedora14, fedora15, fedora16
Un bref rappel pour ceux qui seraient encore en Fedora 13, celle-ci est arrivée au terme de son cycle de maintenance (End of Life). Les cycles des Fedora se terminent en général 1 mois après la sortie de la version N+2.
Depuis le 24 juin 2011, 1 mois après la sortie de la Fedora 15, la Fedora 13 ne reçoit donc plus aucune mise à jour, il est de ce fait très important de passer à une version plus récente et encore maintenue comme la Fedora 14, voire mieux, la Fedora 15.
Pour info, la Fedora 14 est sortie le 02/11/2010 et devrait voir sa fin de vie après l'arrivée de la Fedora 16, grosso modo pour la fin de cette année. Quant à la Fedora 15, sortie le 24/05/2011, elle a encore de beaux jours devant elle. La Fedora 17 ne devrait sortir que dans 1 an...
Si le cycle Fedora de 6 mois vous semble trop court, il y a la distribution RedHat (il faut payer une souscription) et ses clones (gratuits), comme la Scientific Linux 6. Là le cycle de vie est de 10 ans, comme expliqué ici.
Nouveau serveur dédié pour llaumgui.com
Par , le mercredi 15 juin 2011 - 22:07 | Catégories : RHEL, RHEL 6, Linux, CentOS, Dedibox, Kimsufi
Après 4 années de bons et loyaux services, la vieille Dedibox V1 qui hébergeait, entre autres, llaumgui.com fait place à un serveur tout neuf : un Kimsufi 16G.
Au programme :
- 16 Go de RAM (contre 1Go)
- Un processeur Intel Core I5 (contre un vieux VIA C7)
- 2To de disque dur (contre 250Go)
- etc...
La distribution Linux change elle aussi puisque je passe de CentOS 5.6 à Red Hat EL 6.1.
Linstallation de la RHEL6 fut dailleurs très sportive via le vKVM d'OVH. Une fois l'install achevée, j'ai eu tout le mal du monde à relancer le réseau avant de découvrir que les drivers e1000E (Intel® 82563/6/7, 82571/2/3/4/7/8/9 and 82583 PCI-E based Ethernet NICs) ne semblaient pas supportés par la RHEL 6.1... Heureusement que j'ai trouvé un dépôt non officiel proposant ces drivers !
Bref, maintenant on aura plus de performances ! On va enfin pouvoir réactiver les services coupés au fil du temps sur Scénario-Paintball et en rajouter de nouveaux !
Si vous voyez ce billet c'est que les DNS sont propagés.
Une commande « top » plus graphique
Par , le dimanche 13 mars 2011 - 10:30 | Catégories : processus, CentOS, htop
htop est une application qui s’exécute via un terminal et qui remplace la commande « top » et qui permet de voir l’utilisation des processus. Il intègre une multitude de fonction comme le trie par utilisation de CPU et de mémoire, l’affichage des sous processus en arbre et plein d’autre petites options pour une utilisation sous centOS [...]
Quand JPackage n'autorise pas l'installation de tomcat6 sous CentOS 5 ...
Par , le mardi 08 mars 2011 - 10:30 | Catégories : Astuce Fedora du Week-End, CentOS 5 Linux GNU-Linux Tomcat 6 JPackage jpackage-utils rebuild-security-providers java-1.4.2-gcj-compat erreur yum
Ce billet à pour but de ne pas oublier cette petite manipulation concernant l'installation d'un Tomcat 6 sous centOS 5 :
Ajout du dépôt JPackage :
su -
cd /etc/yum.repos.d/
wget http://www.jpackage.org/jpackage50.repo
Installation de Tomcat 6 :
yum install tomcat6
On obtient l'erreur suivante :
Loaded plugins: downloadonly, fastestmirror
Loading mirror speeds from cached hostfile
* epel: fr2.rpmfind.net
* jpackage-generic: mirror.ibcp.fr
* base: centos.crazyfrogs.org
* updates: centos.crazyfrogs.org
* jpackage-generic-updates: mirror.ibcp.fr
* extras: centos.crazyfrogs.org
* addons: centos.crazyfrogs.org
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package tomcat6.noarch 0:6.0.29-1.jpp5 set to be updated
--> Processing Dependency: tomcat6-lib = 6.0.29-1.jpp5 for package: tomcat6
--> Processing Dependency: java for package: tomcat6
--> Processing Dependency: jakarta-commons-logging for package: tomcat6
--> Processing Dependency: jakarta-commons-daemon for package: tomcat6
--> Running transaction check
---> Package java-1.6.0-openjdk.i386 1:1.6.0.0-1.16.b17.el5 set to be updated
--> Processing Dependency: libgif.so.4 for package: java-1.6.0-openjdk
--> Processing Dependency: tzdata-java for package: java-1.6.0-openjdk
---> Package tomcat6-lib.noarch 0:6.0.29-1.jpp5 set to be updated
--> Processing Dependency: tomcat6-el-1.0-api = 6.0.29-1.jpp5 for package: tomcat6-lib
--> Processing Dependency: tomcat6-jsp-2.1-api = 6.0.29-1.jpp5 for package: tomcat6-lib
--> Processing Dependency: tomcat6-servlet-2.5-api = 6.0.29-1.jpp5 for package: tomcat6-lib
--> Processing Dependency: ecj for package: tomcat6-lib
--> Processing Dependency: /usr/share/java/ecj.jar for package: tomcat6-lib
--> Processing Dependency: jakarta-commons-dbcp-tomcat5 for package: tomcat6-lib
--> Processing Dependency: jakarta-commons-collections-tomcat5 for package: tomcat6-lib
--> Processing Dependency: jakarta-commons-pool-tomcat5 for package: tomcat6-lib
---> Package jakarta-commons-daemon.i386 1:1.0.1-6jpp.1 set to be updated
--> Processing Dependency: java-gcj-compat for package: jakarta-commons-daemon
--> Processing Dependency: libgcj_bc.so.1 for package: jakarta-commons-daemon
---> Package jakarta-commons-logging.i386 0:1.0.4-6jpp.1 set to be updated
--> Running transaction check
---> Package tzdata-java.i386 0:2010l-1.el5 set to be updated
---> Package tomcat6-servlet-2.5-api.noarch 0:6.0.29-1.jpp5 set to be updated
---> Package jakarta-commons-dbcp-tomcat5.noarch 0:1.2.2-2.jpp5 set to be updated
---> Package ecj.noarch 1:3.3.1.1-3.jpp5 set to be updated
---> Package jakarta-commons-pool-tomcat5.noarch 0:1.3-11.jpp5 set to be updated
---> Package java-1.4.2-gcj-compat.i386 0:1.4.2.0-40jpp.115 set to be updated
--> Processing Dependency: /usr/bin/rebuild-security-providers for package: java-1.4.2-gcj-compat
--> Processing Dependency: /usr/bin/rebuild-security-providers for package: java-1.4.2-gcj-compat
--> Processing Dependency: gjdoc for package: java-1.4.2-gcj-compat
---> Package libgcj.i386 0:4.1.2-48.el5 set to be updated
---> Package tomcat6-el-1.0-api.noarch 0:6.0.29-1.jpp5 set to be updated
---> Package jakarta-commons-collections-tomcat5.i386 0:3.2-2jpp.3 set to be updated
---> Package tomcat6-jsp-2.1-api.noarch 0:6.0.29-1.jpp5 set to be updated
---> Package eclipse-ecj.i386 1:3.2.1-19.el5.centos set to be updated
---> Package giflib.i386 0:4.1.3-7.1.el5_3.1 set to be updated
--> Running transaction check
---> Package java-1.4.2-gcj-compat.i386 0:1.4.2.0-40jpp.115 set to be updated
--> Processing Dependency: /usr/bin/rebuild-security-providers for package: java-1.4.2-gcj-compat
--> Processing Dependency: /usr/bin/rebuild-security-providers for package: java-1.4.2-gcj-compat
---> Package gjdoc.i386 0:0.7.7-12.el5 set to be updated
--> Processing Dependency: antlr for package: gjdoc
--> Running transaction check
---> Package java-1.4.2-gcj-compat.i386 0:1.4.2.0-40jpp.115 set to be updated
--> Processing Dependency: /usr/bin/rebuild-security-providers for package: java-1.4.2-gcj-compat
--> Processing Dependency: /usr/bin/rebuild-security-providers for package: java-1.4.2-gcj-compat
---> Package antlr.i386 0:2.7.6-4jpp.2 set to be updated
--> Finished Dependency Resolution java-1.4.2-gcj-compat-1.4.2.0-40jpp.115.i386 from base has depsolving problems
--> Missing Dependency: /usr/bin/rebuild-security-providers is needed by package java-1.4.2-gcj-compat-1.4.2.0-40jpp.115.i386 (base)
Error: Missing Dependency: /usr/bin/rebuild-security-providers is needed by package java-1.4.2-gcj-compat-1.4.2.0-40jpp.115.i386 (base)
Résolution de l'installation :
yum remove jpackage-utils
yum --disablerepo=jpackage* install jpackage-utils
yum install tomcat6
Et voilà, plus derreur, visiblement le paquet jpackage-utils de Jpackage ne fonctionne pas, donc on utilise celui des dépôts CentOS !
Créer un terminal serveur avec un serveur Openldap et FreeNX sur CentOS
Par , le jeudi 07 oct 2010 - 11:44 | Catégories : Logiciel, FreeNX, Openldap, Terminal Serveur, Linux, CentOS, LDAP
Pré-requis Avoir un serveur openldap fonctionnel Être en root (su -) Avoir gnome d’installer sur le serveur avec cette commande [root@server ~]# yum groupinstall "GNOME Desktop Environment" Installation de freeNX sur le serveur « terminal server » Dans un premier temps installez FreeNX [root@server ~]# yum install nx freenx Création du fichier minimal de configuration [root@server ~]# cd /etc/nxserver ; cp node.conf.sample node.conf Décommentez à la ligne [...]
Accéder aux partitions vfat avec httpd en ayant selinux activé
Par , le dimanche 25 avr 2010 - 11:18 | Catégories : Freeplayer, CentOS, Fedora, Linux
Récemment, mon freeplayer perso a rencontré un petit souci : Pas moyen de lister mon répertoire "Mes images" sur ma partition dos (réminiscence du dual boot que je n'utilise quasiment plus). Or Selinux ne gène en rien à part ce détail, donc ça m'embêtait de le passer en permissif juste pour ça.
Le problème vient du fait que les fichiers sur cette partition ne sont pas étiquetés avec le bon type. Or on ne peut pas réétiqueter un système de fichiers Dos. Du coup, il faut modifier la fstab, pour appliquer le contexte au moment du montage.
/dev/sda5 /mnt/wind auto user,noauto,iocharset=utf8,showexec,context=system_u:object_r:httpd_sys_content_t:s0 0 0
Installation d'un moteur de recherche pour intranet sur serveur CentOS
Par , le jeudi 25 fév 2010 - 23:31 | Catégories : CentOS, Linux
Récemment, j'ai voulu monter un petit moteur de recherche pour notre intranet. Nous disposons de plusieurs sites, un pour chaque service/équipe, et peu (ou pas) de mise en commun. En tout cas pas assez.
J'ai donc pensé qu'indexer une bonne partie de notre domaine pourrait s'avérer for utile.
Etat initial
Nous disposons d'un petit (1GHz, 521Mo de RAM) PC sous CentOS 5, qui nous sert déjà de serveur web/samba/impression/polices.
J'ai donc cherché dans les dépôts de base un moteur de recherche. Le seul que j'ai trouvé, ht://Dig n'est plus maintenu depuis 2004. Je me suis donc tourné vers nutch, projet hébergé par Apache. C'est une application en java, qui nécessite le jre officiel. Il n'y a qu'un tar à télécharger, mais 2 fonctions bien différentes.
Le crawl
C'est la partie la plus complexe et gourmande. On peut commencer par suivre la procédure indiquée sur le wiki officiel. En résumé :
- Compléter la section http.agent.name de $NUTCH_HOME/conf/nutch-default.xml
- Modifier le fichier $NUTCH_HOME/conf/crawl-urlfilter.txt pour restreindre la recherche au domaine intranet
+^http://(a-z0-9*\.)*mon.domaine/ #pour les liens avec le nom de domine +^http://^\.*/ # pour les noms de machine sans domaine
- Créer un fichier avec les urls de départ.
- Lancer le crawl
$NUTCH_HOME/bin/nutch crawl mesurls.txt -dir crawl -depth 3 -topN 50
Le moteur de recherche
Maintenant qu'on a réussi son indexation, il n'y a plus qu'à installer le moteur de recherche. Il faut avoir installé et lancé le service tomcat5. Ensuite on copie $NUTCH_HOME/nutch-1.0.war dans /var/lib/tomcat5/webapps.
On relance tomcat5, nutch s'installe. Il n'y a plus qu'à modifier searcher.dir par $NUTCH_HOME/crawl dans /var/lib/tomcat5/webapps/nutch-1.0/WEB-INF/classes/nutch-default.xml, re-relancer tomcat5, et voilà! vous pouvez lancer votre première recherche sur http://votreserveur:8080/
Problèmes
Nutch est TRES gourmand. Java phagocyte la RAM. D'où de fréquentes erreurs avec "heap size" ou "out of memory". Quand on cherche un peu sur internet, on voit que nutch a plutôt été pensé pour des clusters de serveurs, qui n'ont rien à voir avec un Nec Powermate...
Après avoir augmenté tous les paramètres de mémoire des fichiers de conf, la seule solution que j'ai trouvée est :
- Exécuter le crawl sur un autre machine.
- Faire un crawl pas à pas comme sur cet exemple
- Et surtout sauter l'étape mergesegments pour la remplacer par une simple copie des segments. L'indexation se passe toujours aussi bien.
Et depuis, c'est le bonheur, je trouve de la doc de tous les cotés sur mon intranet !
Développer pour l'iPhone 3.0, partie I
Par , le jeudi 18 fév 2010 - 01:02 | Catégories : CentOS, Fedora, iPhone, Linux
J'ai un iPhone. J'aime bien programmer (ou plutôt bidouiller du code). Mais sans SDK Apple ? En fait ce n'est pas très compliqué. Il faut commencer par installer gcc.
Au préalable, il faut un iPhone jailbraké, avec cydia.
Se connecter à l'iPhone.
Il suffit d'utiliser iproxy, fourni dans les versions récentes d'usbmuxd (voir ce billet), et d'avoir installé openssh sur l'iphone avec cydia.
iproxy 3023 22
Puis dans un autre terminal :
ssh -p 3023 mobile@localhost
(le mot de passe par défaut est alpine)
Sur des distris moins à la pointe, on peut utiliser itunnel requiert libusb-devel entre autres.
Par exemple pour centos :
wget http://www.cs.utoronto.ca/~jingsu/itunnel/itunnel-0.0.9.tgz tar xzf itunnel-0.0.9.tgz cd itunnel-0.9 make ./itunnel
itunnel pointe par défaut le port 3023, donc la commande ssh est la même.
Après ça, on peut par exemple échanger les clés ssh, changer son mot de passe, modifier son .profile pour lancer bash au démarrage de la session.
Avant d'installer gcc
libgcc, requise par gcc n'est pas disponible sur cydia, donc on ne peut pas installer gcc directement.
Au préalable, on installe donc fake-libgcc.
Sur l'iPhone
wget http://files.getdropbox.com/u/876743/fake-libgcc_1.0_iphoneos-arm.deb dpkg -i fake-libgcc_1.0_iphoneos-arm.deb
Ensuite, on peut installer gcc avec cydia.
Installer les entêtes
Pour compiler du code, on va avoir besoin des entêtes (headers). Ils sont fournis avec le SDK Apple, ou on les trouve sur le web : sdk-2.0-headers.tar.gz.
Ensuite on les installe un peu où on veut, ils ne sont nécessaires qu'à la compilation. (Bon, normalement selon les directives linux filesystem hierarchy, on installe les données à partir de tar.gz dans /usr/local/, donc là ce serait /usr/local/include.)
J'ai plutôt installé les headers dans le home, pour être mois intrusif.
tar xzf sdk-2.0-headers.tar.gz mkdir /var/mobile/dev mv include-2.0-sdk-ready-for-iphone /var/mobile/dev/include
Et voilà, le système est prêt à compiler du code !
A suivre...



