Flux RSS des billets

Derniers billets

Modification du schéma de partitionnement d’edoras

Cette opération est lourde et longue, mais j’ai décidé de modifier le partitionnement de mon petit serveur edoras actuellement sous Fedora 10.
En effet, depuis de nombreuses années, j’utilisais un partitionnement classique, et depuis Cambridge, je suis passé à LVM (enfin!) et même au RAID 1 pour encore plus sécuriser mes sauvegardes photos. Le RAID a été ajouté avec deux disques non utilisés, mais il me restait deux autres disques avec une seule partition chacun sdb1 et sdc1 bourrés de données et montés de façon classique, respectivement en /data1 (200Go) et /backup (160Go), ces deux partitions étant utilisés en montages NFS sur mon réseau (et TRES solicités).

Avant :

$ df -h
Sys. de fich.         Tail. Occ. Disp. %Occ. Monté sur
/dev/mapper/VG1-LVroot
9,9G  3,7G  5,7G  40% /
/dev/mapper/VG1-LVhome
26G  853M   23G   4% /home
/dev/sdc1             145G   83G   54G  61% /backup
/dev/sdb1             184G  111G   64G  64% /data1
/dev/sda1             236M   29M  195M  13% /boot
/dev/mapper/VGraid-LVraid
459G  216G  220G  50% /raid

D’une part, cela me faisait beaucoup de montages (NFS) sur mes Mac alors que je pouvais – théoriquement – rassembler /backup et /data1 en un seul volume, et d’autre part, je désirais passer en full LVM pour plus de flexibilité.

La limitation des systèmes de fichiers classiques m’imposait d’avoir ces deux partitions séparées, celles-ci étant sur deux disques différents. C’est là que LVM montre sa puissance : la possibilité de créer un groupe de volumes sur les deux disques, soit au final avoir une seule partition virtuelle de 360Go unique sur les deux disques.

Après :

$ df -h
Sys. de fich.         Tail. Occ. Disp. %Occ. Monté sur
/dev/mapper/VG1-LVroot
9,9G  3,7G  5,7G  40% /
/dev/mapper/VG1-LVhome
26G  855M   23G   4% /home
/dev/mapper/VGdata-LVdata
331G  1,8G  312G   1% /mnt/data
/dev/sda1             236M   29M  195M  13% /boot
/dev/mapper/VGraid-LVraid
459G  275G  162G  63% /mnt/raid

Après avoir déplacé mes données sur un autre disque pour faire la modification, redéfini sdb1 et sdc1 en partition de type 8e (Linux LVM) dans fdisk, j’ai opéré comme suit pour ajouter un groupe de volumes VGdata contenant un unique volume logique LVdata de la totalité de l’espace disponible (je ne détaillerai pas, les étapes ayant été un peu mieux expliquées dans ce billet) :

# pvcreate /dev/sdb1
# pvcreate /dev/sdc1
# vgcreate -s 16M VGdata /dev/sdb1 /dev/sdc1
# lvcreate -l 21462 VGdata -n LVdata
# mkfs.ext3 /dev/VGdata/LVdata
# mkdir /mnt/data
# mount /dev/VGdata/LVdata /mnt/data

Ajout du montage dans fstab :

/dev/VGdata/LVdata	/mnt/data		ext3	defaults	1 2

script : vérifier que rTorrent est lancé

Pour la gestion de mes torrents, j’utilise rTorrent, j’ai eu l’occasion d’en parler dans ce billet et celui-ci. Il s’agit d’un daemon très stable, mais pour des raisons X ou Y (genre redémarrage de la machine), j’oublie de le lancer. Pour palier à cela, j’ai écrit ce petit script qui vérifie que le programme est bien démarré, sinon il va tenter de le faire. Si tel est le cas, un email est envoyé pour signaler que rTorrent a été redémarré. Le tout est loggé.

# Fichier de log
LOGPATH="/home/fabien/bin/log/check_rtorrent.log"
# Email
EMAIL="fabien@feub.net"
SUBJECT="[check] rTorrent"
# Si pas de fichier de log, on le crée
if [ ! -f $LOGPATH ]
then
touch $LOGPATH
fi
echo -n $(date) " : Vérification que rTorrent est lancé..." >> $LOGPATH
if /sbin/pidof rtorrent
then
echo "en fonctionnement : OK" >> $LOGPATH
else
echo -n "non démarré..." >> $LOGPATH
echo -n "démarrage..." >> $LOGPATH
/home/fabien/bin/btlaunch.sh
echo "en fonctionnement : OK" >> $LOGPATH
mail -s "$SUBJECT" "$EMAIL" < $LOGPATH
fi

