Le site à Beuz contient une rubrique pour chacun de mes centres d’intérêts : mandriva linux, tarot, full metal planete, mes logiciels, etc...
Dans cet article, nous décrirons un moyen de sauvegarder des données à l’aide de l’outil Rsync. Précision importante : nous n’aborderons pas l’usage avec un service rsync résident ( mode "daemon"). Nos données sont en quantité importante et notre sauvegarde sera journalière.
Rsync est un outil de sauvegarde qui a la particularité de supporter un grand nombre d’options. Il est utilisé en ligne de commande ou au travers de scripts automatisés. La sauvegarde peut être déportée à travers un réseau. Rsync utilisera par exemple le canal ssh, un transfert crypté et une compression des données avant envoi.
Comme son nom l’indique, il procède par synchronisation, c’est-à-dire qu’il compare le contenu à sauvegarder de la sauvegarde précédente et ne transmet ainsi que la différence. Allié à la compresion des données, c’est donc l’outil redoutable pour les sauvegardes de type NAS. Pour une sauvegarde d’un ordinateur à un autre, il est possible d’initier la sauvegarde à partir de la source ou bien à partir de la destination.
la synchronisation consiste à maintenir un « miroir » des données à sauvegarder. En d’autres termes, on stocke à l’identique. L’inconvénient majeur de ce type de sauvegarde est l’absence d’historique : si vous écrasez un fichier A par un fichier B puis que vous effectuez la sauvegarde, vous ne pourrez plus récupérer le fichier A puisque la sauvegarde aura mis à jour de la même manière les données sauvegardées (donc là aussi A sera écrasé par B).
La solution est de maintenir un historique des sauvegardes. Par exemple, vous sauvegardez chaque mois dans un dossier différent. Nous sommes début juillet et vous vous rendez compte que vous avez supprimé votre fichier fin juin par erreur. Inutile de regarder la sauvegarde du 1er juillet : il était déjà supprimé. C’est donc la sauvegarde mensuelle du 1er juin qu’il faudra fouiller pour retrouver votre fichier.
Evidemment, dans cet exemple, si vous avez créé le fichier le 2 juin et que vous l’avez supprimé le 27 juin, ce n’est pas récupérable ! D’où l’importance de concilier la fréquence des sauvegardes et la taille occupée par les sauvegardes.
La sauvegarde incrémentielle consiste à ne sauvegarder que la différence par rapport à la précédente sauvegarde. On stocke les fichiers nouvellement créés, les fichiers ayant subi une modification et la liste des fichiers supprimés. De cette manière, on réduit fortement l’espace occupé : dans le système précédent , un fichier était répété dans chaque sauvegarde.

Rsync dans son fonctionnement classique fonctionne ainsi :
rsync -options « source » « destination »
Parmi les options, nous allons nous intéresser à deux options :
— write-batch
— write-batch-only
La première effectue la synchronisation mais conserve également les différences dans un fichier. La seconde simule la syncrhonisation et conserve les différences dans un fichier.
Répétons-le : rsync fonctionne par comparaison. il faut donc effectuer une sauvegarde entre les données à sauvegarder et la sauvegarde précédente. C’est le rôle de la sauvegarde au jour-le-jour dans le diagramme ci-dessous :

