Nagios : installation de base

Nagios est un outil de supervision de réseau libre et gratuit. Il permet de surveiller des hôtes et des services et de prévenir (email, sms) en cas de problème tel que l’arrêt d’un service, un hôte qui ne répond plus ou un routeur défaillant. Cet article explique la mise en œuvre de base de Nagios sur une machine CentOS 5.5.

Continue reading « Nagios : installation de base »

Utiliser rTorrent

Utilisation de rTorrent pour télécharger et partager vos fichiers

rTorrent est un client bittorrent non graphique que j’utilise depuis plusieurs années pour sa simplicité, sa faible empreinte niveau ressources et ses possibilités de configuration poussées. Au début il peut dérouter, mais après un temps d’adaptation, on découvre toute sa souplesse et sa puissance. Il suffit simplement d’un accès SSH pour pouvoir gérer ses téléchargements depuis n’importe où, très utile. Une particularité très intéressante de rTorrent est qu’il scrute le contenu d’un répertoire donné qui recevra les fichiers .torrent, ainsi dès qu’un nouveau torrent est ajouté dans celui-ci, le téléchargement débute automatiquement.

Continue reading « Utiliser rTorrent »

Ingredients : PHP, DB2 and unixODBC

In this post, we are going to do a recipe mixing those few ingredients: PHP, DB2 and unixODBC.

One of the project in my new job in Rome is to develop an application in PHP that works with an AS/400 DB2 database. I’ve been working with PHP and databases such as MySQL for quite some years now, instead, it has been my first encounter with DB2, so the challenge was interesting.

I did some search before even starting anything, and it seems there is mainly 2 ways of using DB2 with PHP : 1. install a IBM DB2 client on the computer where PHP is and build the ibm_db2 extension. 2. use DB2 with ODBC and the unixODBC drivers. This article explains how to make unixODBC to work with an AS/400 DB2 database on a Linux (CentOS) machine to access it with PHP.

Continue reading « Ingredients : PHP, DB2 and unixODBC »

Utiliser l’UUID des partitions dans le fstab

Après ma toute fraîche première installation d’Archlinux, j’ai été confronté à un problème d’apparence sérieux, mais vite résolu. A chaque redémarrage, mes disques étaient chamboulés, par ceci j’entends que par exemple sda1 devenait sdc1, sda2 pointait lui vers sdc2, puis cela revenait, plus ou moins aléatoirement. Problème d’uDev, de contrôleurs SATA/IDE un peu vieillots, je ne sais pas exactement, mais la résolution de ce problème est de simplement nommer les disques et partitions par un label ou en utilisant leur UUID. Cette technique permet de s’affranchir de l’emplacement physique des partitions et ainsi supprime toute ambigüité pour que le système retrouve ses marques.

Trouver les UUID des partitions présentes

Les UUID des disques se trouvent sous /dev/disk/by-uuid, dans mon cas :

# ls -l /dev/disk/by-uuid
lrwxrwxrwx 1 root root 10 13 mars  11:59 87240ea5-380b-4eb6-88fc-fc2a9a8c0c2e -> ../../sda4
lrwxrwxrwx 1 root root 10 13 mars  11:59 ab41ff2e-0715-4679-a00c-0a4b7e60e300 -> ../../sda1
lrwxrwxrwx 1 root root 10 13 mars  11:59 cfd9a33a-e3a7-4f2a-badf-7e492506f54c -> ../../sda2
lrwxrwxrwx 1 root root 10 13 mars  11:59 f1f8a263-209b-4320-9531-6444d3dfa5be -> ../../sda3

Ajouter un label aux partitions

Les UUID sont donnés par le système, alors que les labels sont ajoutés manuellement. Voici comment faire avec des partitions existantes avec tune2fs(2,3,4) :

# tune2fs -L monboot /dev/sda1

Pour ajouter le label lors du formatage, on utilisera l’option -L de mkfs.ext(2,3).

fstab

Il suffit donc de les désigner dans /etc/fstab en lieu et place du chemin physique. Mon fstab (partiel) avant :

/dev/sda1 /boot ext2 defaults 0 1

Après désignation par UUID ou labels :

/dev/disk/by-uuid/ab41ff2e-0715-4679-a00c-0a4b7e60e300 /boot ext2 defaults 0 1
ou :
UUID=ab41ff2e-0715-4679-a00c-0a4b7e60e300 /boot ext2 defaults 0 1
ou avec un label :
LABEL=monboot /boot ext2 defaults 0 1

C’est plus long avec les UUID, il faut jouer du copier-coller pour éviter toute erreur, mais c’est du solide :) UUID ou labels, c’est au choix.