Télécharger check_rtorrent.sh

Pour automatiser cela, je l’ajoute dans mon crontab pour qu’il vérifie toutes les 5 minutes :

$ crontab -e
*/5 * * * * /home/fabien/bin/check_rtorrent.sh

Ajouter un disque dur P-ATA

Petit mémo pour ajouter un disque dur à sa machine. C’est une procédure plutôt générale à GNU/Linux, mais pour info elle à été réalisée sur une Fedora 10.

Pour étendre la capacité de mon vieux serveur, j’ai acquis une carte PCI SATA RAID qui se négocie pour une bouchée de pain. Cette carte possède outre les 3 connecteurs SATA, un connecteur IDE. Voulant rapidement tester cette carte, son chipset (VT6421) étant reconnu sans problème, j’y ai ajouté un petit disque IDE de 80Go. J’en profite donc pour écrire ce petit tuto.

Vérification de la présence du disque

Cette machine possède déjà 3 disques, un ls -l /dev/sd* doit donc m’en afficher un quatrième :

$ ls -l /dev/sd*
brw-rw---- 1 root disk 8,  0 déc. 23 23:29 /dev/sda
brw-rw---- 1 root disk 8,  1 déc. 23 23:29 /dev/sda1
brw-rw---- 1 root disk 8,  2 déc. 23 23:29 /dev/sda2
brw-rw---- 1 root disk 8,  3 déc. 23 23:29 /dev/sda3
brw-rw---- 1 root disk 8, 16 déc. 23 23:29 /dev/sdb
brw-rw---- 1 root disk 8, 17 déc. 23 23:29 /dev/sdb1
brw-rw---- 1 root disk 8, 32 déc. 23 23:29 /dev/sdc
brw-rw---- 1 root disk 8, 33 déc. 23 23:29 /dev/sdc1
<strong style="color:yellow">brw-rw---- 1 root disk 8, 48 déc. 23 23:49 /dev/sdd</strong>

Partitionnement

L’étape suivant consiste à le partitionner. Dans mon cas, je ne crée qu’une seule partition de tout le disque. Voici les étapes avec fdisk, les actions étant en gras. A tout moment dans fdisk vous pouvez taper m pour afficher l’aide sur les commandes disponibles.

