Shell

Faire un serveur de streaming pour iTunes sous Gentoo

13.01.2009 8

Esta noche pinchoCrédit photo: fluzo


J’ai chez moi plusieurs macs qui se partagent ma librairie iTunes. Jusqu’à maintenant, je montais une partition de mon serveur de fichier sous Gentoo qui contenait mes fichiers musicaux via AFP

Je viens de changer pour installer un serveur qui s’occupe de streamer vos fichiers. Votre librairie sera alors vue comme une librairie partagée dans vos iTunes (ce qui veut dire pas de playlist et pas de synchronisation avec vos pods …)


net-dns/avahi gdbm python howl-compat dbus mdnsresponder-compat
media-sound/mt-daapd avahi vorbis

Dans le script de démarrage de mt-daapd, j’ai remplacé need mDNSResponder par need avahi-daemon

Il suffit ensuite de copier le fichier de configuration standard et de le modifier:

cp /etc/mt-daapd.conf.example /etc/mt-daapd.conf

Puis /etc/init.d/avahi-daemon start et enfin /etc/init.d/mt-daapd start

Une interface de gestion est alors disponible à l’adresse http://ip_de_votre_serveur:3689/

Et voilà, c’est tout

De la virtualisation avec VirtualBox sous Gentoo

29.12.2008 1

Xubuntu Feisty dektop in VirtualBox
Crédit photo: Vin0rz

Disposant d’un vieux serveur P4 n’ayant pas les facultés de virtualisation, j’ai essayé VirtualBox de Sun pour déployer des machines virtuelles de test.

Il existe un très bon howto à cet endroit. Je n’ai pas de serveur X installé sur cette machine, et je ne veux pas en installer. L’avantage de Virtualbox, c’est qu’il permet de démarrer une machine virtuelle et de s’y connecter en Remote Desktop. Vous pouvez très bien mettre en place cette solution sur un serveur hébergé à Paris et faire tourner vous y connecter depuis chez vous (à voir niveau latence ce que ça vaut …)


xen ~ # emerge -av virtualbox-bin

These are the packages that would be merged, in order:

Calculating dependencies… done!
[ebuild N ] x11-misc/util-macros-1.1.5 47 kB
[ebuild N ] media-libs/libmng-1.0.10 USE= »-lcms » 1,068 kB
[ebuild N ] media-libs/libsdl-1.2.13 USE= »-X -aalib -alsa -arts -custom-cflags -dga -directfb -esd -fbcon -ggi -libcaca -nas -noaudio -nojoystick -novideo -opengl -oss -pulseaudio -svga -xinerama -xv » 3,295 kB
[ebuild N ] virtual/libstdc++-3.3 0 kB
[ebuild N ] sys-apps/usermode-utilities-20040406-r1 59 kB
[ebuild N ] net-misc/bridge-utils-1.4 32 kB
[ebuild N ] app-emulation/virtualbox-modules-1.6.4 193 kB
[ebuild N ] x11-proto/xproto-7.0.10 140 kB
[ebuild N ] x11-proto/inputproto-1.4.2.1 47 kB
[ebuild N ] x11-libs/xtrans-1.0.3 USE= »-debug » 101 kB
[ebuild N ] x11-proto/kbproto-1.0.3 57 kB
[ebuild N ] x11-proto/renderproto-0.9.2 40 kB
[ebuild N ] x11-proto/xf86bigfontproto-1.1.2 37 kB
[ebuild N ] x11-proto/bigreqsproto-1.0.2 36 kB
[ebuild N ] x11-proto/xcmiscproto-1.1.2 36 kB
[ebuild N ] x11-proto/fixesproto-4.0 38 kB
[ebuild N ] x11-proto/xineramaproto-1.1.2 38 kB
[ebuild N ] x11-proto/randrproto-1.2.1 54 kB
[ebuild N ] x11-proto/xextproto-7.0.2 67 kB
[ebuild N ] x11-libs/libICE-1.0.4 USE= »-debug -ipv6″ 247 kB
[ebuild N ] x11-libs/libXau-1.0.3 USE= »-debug » 225 kB
[ebuild N ] x11-libs/libXdmcp-1.0.2 USE= »-debug » 216 kB
[ebuild N ] x11-libs/libX11-1.1.4 USE= »-debug -ipv6 -xcb » 1,540 kB
[ebuild N ] x11-libs/libSM-1.0.3 USE= »-debug -ipv6″ 219 kB
[ebuild N ] x11-libs/libXext-1.0.3 USE= »-debug » 256 kB
[ebuild N ] x11-libs/libXrender-0.9.2 USE= »-debug » 241 kB
[ebuild N ] x11-libs/libXfixes-4.0.3 USE= »-debug » 210 kB
[ebuild N ] x11-libs/libXt-1.0.5 USE= »-debug » 489 kB
[ebuild N ] x11-libs/libXft-2.1.12 USE= »-debug » 255 kB
[ebuild N ] x11-libs/libXcursor-1.1.9 USE= »-debug » 230 kB
[ebuild N ] x11-libs/libXrandr-1.2.1 USE= »-debug » 216 kB
[ebuild N ] x11-libs/libXi-1.1.3 USE= »-debug » 243 kB
[ebuild N ] x11-libs/libXinerama-1.0.2 USE= »-debug » 210 kB
[ebuild N ] virtual/xft-7.0 0 kB
[ebuild N ] x11-libs/qt-3.3.8-r4 USE= »mysql -cups -debug -doc -examples -firebird -gif -immqt -immqt-bc -ipv6 -nas -nis -odbc -opengl -postgres -sqlite -xinerama » 16,986 kB
[ebuild N F ] app-emulation/virtualbox-bin-1.6.4 USE= »additions vboxwebsrv headless -sdk » 21,029 kB