Le traitement write-batch vient apporter EN PLUS de la sauvegarde « au-jour-le-jour » un fichier autonome (J+1, J+2...) comprenant tout ce qui a changé.
Si sur le schéma ci-dessus, on veut récupérer nos données à J+1, on ne peut pas repartir de notre sauvegarde « au-jour-le-jour » : elle intégre les données J+2. on ne peut pas non plus appliquer le batch J+1 sur les données actuelles car il y a J+2 et J+3... Par ailleurs, les fichiers autonomes obtenus par batchs ne sont pas réversibles : ils contiennent le contenu des nouveaux fichiers, le contenu des fichiers modifiés mais pas le contenu avant modification. ils contiennent la liste des fichiers supprimés mais pas leur contenu.
C’est la raison pour laquelle nous avons conservé une sauvegarde initiale. C’est un point de départ. On pourra, partant de cette base, appliquer les fichiers autonomes batchs que l’on souhaite et ainsi retrouver la situation de nos données au jour souhaité. Si on veut les données à J+1, on applique le fichier batch "J+1 alors que si on veut retrouver la situation à J+2 , on appliquera successivement et dans cet ordre les fichiers autonomes batchs J+1 et J+2.
rsync —read-batch « nom_du_batch » « destination » aura cette fonction.
Evidemment, rsync comporte un nombre d’options incroyable que vous pourrez découvrir et exploiter notamment en lisant la manpage [1].
Vous y apprendrez à effectuer des sauvegardes à travers un réseau, en cryptant, en compressant vos données. Tout cela est bien expliqué et la documentation que l’on trouve sur internet et souvent complète. Je trouvais, par contre, que l’usage du mode "batch" n’était pas suffisamment expliqué et que l’on pouvait ainsi passer à côté de solutions pratiques et souples.
Dans cet article, nous avons un serveur Windows2000, contrôleur de domaine et serveur de fichier. On fait le choix de ne rien installer sur le serveur pour ne pas affaiblr sa fiabilité. Les données sur ce serveur sont accessibles au travers d’un partage Microsoft. Sur notre serveur de sauvegarde, outre rsync, il devra y avoir SAMBA (le client) pour accéder au partage. Dans cet article, on considère que vous avez effectué ce partage sur le serveur où qu’il existait déjà et que la connexion au partage est également faite dans le dossier /mnt/SITE (si vous ne savez pas le faire, inux fournit des utilitaires très simples d’emploi comme draksambashare [2] sous Mandriva Linux)
En appliquant les indications ci-dessus, vous pourriez avoir un script de sauvegarde lancé chaque nuit par crontab qui aurait cette forme (avec commentaires précédés de #) :
#!/bin/bash
log="/var/log/rsync/rsync.log"
path="/data/"
jourlejour="fildeleau"
laveille=`date +%d --date='-1day'`
lemois=`date +%m` # numéro du mois 01..12
lemoisdernier=`date +%m --date='-1month'`
numerojour=`date +%d`
# accès au serveur
#mount /mnt/mes_donnees
# création du dossier s'il n'existe pas
if [[ ! ( -e $path$lemois ) ]];
then mkdir $path$lemois
fi
#décommentez la ligne ci-dessous pour passer en différentielle
#if [[ ! ( -e $path$lemois ) ]] then mkdir $path$lemois"/diff/"
echo "debut de la sauvegarde "`date` >> $log
if [[ $numerojour == "01" ]];
then
echo "création de la sauvegarde initiale en début de mois" >> $log
cp -R $path$lemoisdernier/* $path$lemois/
#on démarre de la sauvegarde du mois précédent pour réduire la charge réseau
echo " sauvegarde du jour "`date` >> $log
# en différentielle décommentez la ligne ci-dessous
#rsync -av --read-batch=$path/diff/$laveille ${1:-$path/$lemois} 2>&1 >> $log
#accès au serveur pour mise à jour
sudo mount /mnt/mes_donnees
rsync -av /mnt/mes_donnees $path$lemois 2>&1 >> $log
sudo umount /mnt/mes_donnees
#plus besoin d'accès au serveur, on met à niveau la sauvegarde au jour le jour
# en différentielle commentez la ligne ci-dessous
rsync -av $path$lemois /$path$jourlejour
else
#accès au serveur
sudo mount /mnt/mes_donnees
# lancement de la sauvegarde journalière via SAMBA (charge réseau)
echo "1) sauvegarde batchée "`date` >> $log
rsync -av --write-batch=$path$lemois"/diff/"$numerojour /mnt/mes_donnees $path$jourlejour 2>&1 >> $log
#différentielle, commentez la ligne du-dessus et décommentez celle du dessous
#rsync -av --write-batch=$path"/diff/"$numerojour /mnt/mes_donnees $path$lemois 2>&1 >> $log
#plus besoin du serveur
sudo umount /mnt/mes_donnees
fi
echo "fin de sauvegarde du "`date` >> $log
On aura donc dans le dossier "/data" :
plusieurs sous-dossiers comportant la sauvegarde initiale (janvier, février, mars...)
chaque mois comprenant lui-même un sous-dossier "diff" contenant les fichiers autonomes "batchs" numérotés par le jour du mois de 1 à 31...
un sous-dossier "fildeleau" contenant la copie des données de la veille (sauvegarde au-jour-le-jour)
on pourra donc rétablir nos données à n’importe quelle date (pourvu que vous ayez suffisamment de taille de stockage)
Si on passe en mode différentielle, on aura dans le dossier "/data" :
plusieurs sous-dossiers comportant la sauvegarde initiale (janvier, février...) dont on conservera idéalement les 3 derniers mois seulement
un unique sous-dossier diff contenant les fichiers autonomes batchés numérotés de 1 à 31
On pourra dans ce cas remonter jusque 30 jours en arrière mais l’occupation d’espace de stockage sera bien moins important (on n’a plus besoin de la sauvegarde au-jour-le-jour) et la restauration des données beaucoup plus rapide (pour rétablir la situation au 15 juin, il suffira d’appliquer le batch 15 au dossier /data/juin avant le 16 juillet).
Cet article n’a pas pour but de vous fournir une solution clefs-en-main mais de vous faire découvrir une utilisation possible de rsync pour répondre aux besoins de sauvegardes différentielles ou incrémentielles. Pour adapter cette expérience à votre propre besoin, il faut tenir compte de plusieurs paramêtres :
l’espace de stockage disponible
la variabilité des données à stocker
la profondeur nécessaire (combien de sauvegardes en arrière doit-on disposer ?)
la fréquence (journalière, hebdomadaire, mensuelle...)
qui vous améneront à privilégier l’une ou l’autre des solutions.
{Consulter} l'article.
L’EeePC d’Asus est fourni avec Linux Xandros. Webtarot a été créé uniquement pour Windows mais il est possible de faire fonctionner Webtarot sous linux à l’aide de Wine.
Les 4 étapes sont :
téléchargement et installation de Wine
téléchargement de Webtarot
installation de Webtarot
création d’un raccourci
Avertissement : On considère que votre Asus vient de sortir de sa boite, qu’il n’a pas été modifié et que vous êtes responsable de tout ce que vous allez faire.
Comme il ne sert à rien de réinventer la roue, je me suis directement inspiré de l’article de eeepc.fr qui s’appelle Lancer des applications Windows sous Xandros qui explique les 4 commandes à lancer dans le terminal (que l’on obtient par la combinaison de touches CTRL-ALT-T, cf manuel EeePC), à savoir :
wget -q http://wine.budgetdedicated.com/apt/387EE263.gpg -O- | sudo apt-key add -
sudo wget http://wine.budgetdedicated.com/apt/sources.list.d/etch.list -O /etc/apt/sources.list.d/winehq.list
sudo apt-get update
sudo apt-get install wine
Cet article est très bien fait, explicatif, complet. Prenez le temps de le lire entièrement si vous voulez en savoir plus sur l’utilisation de Wine. A noter que Wine occupera 52 Mo.
Là encore c’est facile, une seule commande suffit :
wget http://dl.webtarot.fr/mininstall.exe
Il est stocké dan votre dossier /home/user par défaut.
Là encore et toujours dans notre terminal, une seule commande suffit (ça devient desespérant de simplicité linux) :
wine ./mininstall.exe

Et vous retrouvez quelque chose de connu donc suivant, suivant, suivant... terminer sans changer aucune option.
Là, c’est un tout petit peu compliqué. Il faut d’abord recopier le fichier de configuration des raccourcis dans son dossier personnel puis modifier ce fichier pour y ajouter le raccourci que l’on souhaite. Copie :
cp /opt/xandros/share/AsusLauncher/simpleui.rc ~/.AsusLauncher/
On ouvre ensuite ce fichier avec l’éditeur de fichier et on ajoute à la fin :
<parcel extraargs="/usr/bin/wine 'C:\Program Files\Webtarot\webtarot.exe'" simplecat="Play" selected_icon="solitaire_hi.png" icon="solitaire_norm.png" >
<name lang="en" >Webtarot</name>
<name lang="fr_FR" >Webtarot</name>
<desc lang="en" >French Tarot card game.</desc>
</parcel>
Vous en déduisez la commande pour lancer webtarot à partir du terminal :
wine ’C :\Program Files\Webtarot\webtarot.exe’
à utiliser si vous ne souhaitez pas rajouter un raccourci.
Il ne reste qu’à relancer l’interface graphique avec la combinaison de touches CTRL-ALT-BACKSPACE ou redémarrer le EeePC.

Voici donc un script complet qui devrait faire toutes ces étapes :
echo autorisation de se connecter sur le serveur wine
wget -q http://wine.budgetdedicated.com/apt/387EE263.gpg -O- | sudo apt-key add -
sudo wget http://wine.budgetdedicated.com/apt/sources.list.d/etch.list -O /etc/apt/sources.list.d/winehq.list
sudo apt-get update
echo installation de Wine
sudo apt-get install wine
echo chargement de Webtarot
wget http://dl.webtarot.fr/mininstall.exe
echo installation Webtarot
wine ./mininstall.exe
echo fin du script
rm -f ./mininstall.exe
cp /opt/xandros/share/AsusLauncher/simpleui.rc ~/.AsusLauncher/
cat >> ~/.AsusLauncher/simpleui.rc << "EOF"
<parcel extraargs="/usr/bin/wine 'C:\Program Files\Webtarot\webtarot.exe'" simplecat="Play" selected_icon="solitaire_hi.png" icon="solitaire_norm.png" >
<name lang="en" >Webtarot</name>
<name lang="fr_FR" >Webtarot</name>
<desc lang="en" >French Tarot card game.</desc>
</parcel>
EOF
Vous pouvez également télécharger le script ci-dessous, le sauver sur votre EeePC. Allez ensuite dans le gestionnaire de fichier, cliquez avec le bouton droit pour sélectionner "propriétés". Dans l’onglet "droit d’accès", cochez "executable" puis fermez les propriétés et double-cliquez sur ce fichier.
Post-Scriptum
Si vous souhaitez mettre webtarot dans l’onglet Internet, il faut remplacer simplecat="Play" par simplecat="Internet" ou, pour le sous-dossier "jeux" : simplecat="Play/Games"
Est-ce que ça marche sous Debian, Ubuntu, Xandros ? Peut-être bien (sauf le raccourci menu) !
Sous mandriva et ses dérivés, il faudrait faire ceci en tant que root :
urpmi wine
et en tant qu’utilisateur normal :
wget http://dl.webtarot.fr/mininstall.exe
wine ./mininstall.exe
(Le raccourci sur le bureau devrait être fait automatiquement.)
{Consulter} l'article.
Dans cet article, nous allons décrire l’installation de la mandriva 2008.1 sur une carte SDHC 4 Go que nous avons mise dans l’eeePC.
L’Asus EeePC ne dispose pas de lecteur CD ou DVD, il n’est pas question ici de dire au lecteur d’en acheter un juste pour installer la mandriva. Pour éviter cela, nous aurons besoin d’une clef USB de n’importe quelle taille mais VIERGE. Celle-ci va contenir l’installeur "mandriva".
Nous allons utiliser un clef usb qui va recevoir le strict minimum : l’installeur dans un linux de base pour aller télécharger sur internet tous les paquets rpm ont nous aurons besoin. Nous ferons l’installation entièrement sur la carte SDHC pour conserver la Xandros en système de secours. Donc :
on ne touchera pas au disque interne
toute l’installation se fera au travers d’un cable RJ45 par internet
on pourra lancer Xandros ou Mandriva 2008.1 à chaque démarrage du eeePC
ATTENTION : La clef USB ne doit rien contenir. Tout ce qui est dessus va être détruit. Si votre clef contient des données, c’est le moment où jamais d’effectuer une sauvegarde. Prononcez à haute voix : « j’ai bien compris que si j’ai laissé un fichier superimportant sur ma clef, c’est tanpis pour moi. »
Petite parenthèse : sauvegarder une clef reconnue par linux comme /dev/sdb se fait ainsi : dd if=/dev/sdb of=/home/mon_user/sauvegarde.clef.dd
Ensuite pour remettre ses fichiers sur la clef, opération inverse :
dd if=/home/mon_user/sauvegarde.clef.dd of=/dev/sdb
(Fin de la parenthèse)
Mandriva fournit une image d’installeur très pratique : all.img. Vous la trouverez sur le CD1 d’installation ou sur le DVD dans le dossier « i586/install/images » ou vous pourrez le télécharger sur n’importe quel miroir de téléchargement de cette distribution. Par exemple, free.fr le propose en téléchargement ici pour la version 2008.1.
Une fois téléchargé, ce fichier doit être copié sur votre clef usb, toujours en utilisant l’utilitaire dd : dd if=all.img of=/dev/sdb. Voilà, tous vos fichiers sur cette clef ont été remplacés par l’installeur Mandriva. Pour les « Windowsiens »,l’utilitaire équivalent se trouve ici [3] .
Il va falloir aller dans le BIOS (ou setup) de votre eeePC pour lui intimer l’ordre de démarrer sur la clef au lieu de démarrer sur le disque interne. Au démarrage, lorque vous voyez le logo « eeePC », appuyez sur la touche F2 (c’est indiqué sur la dernière ligne de l’écran).

Dans cet écran, vous allez dans le menu boot et là vous avez une ligne "hard disk drives" et c’est là que vous allez lui dire de préférer le disque USB plutôt que le SILICON MOTION truc (le disque interne). Enregistrez, redémarrez et c’est parti.
Vous avez désormais une installation classique Mandriva dont 3 étapes sont importantes :
le partitionnement
le chargeur de démarrage
la configuration réseau
Branchez votre eeePC sur votre modem, votre routeur, votre hub, votre switch, votre adslbox. Bref, branchez-le au réseau internet. Dans mon cas, j’ai préféré rester sur du classique filaire ethernet. Il est peut-être possible de faire d’autre choix (pas wifi, le pilote madwifi n’est pas présent à ce stade) mais je suis quelqu’un de raisonnable : le réseau filaire , c’est simple, temporaire, efficace et fiable pour une installation par le réseau.
Si vous n’y arrivez pas, il n’est pas utile de continuer : sans téléchargement des paquets rpm, ça ne peut pas marcher. Il faudrait alors explorer l’alternative "miroir sur disque dur USB" qui nécessite une préparation supplémentaire.
A titre personnel, j’ai choisi de mettre une partition unique de 4 Go en « linux native » (donc extended 2 non journalisé). L’inconvénient est qu’en cas d’arrêt brutal, il y aura des dégâts sur les données mais je réduis un peu les accès disque. Je n’ai pas mis de swap qui amputerait la carte de 512 Mo ou + et vu que la « class 6 » tourne à 6 Mo/s maximum, ce serait une bien piêtre mémoire vive virtuelle.
Pour faire cela, il faut bien entendu choisir « partitionnement personnalisé » et ne pas se tromper entre la carte SD et le disque interne. Dans mon cas, la carte SD était reconnue en « sda » et contenait une partition unique en VFAT donc aucun risque de confondre avec le disque interne qui contient 3 partitions (une extended2, une extended3 et un fat). Cette version du disque interne semble spécifique à mon achat : eeepc avec clef 3G SFR.
J’ai laissé le chargeur GRUB, proposé par défaut sur la mandriva 2008.1, mais il m’a fallu ensuite corriger les entrées. En effet, il m’a trouvé les deux partitions Xandros mais les choix du menu grub correspondant ne sont pas fonctionnels. On corrigera après le premier démarrage.
Je n’ai pas parlé des paquets à choisir car chacun fait ce qui lui plait. Personnellement, j’ai mis icewm+kde pour tester la rapidité en passant par les choix de paquetage individuel. Mais en voyant les noms des paquets défiler, je sais qu’il y aura de l’optimisation à faire.
N’oubliez pas de repasser par le BIOS pour rechanger le menu des priorités disque dur. Maintenant c’est SD-card qui passe en 1 er disque dur.
Au premier démarrage, toujours avec mon réseau ethernet, je découvre enfin mon eeepc avec ma mandriva fonctionnelle. Il faut configurer les miroirs [4] et notamment les miroirs non-free pour installer le paquet dkms-madwifi qui va nous permettre de faire fonctionner le wifi. Utilisez votre outil préféré (software manager rpmdrake, urpmi, gurpmi...) pour faire cela.
Désormais, vous pourrez configurer votre accès wifi avec l’habituel centre de configuration mandriva (ou plus exactement drakconnect).
Déjà, il détecte du Debian alors que je voudrais qu’il l’appelle Xandros et ça se termine invariablement par un fichier non trouvé (il chaine sur le grub de la partition qui ne marchait pas) ou un kernel panic. La raison ? En changeant l’ordre dans le bios, j’ai aussi inversé /dev/sda et /dev/sdb or Xandros n’utilise pas l’UUID.
Quand j’arrive à chainer correctement sur le grub de ma partition Xandros, le lancement se fait sans le splashscreen gris "Starting..." et aboutit à une demande de login password graphique. Bref pas du tout sur mon environnement habituel.
Finalement, j’ai choisi de supprimer les deux entrées qu’avait détecté l’installeur Mandriva et de mettre la mienne. J’ai donc changé le fichier /boot/grub/menu.lst avec un éditeur de texte pour y ajouter :
root (hd1,0)
kernel /boot/vmlinuz-2.6.21.4-eeepc rw root=/dev/sda1 vga=785 quiet
initrd /boot/initramfs-eeepc.imgAinsi, j’ai fait une entrée sans UUID, correcte et avec les mêmes options que le grub de la xandros.
Voilà, nous y sommes : une mandriva qui fonctionne sur la carte SDHC, une xandros qui n’a pas bougé sur le disque interne, un wifi fonctionnel des deux côtés.
Cette installation ne me satisfait toutefois pas totalement. D’abord, le temps de chargement est trop long et pour chaque démarrage, j’ai droit à une vérification complète de /dev/sda ce qui ralentit d’autant le chargement. Petit à petit je m’oriente vers l’idée que ma carte SD est défectueuse.
Il restera à faire également toutes les optimisations :
suppression des paquets RPM inutiles, désinstaller les logiciels gourmands
tester LILO au lieu de GRUB qui me semble trop lent (30’’ ! ) ou rapatrier au moins vmlinuz et initrd sur le disque interne
optimiser le chargement de Mandriva (en ne démarrant pas les service inutiles par exemple, en réduisant le nombre de mingetty)
optimiser l’interface graphique (taille, résolution, nombre de bureaux, choix du window manager...)
installer la clef 3G
et toutes les autres choses que vous découvrirez dans un prochain article
{Consulter} l'article.
L’EeePC ressemble fortement à une mode, donc je ne m’y suis pas intéressé jusqu’à ce que je le vois en vrai. Sa taille à mi-chemin entre le portable et le PDA m’a immédiatement fait penser que je voyais peut-être là le bon intermédiaire.
Mes capacités ophtalmiques étant tout à fait limitées, l’usage d’un PDA m’est très difficile. Par ailleurs, je ne trouve pas très pratique l’absence de clavier, ni ces claviers minuscules où l’absence de faute de frappe constitue la performance à atteindre.
Quant aux portables, ils ont tendance à grandir, grandir... Aujourd’hui, pour installer son portable à côté d’un autre utilisateur de portable dans un train, il faut faire un créneau ! Les sacoches en bandouillère ont dû laisser place aux valises à roulettes pour supporter ce poids (en attendant les malles militaires ?).
Bref, me voilà avec mon portable Asus Eeepc. Et là, première surprise : en 20 secondes, le PC est prêt, loin devant les PC traditionnels. L’interface est agréable même si son côté "flashy" est un peu déroutant.
l’utilisation
Le clavier est tout à fait suffisant, de même que l’écran. Le pavé tactile est plus difficile à utiliser même pour un habitué pour deux raisons :
les clics sont difficiles à faire (avec un touchpad "normal", l’index glisse et le pouce clique approximativement alors qu’ici le pouce doit bien appuyer verticalement au bon endroit)
la zone qui fait office de roulette est une excellente idée mais je n’ai pas encore compris pourquoi ça marche parfois et parfois pas !
Pour le reste, il n’y a rien à redire : c’est un vrai PC et j’ai eu la surprise de voir que sa carte wifi se comportait mieux que celle de mon portable, tout comme la webcam.
Dans le TGV, sa clef 3G est fonctionnelle sur tout le trajet Paris-Lille même si une bonne partie se fait en "2G" (GPRS). Sur Lille-Saint AMand les Eaux (TER), c’est à peu près le même constat : près des villes en 3G, près des champs en 2G.
connectique
Là encore, il est bien pensé : côté droit , tout ce qu’il faut pour en faire un PC de bureau : prises écran (VGA) , clavier et souris (2 USB). L’autre côté comprend la connectique son, une prise RJ45 et une dernière prise USB. Les périphériques sont auto-détectés et une fenêtre vous propose de lancer le gestionnaire de fichier, le gestionnaire multimédia, etc. Le montage est automatique.
à l’usage
J’ai essayé de brancher dessus un disque dur USB auto-alimenté sur lequel j’avais installé une distribution linux mandriva 2007. Après un changement simple dans le BIOS, l’ordinateur a démarré sous cette mandriva et j’ai retrouvé mon bureau KDE assez rapidement (malgré un chvauchement des raccourcis car j’en avais un peu beaucoup sur mon bureau).
Ensuite j’ai préparé une mandriva 2008.1 qui elle aussi s’est très bien sortie du passage sur ce miniPC. Je dois encore y configurer la clef 3G et tester le wifi et l’installer ensuite "en dur" sur ce PC (sur lequel j’ai ajouté par confort une carte SDHC 4Go).
conclusion
Pour certains (les sédentaires de l’informatique), ce sera un gadget ou un ordinateur d’appoint que l’on sortira rarement. Pour d’autres (je pense surtout aux nomades occasionnels par profession) l’eeePC deviendra vite indispensable. Dans mon cas, j’ai un PC de travail (sans le poids) partout où je vais. Il restera à voir si ce portable à bas coût tient la distance avec un usage assez intensif.
{Consulter} l'article.
Cet article donne une méthode pour installer la Mandriva Linux 2007 sur un disque dur USB. Cette méthode n’est probablement pas la meilleure car mes connaissances sont parcellaires. Elle se base sur des tests empiriques (ça veut dire que j’ai fait plein d’essais qui n’ont pas fonctionné et que je n’ai pas pris le temps de lire l’encyclopédie en 35 volumes du noyau linux).
Pour notre recette, nous avons besoin d’un disque dur USB, d’un CDR vierge, d’une mandriva 2007 et d’un PC avec un graveur de CD. Il faudra avoir un "linux en état de marche" donc soit un liveCD de type Mandriva One, soit avoir un linux qui va bien installé sur le PC.
Ici, j’ai utilisé un boitier USB 3,5 pouces (alimenté par 1 ou 2 ports USB) dans lequel j’ai glissé un vieux disque dur IDE de portable de 10 Go. Le DVD est une mandriva 2007. Mon CDROM de boot est un mini cd-rw de 80 Mo, dont la petite taille permet de le glisser dans la pochette du disque dur.
On va installer la mandriva linux sur le disque dur USB à partir d’un PC. Peu nous importe le contenu de ce PC car on ne touchera pas à son propre disque dur. Dans un second temps, nous allons adapter le noyau de démarrage pour tenir compte de la spécificité "USB" du disque dur. La troisième très courte étape consistera à s’intéresser aux PC capables de démarrer sur disque USB. La dernière étape consistera à faire un CD de démarrage spécial pour pouvoir démarrer notre disque USB sur des PC qui ne peuvent pas le faire.
Branchez le disque USB sur votre PC, mettez le DVD Mandriva (ou le CD1) dans son lecteur et allumez votre PC. S’il ne démarre pas sur le CDROM, vérifiez dans le bios la séquence de démarrage. "CD-ROM" doit être en premier.
L’installation de la Mandriva se fait de façon tout à fait traditionnelle SAUF l’étape du choix de la partition où installer votre Mandriva. Sélectionnez "partitionnement personnalisé" et prenez bien soin de sélectionner le bon disque dur.
Vous devez voir plusieurs onglets dénommés hda, hdb, sda, sdb... Tous ceux qui commencent par hd sont des disques durs internes IDE. On n’y touche pas ! Pour les sd, ce sont soit des disques SATA, soit votre disque dur USB (ou votre clef usb). Soyez sûr de prendre le bon pour ne pas risquer d’écraser les données de votre disque dur interne SATA. Si vous ne savez pas le reconnaitre, si vous avez un doute, arrêtez-là ! Dan tous les cas, c’est le moment de vous dire que je (l’auteur de ces lignes) ne suis pas responsable des dégâts : vous avez fait vos sauvegardes et pris toutes les précautions !
Dans le partitionnement automatisé, si votre disque n’était pas partitionné, choisissez "partitionnement automatique". S’il reste d’anciennes partitions sans intérêt, supprimez-les d’abord. Si par contre, vous avez des partitions linux existantes à conserver, renseignez simplement leur point de montage. Si vous avez une partition windows, vous pouvez aussi essayer de la réduire pour faire un partitionnement automatique sur la place ainsi libérée.
Le reste de l’installation es fait normalement : Il faut lire ce que Mandriva vous écrit, faire vos choix et cliquer...
Attention : Au moment du choix de l’emplacement du secteur de démarrage, c’est comme pour le partitionnement : Ne vous trompez pas, il faut le mettre sur le MBR (Master Boot Record) du disque usb. Si vous n’avez pas de disque interne SATA, votre disque USB s’appelait SDA (à l’étape "partitionnement") et donc vous choisirez d’installer LILO sur /dev/sda
Arrivé à ce stade, cela ne roulera pas. En effet, Lilo va charger deux fichiers ("initrd" et "vmlinuz") en mémoire vive et "leur donner le volant". Le rôle de Lilo est terminé, à eux de se débrouiller maintenant pour conduire ce PC. Ici, il va y avoir une série de tests, initialisations et autres préparatifs. Parmi ceux-ci, il va falloir accéder au disque dur donc lire la partition et le système de fichier (appelé ext3). Oui mais voilà avant de pouvoir lire le système de fichier, il faudrait déjà qu’il puisse accéder à l’USB et pour cela il a un driver (pilote logiciel) USB sous la forme d’un fichier... qui se trouve sur le disque dur USB. Hé, hé, hé ! Dit plus clairement, vous avez fermé les portes de la bagnole en laissant les clefs à l’intérieur : plus moyen d’y entrer !
Nous allons donc ajouter dans initrd les drivers USB et les charger en tout premier. Pour cela, vous avez besoin d’accéder à la partition à partir d’un autre linux. Donc lancez votre Mandriva One, votre liveCD ou votre linux qui va bien sur vote disque IDE.
Ouvrez une console d’administrateur (root) par le menu système->terminaux->konsole ou mieux quittez le mode graphique par l’appui simultané sur CTRL+ALT+F2 (vous y reviendrez par CTRL+ALT+F7.
Voici les instructions à lancer et leur explication (précédé d’un # signalant un commentaire) :
mkdir /mnt/toto
# on crée un dossier toto dans mnt
mount /dev/sda5 /mnt/toto
# on en fait un point d'accès vers notre partition USB racine
# Attention, pour vous ce peut être /dev/sda1 ou /dev/sdb1...
# Vous vous en souvenez on l'a vu plus haut
chroot /mnt/toto
# maintenant on travaille sur notre disque USB exclusivement
# Bref, on en prend les commandes
Maintenant que nous avons "ouvert la bagnole sans la clef", nous allons construire notre nouveau initrd pour ne plus nous faire avoir.
cd /boot
ls
mkinitrd -v --force-usb --preload=ohci-hcd --preload=uhci-hcd --preload=ehci-hdc --preload=usb-storage --preload=sd_scsi --preload=sd_mod /boot/usbinitrd.img 2.6.17-5mdv
Quelques explications : cd /boot permet d’aller dans le dossier de démarrage. ls permet de voir ce qu’il y a dedans. C’est là que vous vérifiez le numéro de noyau qui doit être 2.6.17-5mdv. Si ce n’est pas le bon, changez le dernier paramètre de la ligne mkinitrd. mkinitrd va créer le démarrage du noyau avec les options demandées, à savoir que tous les drivers usb sont préchargés ainsi que les modules qui en dépendent (usb-storage, scsi...). le fichier résultant s’appelle usbinitrd.img et se trouve dans le dossier /boot. Vous pouvez vérifier sa présence par un nouveau ls
Nous allons ajouter dans /etc/lilo.conf une nouvelle entrée ainsi :
image=/boot/vmlinuz
label="USB"
root=/dev/sda5
initrd=/boot/usbinitrd.img
append=" splash=silent"
vga=788
pour faire cela, tapez simplement :
mcedit /etc/lilo.conf
Attention remplacez /dev/sda5 par votre propre valeur (/dev/sda1 ou /dev/sdb1 etc)
Une fois que c’est fait, nous allons mettre à jour le MBR en tapant simplement la commande lilo
Pour sortir de cette console, tapez exit. Si vous aviez fait CTRL+ALT+F2, c’est le moment de faire CTRL+ALT+F7.
Dans le BIOS de votre PC, pensez à mettre HDD-USB en premier dans la séquence de démarrage (BOOT ORDER).
Pour ceux-là, nous allons créer une image iso de CD qui va contenir vmlinuz, usbinitrd.img et ce qu’il faut pour les lancer : isolinux. Cette image ISO devrait faire moins de 3 Mo et pourtant ça devrait suffire à contourner les bios récalcitrants.
Vous êtes maintenant revenu sur votre distribution qui marche bien. Créez un dossier "moncd" sur votre disque USB et un sous-dossier "noyau". En console, cela se fait ainsi :
mkdir /mnt/toto/isolinux
mkdir /mnt/toto/isolinux/noyauVous allez mettre dans /mnt/toto les fichiers isolinux.bin et fr-latin1.klt. Ces fichiers se trouvent sur le CD1 de votre Mandriva ou sur le DVD dans un dossier nommé isolinux. De plus vous allez y ajouter les fichiers vmlinuz et usbinitrd.img qui se trouvent dans le dossier /boot du disque USB.
Utilisez votre explorateur de fichiers habituel ou en console :
cp /mnt/cdrom/isolinux/isolinux.bin /mnt/toto/isolinux/
#le binaire isolinux.bin va démarrer le CD et lancer votre initrd
cp /mnt/toto/boot/usbinitrd.img /mnt/toto/isolinux/noyau/
# notre fameux usbinitrd.img que nous avions créé tantôt
cp /mnt/toto/boot/vmlinuz-2.6.17-5mdv /mnt/toto/isolinux/noyau/vmlinuz
#le vmlinuz. Notez bien que l'on prend dans /boot le vmlinuz avec
#son numéro derrière (donc le vrai fichier, pas un lien)
# et on le renomme en vmlinuz sans numéroNotre futur CD commence à prendre forme. Il ne reste plus qu’à y ajouter deux fichiers texte que vous allez créer avec votre éditeur de texte préféré : kwrite, mcedit, gedit, vim, emacs...
Le premier : isolinux.cfg
default usb
prompt 1
timeout 150
display boot.msg
label usb
kernel noyau/vmlinuz
append initrd=noyau/usbinitrd.img ro root=/dev/sda5
Le second : boot.msg
Bienvenue sur le CD de lancement du disque dur USB
Tapez sur la touche ENTREE en croisant les doigtsC’est prêt ! Créons maintenant l’image ISO de notre CD :
cd /mnt/toto
mkisofs -o /mnt/toto/bootcd.iso -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -r -l isolinux
Voilà, vous devriez trouver dans la racine de votre disque USB un fichier nommé bootcd.iso à graver avec K3B (menu Outil -> Graver une image de CD) sur votre cd vierge.
Dans la génération du usbinitrd, on précharge les 3 drivers possibles : uhci, ohci et ehci. Si vous savez quel driver utilise votre PC et que votre disque n’ira pas sur d’autres PC, vous pouvez ne précharger qu’un des 3 drivers.
Dans le /etc/lilo.conf, on pourra ensuite changer la ligne "defaut" pour qu’elle lance l’entrée "usb" et non plus "linux".
Le boot.msg peut être graphique mais cela semble assez délicat à faire.
Le CD contient plein de place disponible qu’on aurait pu remplir avec des outils de secours.
Sur le CDROM que j’ai créé, j’ai mis une entrée pour chaque sdX au cas où : sda1 sda2 sda5 sdb1 sdb2 sdb5
{Consulter} l'article.
Vous avez téléchargé par Bittorrent l’image ISO de la mandriva free 2007 DVD et après tout ce temps d’attente, vous êtes pressé de graver l’image... Pas si vite ! Les petits fichiers qui ont été téléchargés en même temps que l’iso ont une utilité !
Quand vous avez téléchargé à partir d’un fichier bittorrent, vous vous retrouvez avec ceci dans un dossier :
mandriva-linux-2007-spring-free-dvd-i586.idx
mandriva-linux-2007-spring-free-dvd-i586.iso
mandriva-linux-2007-spring-free-dvd-i586.iso.md5.asc
mandriva-linux-2007-spring-free-dvd-i586.iso.sha1.asc
La plupart d’entre-nous (oui, moi aussi !) nous précipitons sur le fichier iso sans même prêter attention aux 3 petits fichiers idx et surtout asc.
Pour le fichier qui se termine par .iso, vous le savez déjà, c’est l’image à graver avec K3b (menu graver une image iso).N’en parlons plus.
Le fichier idx contient la liste des paquets présents dans l’image ISO. Pratique pour savoir quelle version de Firefox est incluse. N’en parlons plus.
Les deux fichiers "asc" remplissent la même fonction. Ils affichent une empreinte de l’image ISO. - Une empreinte ? - Oui, une empreinte. C’est comme l’empreinte de votre index : On compare le bout de l’index avec la trace laissée sur le bouton de l’autoradio et on sait que c’est votre doigt qui a appuyé dessus et que votre doigt étant dans le prolongement de votre main, c’est bien vous qui étiez dans la bagnole...
Donc l’empreinte contenue dans l’un ou l’autre des fichiers asc va donc nous permettre d’être certain que notre image ISO présent sur notre disque dur est bien exactement celle qui était présente sur le serveur mandriva.com.
Examinons le fichier mandriva-linux-2007-spring-free-dvd-i586.iso.md5.asc avec la commande cat :
Houla, c’est quoi tout ça ? Ce fichier est quand même scindé en deux parties, la première s’appelle « PGP SIGNED MESSAGE » tandis que la seconde s’appelle « PGP SIGNATURE ».
Pour le moment, nous ne nous intéressons qu’au contenu du message lui-même, nous verrons ensuite la signature. Ignorons du même coup, la ligne « Hash : SHA1 » qui concerne en fait la signature.
Le message ne contient qu’une seule ligne :
f5fd0673806ad3d7ea63424255c27bcd mandriva-linux-2007-spring-free-dvd-i586.iso
Celle-ci indique que l’empreinte -ou somme de contrôle- du fichier dénommé « mandriva-linux-2007-spring-free-dvd-i586.iso » doit être exactement la valeur « f5fd0673806ad3d7ea63424255c27bcd ».
Et bien allez-y ! Vérifiez [5] donc que VOTRE image iso obtient bien la même somme de contrôle :
Et voilà. Nous avons rigoureusement la même suite de chiffres et de lettres que ce qui est présent dans le fichier md5.asc. L’image ISO qui se trouve ainsi sur votre disque dur est identique à ce qui était prévu : pas de mauvaise réception, pas d’altération donc pas de surprise.
Vous venez de vérifier que l’image ISO est bien identique à celle que vous auriez dû recevoir. On pourrait s’arrêter et enfin graver notre iso. Mais si vous êtes arrivé à ce stade de la lecture, c’est que vous voulez aller jusqu’au bout de votre démarche. Soyons un peu parano : vous l’avez téléchargez où cette image ? Pas directement chez Mandriva, plutôt sur un site miroir ou chez un particulier qui fait du partage bittorrent. Oui mais ce particulier que je ne connais pas, il a pu :
changer le contenu de l’image ISO,
calculer la somme de contrôle de son image ISO modifiée comme nous venons de l’apprendre
et modifier le fichier md5.asc en conséquence
Et je vais me retrouver avec un DVD de Barbapapa [6] ou bien pire : avec un linux qui contiendrait une porte dérobée pour méchants pirates ??? Et bien, non car c’est pour éviter cela qu’il y a la signature GPG.
Comme je vous l’ai indiqué plus haut, votre fichier md5.asc est constitué d’un message GPG et de sa signature. Que dit-il ? Que la signature a été établie par GnuPG dans sa version 1.4.5. C’est donc avec GnuPG que je vais pouvoir vérifier cette signature :
Diantre. Je connais maintenant la référence de la clef mais il me dit qu’il ne peut pas la vérifier. Alors trouvons-la, cette clef publique.
Deux possibilité s’offrent à vous : vous avez une autre mandriva déjà installée ou vous êtes connecté à internet.
1) Par internet
La commande « gpg —recv-key » suivie du numéro de clef va chercher sur internet la clef publique correspondante :
Ici, avec mandriva 2007.0, le serveur de clef est « pgp.net ». Ma Mandriva 2006 était configurée pour le serveur de clef mandrakesecure.net qui n’existe plus. Passons dans ce cas à la seconde solution...
2) en la récupérant sur une mandriva installée
Dans mandriva 2006 et 2007, vous verrez un dossier dénommé /etc/RPM-GPG-KEYS dans lequel se trouvent des clefs publiques et justement celle de Mandriva :
Que vous ayez choisi l’une ou l’autre des méthode, vous voilà prêt à recommencer la vérification :
Et bien voilà, cette fois-ci la mention "Bonne signature" nous permet de conclure que l’image ISO que nous avons est bien la copie conforme de celle que nous devions télécharger (vérification md5 ok), que l’empreinte md5 émane bien de quelqu’un qui possède la clef privée mandriva, donc de mandriva lui-même.
Comme vous le lisez dans la dernière mise en garde, il reste une incertitude : il manque la certication de confiance de la signature. Pour en savoir plus là-dessus, je vous invite à lire la FAQ GPG du club Linux Nord Pas de Calais [7] et notamment son chapitre 4.
Ici, nous nous contenterons de considérer qu’ayant eu la clef par un moyen de communication différent (soit directement par le net, soit sur une AUTRE version obtenue par un AUTRE fournisseur, soit les 2 car nous sommes paranos), on est bien en présence de la clef publique officielle de Mandriva.
Tout ce qui vient d’être fait avec md5 peut être fait à l’identique avec sha1 en utilisant cette fois sha1sum. SHA1 tend à supplanter MD5 parce qu’il est plus puissant et que MD5 n’est plus considéré comme sûr.
Bon alors, vous la gravez cette image ?
{Consulter} l'article.
BzTarot est un programme de tarot basé sur les stratégies développées en tournoi avec signalisation, ce qui m’a obligé à prendre énormément de notes. Toutes ces notes ont été rassemblées et rédigées dans un livre que vous pouvez lire en ligne ou télécharger.
Ce logiciel est achevé et vous pouvez télécharger une version dont les joueurs gérés par l’ordinateur savent jouer... à un niveau très moyen.
ATTENTION : la licence incluse dans le logiciel (version 1.00 et inférieures) n’est plus valable : Ce logiciel est sous licence GPL (General Public Licence).
Il subsiste quelques erreurs récurrentes dans ce jeu. Actuellement, je n’assure plus le développement de ce jeu car je donne mon temps libre pour le développement d’un autre jeu de tarot bien plus abouti : WebTarot

Téléchargements :
version windows
version linux en RPM
le SRPM
version linux en DEB (empaqueté par Rémi Labene)
version linux en tar.gz
les sources en tar.gz
{Consulter} l'article.
La Webcam Sangha Sn-510 [8], fournie avec un support-pince, comporte un cd de drivers pour windows mais... pas pour Linux. Pourtant son installation est assez facile sous linux.
Vous avez installé la Mandriva [9] 2005le ou 2006 dans sa version "free","powerpack" etc. La version Discovery pourrait poser plus de soucis car elle est plus "légère". Il nous faut le compilateur gcc, la librairie "libsdl" et les sources du kernel. Avec Mandriva 2007, cette webcam fonctionne directement sans souci.
La librairie sdl est installée pour peu que vous ayez installé un environnement graphique. Nous allons vérifier la présence des autres prérequis.
Ouvrons une console et prenons les pouvoirs de "root" grace à la commande su. Vous vous souvenez de son mot de passe, n’est-ce pas ;o)
GCC
tapez :
gcc -v
S’il apparait plein de choses avec une dernière ligne qui ressemble à ça : gcc version 4.0.1 (4.0.1-5mdk for Mandriva Linux release 2006.0) , tout va bien !
Sinon tapez simplement :
urpmi gcc
KERNEL-SOURCE
tapez
uname -r
Vous aurez comme réponse le numéro de votre noyau. par exemple : 2.6.12-12mdk Tapez ensuite
ls /usr/src/
Vous voyez un répertoire avec les mêmes numéros ? Alors vos kernel-source sont installés. Pour en avoir le coeur net, allez dans ce répertoire et vérifiez qu’il y a plusieurs sous-répertoires tels que 3rdparty, drivers, include... Ce n’est pas le cas ? Alors installons-les :
urpmi kernel-source-2.6.12.12mdk
(nota : attention les - après 2.6 sont souvent remplacés par des points comme ici)
Les pré-requis sont terminés, laissez la console ouverte mais revenez sur votre bureau.
Votre caméra est reconnue par le gestionnaire de matériel mandriva (harddrake) en périphérique inconnu sous le nom PIXART (id vendor 0x093a, id product 0x2468)
Vous trouverez le module sur ce site : http://mxhaard.free.fr/download.html
Au moment où cet article est écrit le numéro du module est Driver V0.57.08
Téléchargez le spca5xx-20060101.tar.gz (ou plus récent). Avec mozilla, un clic droit sur le lien puis "enregistrer sous...". Dans mon exemple, je l’enregistre sur le bureau (/home/beuz/Desktop) mais de préférence, utilisez un répertoire dédié comme "Téléchargement" (/home/beuz/Téléchargement).
Reprenez votre console d’administrateur et allez dans le dossier où vous l’avez enregistré par la commande cd
cd /home/beuz/Desktop
Puis décompressez l’archive :
tar -xzvf spca5xx-20060101.tar.gz
Un répertoire du même nom a été créé, on va dedans :
cd spca5xx-20060101.tar.gz
puis on lance la production :
make clean
(nettoyage des scories d’une précédente compilation)
make
(création du module)
et si tout se passe bien :
make install
(copie du module créé dans les modules disponibles pour votre linux) Alors vérifions maintenant que ça marche, tapez :
tail -f /var/log/messages
C’est le journal d’activité de linux. Plusieurs lignes de messages variées apparaissent. Celles qui nous intéressent vont apparaitre quand vous allez rebrancher la webcam donc allez-y débranchez , rebranchez et observez les lignes.
Si vous voyez apparaitre le nom du driver "spca5xx", c’est bien. Si vous voyez en plus une mention "/dev/video", alors c’est gagné ! Fermez ce journal par ctrl+c.
Il ne reste plus qu’à utiliser votre logiciel vidéo préféré pour tester la caméra. Par exemple, utilisez xawtv que l’on installe en tapant :
urpmi xawtv
puis lancez-le :
xawtv
Si vous avez bien visé, une fenêtre va apparaître avec votre tête. Tournez l’objectif pour la netteté et voilà !
{Consulter} l'article.
[1] mise à votre disposition par le guide de survie Delafond
[2] Lancez le centre de contrôle Mandriva, onglet "partage de fichiers", "accéder à vos fichiers sous windows" parcourez-le réseau, sélectonez le partage parmi ceux disponibles
[3] qui lui même propose une alternative
[4] on utilisera easyurpmi ou le sélectionneur de miroir mandriva.
[5] Le logiciel de gravure K3B effectue la somme de contrôle md5, il ne reste plus qu’à la comparer avec le contenu du fichier. ATTENTION la petite coche verte signifie qu’il a fait le calcul de la somme md5, mais pas qu’elle est identique au contenu du fichier md5.asc
[6] Je sais que j’aurais pu trouver un exemple plus réaliste. Je vous laisse imaginer...
[7] ->http://www.clx.anet.fr
[8] La page des caractéristiques sur le site de Sangha France est disponible ici.
[9] La méthode est probablement valable pour Redhat et fedora. Pour Debian et ses dérivés, il faut remplacer "urpmi" par "apt-get"
Rechercher sur ce site :
| {Site réalisé avec le logiciel SPIP} | {www.beuselinck.com} | {Plan du site} |