# <strong style="color:yellow">fdisk /dev/sdd</strong>
Le nombre de cylindres pour ce disque est initialisé à 9964.
Il n'y a rien d''incorrect avec cela, mais c'est plus grand que 1024,
et cela pourrait causer des problèmes en fonction pour certaines configurations:
1) logiciels qui sont exécutés à l'amorçage (i.e., vieilles versions de LILO)
2) logiciels d'amorçage et de partitionnement pour d'autres SE
(i.e., DOS FDISK, OS/2 FDISK)
Commande (m pour l'aide): <strong style="color:yellow">p</strong>
Disque /dev/sdd: 81.9 Go, 81964302336 octets
255 heads, 63 sectors/track, 9964 cylinders
Units = cylindres of 16065 * 512 = 8225280 bytes
Disk identifier: 0x0f800000
Périphérique Amorce    Début         Fin      Blocs    Id  Système
Commande (m pour l'aide): <strong style="color:yellow">n</strong>
Action de commande
e   étendue
p   partition primaire (1-4)
<strong style="color:yellow">p</strong>
Numéro de partition (1-4): <strong style="color:yellow">1</strong>
Premier cylindre (1-9964, par défaut 1):
Utilisation de la valeur par défaut 1
Last cylindre, +cylindres or +size (1-9964, par défaut 9964):
Utilisation de la valeur par défaut 9964
Commande (m pour l'aide): <strong style="color:yellow">p</strong>
Disque /dev/sdd: 81.9 Go, 81964302336 octets
255 heads, 63 sectors/track, 9964 cylinders
Units = cylindres of 16065 * 512 = 8225280 bytes
Disk identifier: 0x0f800000
Périphérique Amorce    Début         Fin      Blocs    Id  Système
/dev/sdd1               1        9964    80035798+  83  Linux
Commande (m pour l'aide): <strong style="color:yellow">w</strong>
La table de partitions a été altérée!
Appel de ioctl() pour relire la table de partitions.
La nouvelle table sera utilisé lors du prochain réamorçage.
Synchronisation des disques.

Le disque est maintenant prêt à être formaté :

Formatage

Celui-ci va simplement être fait en ext3 par cette commande :

# <strong style="color:yellow">mkfs.ext3 /dev/sdd1</strong>
mke2fs 1.41.3 (12-Oct-2008)
Étiquette de système de fichiers=
Type de système d'exploitation : Linux
Taille de bloc=4096 (log=2)
Taille de fragment=4096 (log=2)
5005312 i-noeuds, 20008949 blocs
1000447 blocs (5.00%) réservés pour le super utilisateur
Premier bloc de données=0
Nombre maximum de blocs du système de fichiers=0
611 groupes de blocs
32768 blocs par groupe, 32768 fragments par groupe
8192 i-noeuds par groupe
Superblocs de secours stockés sur les blocs :
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424
Écriture des tables d'i-noeuds : complété
Création du journal (32768 blocs) : complété
Écriture des superblocs et de l'information de comptabilité du système de
fichiers : complété
Le système de fichiers sera automatiquement vérifié tous les 33 montages ou
après 180 jours, selon la première éventualité. Utiliser tune2fs -c ou -i
pour écraser la valeur.

La partition est opérationnelle, il ne reste plus qu’à la monter. Pour ce faire, au préalable je crée un répertoire de montage data sous /mnt :

# mkdir /mnt/data
# mount /dev/sdd1 /mnt/data

Mon disque est accessible :

# df -h
Sys. de fich.         Tail. Occ. Disp. %Occ. Monté sur
/dev/mapper/VG1-LVroot
9,9G  3,6G  5,9G  38% /
/dev/mapper/VG1-LVhome
26G  3,2G   22G  13% /home
/dev/sdc1             145G  130G  7,1G  95% /backup
/dev/sdb1             184G  153G   22G  88% /data1
/dev/sda1             236M   22M  203M  10% /boot
<strong style="color:yellow">/dev/sdd1              76G  180M   72G   1% /mnt/data</strong>

Apache : Protéger un répertoire web

Sujet vu des milliers de fois sur le web, l’authentification basique HTTP est relativement simple à mettre en pratique pour qui connait un peu le serveur web Apache. Ce petit article me fait office de mémo, petite piqure de rappel, sous Fedora 10.

Configuration d’Apache

Il faut s’assurer que le serveur web Apache puisse utiliser les fichiers .htaccess. Pour ce faire, il faut lui ajouter la directive AllowOverride AuthConfig. Ceci peut se faire directement dans le httpd.conf, mais il est recommandé – et plus clair – de ne pas y toucher et d’ajouter ses propres fichiers de configurations sous /etc/httpd/conf.d/. Il est en effet plus simple d’avoir plusieurs fichiers bien nommés qu’un énorme qu’il serait fastidieux d’éditer. Dans mon cas, j’ai détaché les directives concernant /var/www du httpd.conf dans un fichier fab_docroot.conf sous /etc/httpd/conf.d/ (petite entorse à ce qui est dit plus haut de ne pas toucher au fichier principal. Mais c’est pour la bonne cause ;} ). Attention, je ne fais ceci que parce que je n’héberge qu’un seul site qui est directement sous /var/www.

Voici donc la tête des directives en question pour accepter l’authentification par .htaccess :

<directory /var/www>
Options Indexes Includes FollowSymLinks MultiViews
AllowOverride AuthConfig
Order allow,deny
Allow from all
</directory>

Sauvegarder le fichier et redémarrer Apache :

# service httpd restart

Continuer la lecture

Changer l’icône d’une applet d’AWN

J’utilise le dock Avant Window Navigator comme lanceur avec Gnome. Très bien fait, il est élégant et fonctionnel. Mais un problème – minime et non bloquant – survient lorsque l’on veut ajouter un lanceur pour une application Wine, l’implémentation des API Windows pour faire tourner un programme pour la plateforme de Microsoft sous GNU/Linux. En effet, il est impossible de modifier l’apparence de l’icône, AWN affiche un icône par défaut pas beau du tout. J’utilise en particulier Dreamweaver et Photoshop même sous GNU/Linux, n’ayant jamais trouvé d’équivalent de ces standards, mais voilà, point d’icônes.


Pas très beau l’icône par défaut pour une application Wine

A ma connaissance il n’est pas possible de changer cet icône, l’option pour le faire n’a aucun effet. La raison version courte est que AWN utilise l’icône du programme lancé, en l’occurence si je veux utiliser Dreamweaver, je le lance avec la commande wine et l’icône qui va avec.
Voilà une astuce qui fait parfaitement l’affaire : créer un fichier exécutable qui se borne à lancer notre commande wine et ajouter ce fichier au lanceur d’AWN et non pas la commande wine complète. Simple comme bonjour et ça marche ;}

Continuer la lecture

eXTReMe Tracker