Total: 36 packages (36 new), Size of downloads: 48,180 kB
Fetch Restriction: 1 package (1 unsatisfied)

A la fin de la compilation, il nous est demandé de télécharger le binaire d’installation directement sur le site de VirtualBox:


* Please download the package from:
*
* http://download.virtualbox.org/virtualbox/1.6.4/VirtualBox-1.6.4-Linux_x86.run
*
* and then put it in /usr/portage/distfiles
* Fetch failed for 'app-emulation/virtualbox-bin-1.6.4'
* GNU info directory index is up-to-date.
* IMPORTANT: 4 config files in '/etc' need updating.
* See the CONFIGURATION FILES section of the emerge
* man page to learn how to update config files.
xen ~ # cd /usr/local/src/
xen src # wget http://download.virtualbox.org/virtualbox/1.6.4/VirtualBox-1.6.4-Linux_x86.run
xen src # chmod +x VirtualBox-1.6.4-Linux_x86.run
xen src # ./VirtualBox-1.6.4-Linux_x86.run
Verifying archive integrity... All good.
Uncompressing VirtualBox for Linux installation........
VirtualBox Version 1.6.4 (Tue Jul 29 20:45:09 CEST 2008) installation
Installing VirtualBox to /opt/VirtualBox-1.6.4
Building the VirtualBox kernel module

VirtualBox has been installed successfully.

You will find useful information about using VirtualBox in the user manual
/opt/VirtualBox-1.6.4/UserManual.pdf
and in the user FAQ

http://www.virtualbox.org/wiki/User_FAQ

We hope that you enjoy using VirtualBox.

Il suffit ensuite de suivre ce tutorial pour créer une Machine virtuelle à partir d’une ISO d’ubuntu server par exemple (256M de mémoire et 10G d’espace disque)


xen ~ # modprobe vboxdrv
xen ~ # VBoxManage createvm -name "Ubuntu 8.10 Server" -register
xen ~ # VBoxManage modifyvm "Ubuntu 8.10 Server" -memory "256MB" -acpi on -boot1 dvd -nic1 nat
xen ~ # VBoxManage createvdi -filename "Ubuntu_8_10_Server.vdi" -size 10000 -register
xen ~ # VBoxManage modifyvm "Ubuntu 8.10 Server" -hda "Ubuntu_8_10_Server.vdi"
xen ~ # VBoxManage registerimage dvd /home/ubuntu-8.10-server-i386.iso
xen ~ # VBoxManage modifyvm "Ubuntu 8.10 Server" -dvd /home/ubuntu-8.10-server-i386.iso
xen ~ # VBoxHeadless -startvm "Ubuntu 8.10 Server"
xen ~ # VirtualBox Headless Interface 1.6.4
(C) 2008 Sun Microsystems, Inc.
All rights reserved

Listening on port 3389

J’ai été confronté à un plantage de VBoxHeadless avec les sécurités PAX activées dans le kernel. Je les ai donc enlevées du noyau, il faut dans ce cas relancer le script d’installation de VirtualBox pour qu’il régénère un module pour le nouveau noyau.

Pour se connecter à la Machine Virtuelle, le RDC de Microsoft pour macosx ne semble pas fonctionner (les logs de connexions se trouvent dans /root/.VirtualBox/Machines/Ubuntu 8.10 Server/Logs si vous avez utilisé le compte root jusqu’à présent).


00:02:46.807 VRDP: Logoff: () build 0. User: [] Domain: [] Reason 0xFFFFFFFF.
00:02:48.627 VRDP: New connection:
00:02:48.685 VRDP: Flags 0x0000001b
00:02:48.685 VRDP: Channel: [rdpdr] [1004]. Not supported.
00:02:48.685 VRDP: Channel: [rdpsnd] [1005]. Accepted.
00:02:48.685 VRDP: Channel: [cliprdr] [1006]. Accepted.
00:02:48.756 VRDP: Failed to process incoming RDP packet: VERR_VRDP_PROTOCOL_ERROR!!!
00:02:48.756 VRDP: The RDP packet content (read):

En utilisant le Remote Desktop de la version Windows, aucun problème. J’avoue ne pas avoir cherché beaucoup pour résoudre ce problème, peut-être ce message vous y aidera.

D’après mes premiers tests, je trouve cette solution très rapide à la fois à mettre en place, et également durant son fonctionnement. Lors de la mise à jour du système client, le cpu hôte n’est utilisé qu’à 1%, la mémoire à 20-30%. Pas mal du tout, reste à créer une Machine Virtuelle sous Gentoo pour voir.

Et vous, c’est lequel votre préféré ? Xen ? VMWare ? VirtualBox ?

PS: oui ma machine VirtualBox s’appelle Xen, et alors ? :)

Edit: pour que Ubuntu Server accepte de booter sous VirtualBox, il faut demander à ce dernier d’activer le support PAE:


xen ~ # VBoxManage modifyvm "Ubuntu 8.04 Server" -pae on

Edit 2 : aussitôt dit, aussitôt fait, pour installer Gentoo 2008 comme système client, il suffit d’utiliser les mêmes lignes que précédemment en modifiant juste celle-ci:


xen Logs # VBoxManage modifyvm "Gentoo 2008" -memory "256MB" -acpi on -boot1 dvd -nic1 nat -ioapic off

puis de démarrer une deuxième instance de VirtualBox sur un autre port:


xen Logs # VBoxHeadless -startvm "Gentoo 2008" -p 3390
xen Logs # VirtualBox Headless Interface 1.6.4
(C) 2008 Sun Microsystems, Inc.
All rights reserved

Listening on port 3390

Il y a un très bon guide ici pour notamment les options du kernel à choisir.

Bloquer les tentatives de connexion SSH avec fail2ban

09.12.2008 0

J’ai décidé d’installer ce matin sur tous mes serveurs et ceux de mes clients le script python fail2ban fourni par portage sur Gentoo (la dernière version stable du développeur est masquée il s’agit de la version net-analyzer/fail2ban-0.8.3)

Ce script analyse vos fichiers de logs et ajoute des règles dans votre firewall applicatif iptables pour bloquer les tentatives d’accès par ssh, apache, les requêtes DNS trop nombreuses, etc…

Voici un exemple de pollution récurrente:
Dec 9 10:03:28 server sshd[27836]: Invalid user ishihara from 121.134.8.168
Dec 9 10:03:30 server sshd[27842]: Invalid user hfujioka from 121.134.8.168
Dec 9 10:03:33 server sshd[27848]: Invalid user minami from 121.134.8.168
Dec 9 10:03:35 server sshd[27856]: Invalid user togashi from 121.134.8.168
Dec 9 10:03:37 server sshd[27865]: Invalid user nshino from 121.134.8.168
Dec 9 10:03:40 server sshd[27870]: Invalid user wataru from 121.134.8.168
Dec 9 10:03:42 server sshd[27875]: Invalid user yhashi from 121.134.8.168
Dec 9 10:03:44 server sshd[27883]: Invalid user gai from 121.134.8.168
Dec 9 10:03:46 server sshd[27888]: Invalid user sudomine from 121.134.8.168
Dec 9 10:03:49 server sshd[27893]: Invalid user tsutomu from 121.134.8.168
Dec 9 10:03:51 server sshd[27898]: Invalid user naoto from 121.134.8.168
Dec 9 10:03:53 server sshd[27903]: Invalid user shimizu from 121.134.8.168
Dec 9 10:03:56 server sshd[27908]: Invalid user yokoyama from 121.134.8.168
Dec 9 10:03:58 server sshd[27913]: Invalid user koki from 121.134.8.168
Dec 9 10:04:00 server sshd[27918]: Invalid user masashi from 121.134.8.168
Dec 9 10:04:02 server sshd[27923]: Invalid user tomonari from 121.134.8.168
Dec 9 10:04:05 server sshd[27933]: Invalid user higashi from 121.134.8.168
Dec 9 10:04:07 server sshd[27938]: Invalid user ryotaro from 121.134.8.168
Dec 9 10:04:09 server sshd[27943]: Invalid user mashima from 121.134.8.168
Dec 9 10:04:12 server sshd[27948]: Invalid user shuu from 121.134.8.168
Dec 9 10:04:14 server sshd[27953]: Invalid user oono from 121.134.8.168
Dec 9 10:04:16 server sshd[27958]: Invalid user oliver from 121.134.8.168
Dec 9 10:04:18 server sshd[27963]: Invalid user toyoc from 121.134.8.168
 

Il faut bien sur avoir au préalable installé iptables et le module dans le kernel qui va bien.

Après la traditionnelle phase de compilation du soft, il suffit de modifier les fichiers de configuration fournis qui par défaut ne font rien, ou du moins pas grand chose.

Commencez par whitelister votre(vos) ip(s) dans le fichier /etc/fail2ban/jail.conf histoire de ne passe retrouver bêtement coincé suite à une mauvaise configuration:

ignoreip = 127.0.0.1 xxx.xxx.xxx.xxx yyy.yyy.yyy.yyy

Réglez ensuite les 3 paramètres qui permettent de définir qu’une tentative de connexion doit être détectée comme malveillante:
# "bantime" is the number of seconds that a host is banned.
bantime = 6000
# A host is banned if it has generated "maxretry" during the last "findtime"
# seconds.
findtime = 600
# "maxretry" is the number of failures before a host get banned.
maxretry = 3

Puis vous pourrez utiliser les modules de détection déjà fournis, les modifier ou créer les vôtres. Par défaut sous Gentoo, les tentatives d’accès SSH sont loggés dans /var/log/messages, j’ai donc modifile le logpath correspondant:
[ssh-iptables]
enabled = true
filter = sshd
action = iptables[name=SSH, port=ssh, protocol=tcp]
sendmail-whois[name=SSH, dest=olivier@oxeron.com, sender=fail2ban-server@oxeron.com]
logpath = /var/log/messages
maxretry = 3

Et voilà, en 2 heures, environ 50 ips bloquées sur l’ensemble de mes machines.

Un autre joli bug Gentoo

25.11.2008 0

En mettant à jour votre serveur Gentoo récemment, vous avez peut-être rencontré l’un des ombreux cas de blocage généré par portage:


 Calculating dependencies... done!
[ebuild N ] sys-libs/e2fsprogs-libs-1.41.0 USE="nls" 476 kB
[ebuild U ] sys-fs/e2fsprogs-1.41.0 [1.40.11] USE="nls -static" 4,161 kB
[blocks B ]
sys-libs/e2fsprogs-libs-1.41.0)
[blocks B ] sys-libs/ss (is blocking sys-libs/e2fsprogs-libs-1.41.0)
[blocks B ] sys-libs/com_err (is blocking sys-libs/e2fsprogs-libs-1.41.0)

Surtout ne vous lancez pas dans lé désinstallation de ss et com_err ou votre wget ne fontionnera plus (entre autres)

Voici la solution pour contourner ce problème:


quickpkg com_err ss e2fsprogs &&
emerge -uDNf world &&
emerge -C com_err ss e2fsprogs &&
emerge e2fsprogs &&
emerge -uDN world &&
revdep-rebuild #(si nécessaire)

La joie d’utiliser Gentoo …

Réparer un raid hardware DEGRADED avec tw_cli

15.11.2008 0

Un ptit memo pour réutilisation future éventuelle :)


server bin # ./tw_cli info c0 u0

Unit UnitType Status %RCmpl %V/I/M Port Stripe Size(GB)
------------------------------------------------------------------------
u0 RAID-1 DEGRADED - - - - 232.885
u0-0 DISK DEGRADED - - p0 - 232.885
u0-1 DISK OK - - p1 - 232.885

server bin # ./tw_cli maint remove c0 p0
Removing port /c0/p0 ... Done.

server bin # ./tw_cli maint rescan
Rescanning controller /c0 for units and drives ...Done.
Found the following unit(s): [none].
Found the following drive(s): [/c0/p0].

server bin # ./tw_cli info c0

Unit UnitType Status %RCmpl %V/I/M Stripe Size(GB) Cache AVrfy
------------------------------------------------------------------------------
u0 RAID-1 DEGRADED - - - 232.885 ON -

Port Status Unit Size Blocks Serial
---------------------------------------------------------------
p0 OK - 232.88 GB 488397168 GEL231RB07BB9B
p1 OK u0 232.88 GB 488397168 GEL231RB05N20B

server bin # ./tw_cli info c0 u0

Unit UnitType Status %RCmpl %V/I/M Port Stripe Size(GB)
------------------------------------------------------------------------
u0 RAID-1 DEGRADED - - - - 232.885
u0-0 DISK DEGRADED - - - - 232.885
u0-1 DISK OK - - p1 - 232.885

server bin # ./tw_cli maint rebuild c0 u0 p0
Sending rebuild start request to /c0/u0 on 1 disk(s) [0] ... Done.

server bin # ./tw_cli info c0

Unit UnitType Status %RCmpl %V/I/M Stripe Size(GB) Cache AVrfy
------------------------------------------------------------------------------
u0 RAID-1 REBUILDING 0 - - 232.885 ON -

Port Status Unit Size Blocks Serial
---------------------------------------------------------------
p0 DEGRADED u0 232.88 GB 488397168 GEL231RB07BB9B
p1 OK u0 232.88 GB 488397168 GEL231RB05N20B

server bin # ./tw_cli info c0 u0

Unit UnitType Status %RCmpl %V/I/M Port Stripe Size(GB)
------------------------------------------------------------------------
u0 RAID-1 REBUILDING 0 - - - 232.885
u0-0 DISK DEGRADED - - p0 - 232.885
u0-1 DISK OK - - p1 - 232.885

server bin # ./tw_cli info c0 u0

Unit UnitType Status %RCmpl %V/I/M Port Stripe Size(GB)
------------------------------------------------------------------------
u0 RAID-1 REBUILDING 6 - - - 232.885
u0-0 DISK DEGRADED - - p0 - 232.885
u0-1 DISK OK - - p1 - 232.885

Un script bash pour optimiser les tables mysql

16.09.2008 0

Et hop voilà un petit script bien pratique pour voir l’état de fractionnement des tables de votre serveur mysql:


#!/bin/bash
# -l 5 : parameter to launch OPTIMIZE query
while getopts 'D:d:u:p:s:l:' OPTION ; do
case $OPTION in
D) defaults_file="--defaults-file=$OPTARG";;
d) DB=$OPTARG;;
u) user="-u $OPTARG";;
p) pwd="-p$OPTARG";;
s) socket="--socket=$OPTARG";;
l) level="$OPTARG"
esac
done
mysql="mysql $defaults_file $user $pwd $socket"
if [ -z "$DB" ]
then
DB=`$mysql -N -e "show databases"`
fi
if [ -z "$level" ]
then
level="101"
fi
for db in $DB
do
for table in `$mysql -N $db -e "show tables"`
do
ENGINE=$($mysql $db -e "show table status like '$table'\G" | awk '/Engine/ {print $2}')
if [ "$ENGINE" == "MyISAM" ]
then
SIZE=$($mysql $db -e "show table status like '$table'\G" | awk '/Data_length/ {print $2}')
FREE=$($mysql $db -e "show table status like '$table'\G" | awk '/Data_free/ {print $2}')
ROWS=$($mysql $db -e "show table status like '$table'\G" | awk '/Rows/ {print $2}')
if [ $FREE -gt 0 ] && [ $SIZE -gt 0 ]
then
FRAGMENTATION=$(printf '%i' $(echo "scale=0; $FREE/($SIZE/100)"|bc))
echo "$FRAGMENTATION% $db.$table [Data_length=$SIZE Data_free=$FREE]"
if [ $FRAGMENTATION -ge $level ]
then
echo "OPTIMIZE REQUESTED"
$mysql $db -e "use '$db';OPTIMIZE TABLE $table\G"
fi
fi
fi
done
done

Le script a besoin d’informations de connexion à la base mysql, soit en ligne de commande, soit via un fichier .my.cnf

Il peut analyser une database particulière ou toutes celles du système si aucune n’est fournie en paramètre.

Il peut déclencher l’exécution de la commande OPTIMIZE TABLE si le taux de fragmentation de la table dépasse le seuil founi dans le paramètre -l

Par exemple: ./optimize_tables -u root -pxxxxxxx ou ./optimize_tables -l 10

PS: ce script ne fonctionne qu’avec des tables au format MyISAM, la fonction OPTIMIZE ne fonctionnant pas pour de l’InnoDB

Out of range value adjusted for column error

18.07.2008 0

En migrant un client d’un serveur mysql 3.23 en mysql 5.0.44, je suis tombé sur un problème de transfert d’un champ md5 de type bigint(20). Le serveur mysql5 tronquait la valeur insérée. J’ai du ajouté au début de mon dump sql la commande SET GLOBAL SQL_MODE=''; et tout rentre dans l’ordre.

Search and Replace dans Vim

17.07.2008 2

Encore une ligne magique que j’oublie aussi vite que je la retrouve :)

 :1,$s/find/replace/g

Faille des serveurs DNS

11.07.2008 0

Suite à l’annonce de la faille de sécurité touchant les serveurs DNS, j’ai été très surpris de voir que des collègues admins ne connaissaient pas d’alternative sérieuse à Bind et en particulier djbdns.

Son développeur D.J. Bernstein à développé djbdns (et qmail) en ayant en tête la question de sécurité ; depuis des années, alors que Bind à été sujet à des failles de sécurités, djbdns, lui n’a eu aucun problème. Notez aussi que D.J. Bernstein offre 500$ à la première personne qui prouvera que la dernière version de djbdns contient une faille de sécurité, voir (US) :
http://cr.yp.to/djbdns/guarantee.html

djbdns consomme bien moins de ressources (cpu/ram) que Bind. Notez aussi que vous pouvez faire des changements dans les zones dns sans avoir a redémarrer tinydns, celui-ci s’aperçoit automatiquement que data.cdb à été modifié et recharge donc l’ensemble des zones.

J’aime toujours les réflexions du genre: « Ouais mais ton truc là, c’est pas utilisé alors c’est normal qu’il y ait pas de faille » (Yves, si tu me lis ;) ) ça me donne une raison de plus d’utiliser ce logiciel :)

Optimiser un filesystem ext3

09.07.2008 0

Voici quelques paramètres que l’on peut optimiser sur un filesystem ext3

livecd ~ # tune2fs -O has_journal -o journal_data_writeback /dev/md1
tune2fs 1.40.8 (13-Mar-2008)

livecd ~ # tune2fs -O dir_index /dev/md1
tune2fs 1.40.8 (13-Mar-2008)

livecd ~ # e2fsck -D -f /dev/md1
e2fsck 1.40.8 (13-Mar-2008)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 3A: Optimizing directories
Pass 4: Checking reference counts
Pass 5: Checking group summary information

/dev/md1: ***** FILE SYSTEM WAS MODIFIED *****
/dev/md1: 11/12214272 files (9.1% non-contiguous), 814557/48833536 blocks

livecd ~ # tune2fs -l /dev/md1
tune2fs 1.40.8 (13-Mar-2008)
Filesystem volume name:
Last mounted on:
Filesystem UUID: 92eff78c-4a42-418b-9c5b-1f945c6369af
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype sparse_super large_file
Filesystem flags: signed_directory_hash
Default mount options: journal_data_writeback
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 12214272
Block count: 48833536
Reserved block count: 2441676
Free blocks: 48018979
Free inodes: 12214261
First block: 0
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 1012
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 8192
Inode blocks per group: 512
Filesystem created: Wed Jul 9 14:03:13 2008
Last mount time: n/a
Last write time: Wed Jul 9 14:06:14 2008
Mount count: 0
Maximum mount count: 33
Last checked: Wed Jul 9 14:06:14 2008
Check interval: 15552000 (6 months)
Next check after: Mon Jan 5 14:06:14 2009
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 256
Journal inode: 8
Default directory hash: tea
Directory Hash Seed: 66d49bfa-58ee-4bcb-81e0-adf8003418ec
Journal backup: inode blocks

Ainsi que retirer dans /etc/fstab les access-time pour les fichiers et les répertoires

Références:
http://en.opensuse.org/Speeding_up_Ext3
http://www.ubuntugeek.com/how-to-increase-ext3-and-reiserfs-filesystems-performance.html