KubuntuBlog

How should I know if it works? That's what beta testers are for. I only coded it. Linus Torvald

Aller au contenu | Aller au menu | Aller à la recherche

jeudi 11 janvier 2007

Planet 2 : Le retour

J'ai postulé et ai été accepté dans un nouveau Planet consacré aux logiciels libres en général et en langue Française.

Il s'agit de Planet-Libre avec son flux RSS

Si vous voulez vous inscrire, ca se passe ici

A noter que l'info m'est venue via la ml PUF qui du coup squatte un peu :)

mardi 9 janvier 2007

Du forward inconsidéré

MailboxComme tout le monde, vous devez recevoir des emails forwardés par un proche ou un collègue. On peux souvent en faisant glisser l'ascenseur parcourir tout l'historique des échanges précédents qui ont amené le mail jusqu'a votre boîte pourtant déjà surchargée. Si c'est une blague ou une chain-mail, vous n'y trouverez pas grand chose d'intéressant[1]. Mais dans un contexte professionnel, c'est parfois palpitant. Vous pouvez découvrir ainsi la chaîne hiérarchique, mettre à jour certaines inimitiés voir découvrir de parfaits aveux d'incompétence. Voici 3 exemples réels auxquels j'ai assisté dans ma société :

1. Les informations personnelles

Le contexte: une personne habituellement d'astreinte réponds pendant un week-end sur un problème qui ne le concerne pas directement. Le responsable client lui demande alors des infos sur la manière de gérer ses astreintes (du genre est-ce que c'est ton boulot, comment se passent les déclarations etc...) Réponse de l'astreint (en gros) :

Ce cas la, ce n'est pas mon boulot, je l'ai fait quand même mais ne l'ébruite pas.

S'en suit alors l'habituelle escalade hiérarchique des mails sur le thème Les astreintes sont mal gérées, regardez machin est obligé de faire un boulot qui n'est pas le sien. Comme tout ce qui monte doit un jour redescendre, nous voila tous arrosés de nouvelles recommandations sur les astreintes. Recommandations qui tout en bas de la page contiennent le mail original demandant explicitement à ne pas être diffusé !

En aparté, notez ce type d'escalade hiérarchique très courant. Devant un problème, je ne fais rien du tout. Mais j'envoi un mail à un maximum de gens incluant bien sur la hiérarchie pour relater le problème. Si un jour ça me retombe sur la gueule je pourrais toujours exhiber le mail dûment daté en disant : vous voyez j'en avais parlé, j'ai fait ce que j'ai pu !
Généralement ces mails remontent très vite la chaîne jusqu'a ce qu'un chef fasse une note qui prendra le chemin inverse. Au final, rien ne sera résolu, mais tout le monde sera couvert.

2. L'incompétence au service du client

HotlinePour ce deuxième exemple, une histoire de support dans laquelle j'étais directement impliqué.
Le contexte: j'assure le support niveau 3 pour un produit en production chez un client.
Un problème apparaît chez le-dit client qui contacte donc le support niveau 2[2]. Celui-ci déroule ses procédures habituelles. celle-ci ne résolvant rien, il en arrive à me contacter. Je ne suis donc en relation qu'avec le support N2 (plusieurs personnes en fait) et le client ne connaît que le N2 (et l'ingénieur d'affaire[3], cela aura son importance). Nous entrons dans une phase d'analyse détaillée du problème qui s'avère alors venir de chez nous. Problème très grave puisque nous ne comprenons pas comment le produit a pu jamais fonctionner en l'état. Bref de gros embêtements qu'il faut minimiser vis-à-vis du client.

Toutes ces discutions ont lieu par mail entre le N2, le N3 (moi) et tenant en copie l'ingénieur d'affaire. Une fois la solution trouvée j'en informe le niveau 2 afin qu'ils installent le patch chez le client.
Sans doute tout content que le problème soit résolu et au lieu de rédiger un beau mail commercial, l'ingénieur d'affaire reprends alors nos échanges et transmet le tout au le client en lui ajoutant un laconique "problème résolu" ! De ce fait il lui livre tous les éléments techniques, notre fonctionnement interne, les entrailles du produit et donne le bâton pour se faire battre. Que va dire le client en voyant que nous ne comprenons pas le problème ? Comment va t il payer de la maintenance après ça ? Quelle image de la société donne-t-il ?

3. Le remède pire que le mal

The IT CrowdPour finir, un exemple édifiant en provenance directe de ceux qui devraient être sensibilisés à ce genre de choses puisque c'est leur métier : le service informatique !

Une attaque de phishing centrée sur notre annuaire interne a lieu. Le service informatique, à la pointe de la sécurité nous préviens alors que nous risquons de mail frauduleux nous invitant à mettre à jour notre mot de passe. En fait ce n'est pas tout à fait ça, le correspondant local nous forwarde un mail du service régional qui transmet un mail du service central qui renvoi un mail du correspondant sécurité d'un site qui fait suivre un mail qui lui paraît étrange. En effet ce mail contient un faux lien pour mettre à jour son mot de passe. Vous avez suivit ? Le mail malicieux est remonté jusqu'au service informatique mais il est redescendu vers tous les utilisateurs s'assurant ainsi que tout le monde l'avait bien reçut ! Qui plus est, reçut via la voie officielle.
Et tout cela car chacun à forwardé le mail reçut sans vraiment se soucier de l'historique.

En conclusion, la prochaine fois que vous recevrez un tel mail, prenez le temps de lire jusqu'en bas. Et surtout réfléchissez avant de cliquer sur le bouton Faire suivre ... ;)

Notes

[1] sauf si vous êtes spammeur, une belle liste d'adresses valides s'offre alors à vous

[2] Le niveau 1 est assuré par le client lui-même à l'aide de la documentation fournie

[3] Un technico-commercial qui gère la relation client

vendredi 5 janvier 2007

Flasher le bios

Voila une oération risquée mais parfois nécessaire. Par exemple pour pouvoir upgrader le processeur.

Seulement les constructeurs e fournissent des méthode de flashage (un programme) que pour windows ou DOS. Serions nous donc obligés de payer une licence juste pour flasher le BIOS[1] ?

FreeDOS Non ! Gràce à FreeDOS un clone libre de MS-DOS. Voici donc en quelques lignes comment réaliser cela. Comme exemple, nous allons flasher une Carte Mère Asus P2L97 avec le dernier Bios stable[2]

Commencez par télécharger les fichiers necessaires qui seront donc differents pour chaque carte mère. Dans mon cas :

  • lx2i1009.awd : le bios
  • pflash.exe : le programme de flash

Puis téléchargez simplement la disquette de boot FreeDOS. Nous nous en contenterons puisque un environement DOS complet n'est pas necessaire dans ce cas. Vous trouverez cela à partir de cette page. Vous n'avez besoin que de :

  • fdboot.img

Inserez une disquette propre dans le lecteur et tapez :

$ dd if=fdboot.img of=/dev/fd0

Montez alors la disquette et copiez-y les fichiers necessaires au flashage. Puis je vous conseille de la démonter et de la remonter pour vérifier la copie des données avec md5sum :

$ md5sum /media/floppy/p2l97/lx2i1009.awd
5567c1e350a62aa7ba073336a1243480  /media/floppy/p2l97/lx2i1009.awd 
$ md5sum lx2i1009.awd
5567c1e350a62aa7ba073336a1243480  lx2i1009.awd

Enfin démontez la disquette et rebootez la machine à flasher sur celle-ci (il peux être necessaire de changer l'ordre des périphériques bootables dans le bios).
Choisissez Safe-Mode

Capture

Il ne reste plus qu'a suivre les instructions du fabriquant pour flasher.

Capture

Notes

[1] Je laisse de coté Wine que je n'oserai pas utiliser pour une opération aussi délicate

[2] C'est mon serveur, le nouveau Bios est le 1009

jeudi 4 janvier 2007

Minitel

Bientôt plus de détails ...

Minitel

lundi 1 janvier 2007

Drôle de début 2007

Your results:
You are Spider-Man
Spider-Man
80%
Hulk
55%
Supergirl
45%
Iron Man
45%
Green Lantern
45%
Superman
45%
Robin
42%
The Flash
40%
Catwoman
30%
Wonder Woman
25%
Batman
15%
You are intelligent, witty,
a bit geeky and have great
power and responsibility.
Click here to take the Superhero Personality Quiz

Bonne année

Et voila on commence l'année avec une bonne charge.

Mais je ne suis pas le seul

Edit : Et en plus il prétend ne pas avoir mal aux cheveux ;)

J'ai anonymé la photo pour protéger sa dignitée

vendredi 22 décembre 2006

Geekscotte de Noël

Via Geekscottes. Je vous invite d'ailleurs à aller lire le reste, c'est très savoureux.

Image de Johann "nojhan" Dréo sous Licence CC-BY-SA[1]

Notes

[1] comme les billets de mon blog d'ailleurs

Liens, voila du boudin !

Du non-geek :

Du geek :

  • Why Python ? Un article plutôt ancien (2000) de Eric Raymond sur pourquoi il a choisit Python plutôt que Perl. Et il a raison ;) Tant qu'on y est vouc connaissez la Python Reference Card ?
  • Hello World décliné dans près de 193 languages ! Très amusant et interressant pour avoir une petite idée de la syntaxe générale d'un language.

SpeedRun

Pff faire du SpeedRun avec Doom ou Quake c'est dépassé, autant utiliser un VRAI jeu ;)


dimanche 17 décembre 2006

Mumble : un serveur de chat vocal libre

Introduction

Icone Un serveur de chat vous permet de discuter à plusieurs au travers d'un réseau. C'est par exemple beaucoup utilisé dans la communauté des joueurs en ligne. Cela peut aussi vous permettre de mettre en place des conférences à peu de frais. En général c'est mis en place sous forme d'un réseau en étoile : Un serveur centralisé et N client qui se connectent. Charge au serveur de redistribuer l'audio vers les clients concernés.

Si vous avez déjà cherché un logiciel de ce type, vous connaissez surement teamspeak. Il fonctionne correctement et est multiplateforme. Mais c'est un logiciel propriétaire et la version pour Linux est un peu laissée à l'abandon.

Je vous invite donc à découvrir Mumble qui propose à peu prêt les même fonctions mais qui est libre et semble avoir un développement actif. De plus il se base sur un codec libre : Speex.

Installation

Si vous êtes sous Edgy, presque aucun problème[1], les auteurs proposent des paquets tous prêts. Je vous invite quand même à lire la suite pour la configuration.

Si vous êtes sous Dapper, ça se complique. En effet, la dernière version en date (Beta 0.9.4) n'est pas compatible avec la version de libspeex disponible.

Qu'a cela ne tienne, je vous ai fait des paquets de backport pour Mumble. Pour ne pas casser les autres logiciels qui dépendent de libspeex, j'ai statiquement lié la dernière version[2] avec Mumble. J'en ai profité pour ajouter quelques petits bonus qui vont vous simplifier la vie.

Vous pouvez donc les télécharger mumble et mumble-server dans mon dépot pour dapper.

Pour les installer :

sudo dpkg -i mumble_0.9.4-0ubuntu1_i386.deb
sudo dpkg -i mumble-server_0.9.4-0ubuntu1_i386.deb

Vous aurez surement d'autres paquets à installer, je pense par exemple à libqt4-core, libqt4-gui, libqt4-sql et libxevie1, mais vous remarquerez qu'il ne dépendent pas de libspeex qui est "embarqué"

Configuration

Murmur : le serveur

La configuration du serveur se fait à l'aide du fichier /opt/mumble-server/murmur.ini[3]. A priori, vous n'aurez rien à y changer. Par contre le répertoire /opt/mumble-server/ doit appartenir à l'utilisateur qui lancera murmur. Vous changerez le propriétaire de cette manière :

sudo chown -R jjl:jjl /opt/mumble-server/

Puis démarrez le :

murmur -ini /opt/mumble-server/murmur.ini

Ensuite il vous faut créer des utilisateurs. Pour cela un script CGI vous est fournit (murmur.pl). Notez que vous devrez sans doute installer d'autres paquets perl pour l'utiliser. A titre d'exemple j'ai du ajouter libnet-dns-perl, libdbix-abstract-perl et libdbd-sqlite3-perl.

Si vous ne disposez pas d'un serveur web, j'ai ajouté ce qu'il fallait[4] :

cd /opt/mumble-server/
./web.py

Un petit serveur web vous attend alors sur le port 31284 : http://localhost:31284/ il ne sert qu'a l'accès au script CGI. Renseignez alors les champs et vous allez recevoir un email d'activation de votre compte.[5]

Capture

Sinon, plus bourrin[6], vous pouvez aussi utiliser SQLite Browser pour ajouter les utilisateurs dans la table Players[7]

Capture

Pour ceux qui sont sous Edgy, vous pouvez disposer des mêmes outils en téléchargant le paquet mumble-server et en en extrayant les fichiers à l'aide de :

dpkg-deb -X mumble-server_0.9.4-0ubuntu1_i386.deb .

Par contre, à cause de ce bug vous devez être dans /opt/mumble-server/ avant de lancer murmur !

Mumble : le client

Lancez simplement mumble en ligne de commande et vous voyez apparaître sa jolie interface graphique. Pour vous connecter au serveur, rien de plus simple : Menu Server / Connect et entrez vos paramètres :

Capture

Vous pouvez alors créer des Channels, gérer les droits etc... Il ne vous reste qu'a trouver des copains pour discuter avec eux ;)

Capture

Précisions sur les paquets

Quelques petites notes sur la construction des paquets

  • Oui, ils n'ont pas été construits dans les règles de l'art, des modifictions existent hors du repertoire debian, les chemins d'install ne sont pas très beaux...
  • Vous pouvez trouver le patch à appliquer aux sources de Mumble 0.9.4 ici. Pour l'appliquer : patch -p0 < mumble-0.9.4-dapper.patch
  • Si vous voulez recompiler, speex doit être compilé en statique uniquement dans le répertoire speex-1.2beta1 au même niveau que mumble-0.9.4
  • J'en ai profité pour ajouter la correction de ce bug avec ce patch

PS: et je suis en train de vous préparer une traduction.

Notes

[1] sur le forum ca n'a pas l'air aussi évident

[2] Speex 1.2beta1

[3] Oui, je sais le chemin n'est pas très orthodoxe

[4] commandes à executer avec le même utilisateur que ci-dessus

[5] Notez bien que vos mails doivent pouvoir être délivrés à partir de votre machine. Allez voir la première partie de ce billet pour plus de détails

[6] et votre machine doit disposer d'un serveur XWindow

[7] le mot de passe est stocké en clair

lundi 11 décembre 2006

Peut-être la solution ?

Introduction: nous sommes en attente d'un permis de construire qui pose visiblement problème à certains

Remarque de E. 5 ans :

Papa, tu pourrais mettre un permis de construire sur ta liste au Père Noël !

Si cela pouvait être aussi simple ... :)

dimanche 10 décembre 2006

Explication rationnelle

Lu sur Entendu à Paris

Devant l'école élémentaire de la rue Madame (75006)
Petite file : Pourquoi je peux pas envoyer ma lettre au Père Noël par texto ?
Mère : Euh... ça capte mal au pôle Nord.

lundi 4 décembre 2006

[KDE] Un menu pour le traitement d'images

Vous voulez souvent faire des traitements sur vos images (réduction, compression, retournement, conversion) ? L'interface des KIPI plugins dans Gwenview vous rebute[1] ? La ligne de commande et les 1500 options de ImageMagick vous font peur ? Alors, voici peut-être LA solution que vous attendiez !

J'ai nommé Kim (KDE Image Menu)

Kim est un service menu pour Konqueror. C'est à dire un sous-menu additionnel qui viendra s'insérer sous Action dans le menu contextuel. Vous pourrez ainsi exécuter de multiples commandes ImageMagick d'un simple click de souris.

Ses fonctions en bref :

  • Re-compression (70%, 80%, 90% ou autre)
  • Redimensionnement (300x225, 600x450, 800x600, 1024x768, 1200x900 ou autre)
  • Paramètres pré-définis pour le web ou le mail
  • Conversion (JPG, PNG, GIF, TIFF ou autre)
  • Rotations
  • Renommage
  • Et plusieurs autres effets amusants (flash slideshow, gif animé, bordure ...)

Pour l'installer :

  • installez ImageMagick (disponible dans les dépots)
  • téléchargez Kim sur kde-apps
  • décompressez le
  • exécutez le script install.sh en tant que root (ie: avec sudo)[2]
  • relancez Konqueror

et voila !

Edit: Comme signalé dans les commentaires, vous pouvez simplement l'installer à partir des dépôts. Il est nommé konq-kim.

Pour l'utiliser, dans Konqueror :

  • click droit sur une/des images
  • Actions
  • Kim - ...

Capture écran

Je vous invite aussi à aller voir la démo pour vous faire une idée plus précise.

Pour les Gnomistes, allez voir NIS mais qui semble beaucoup plus limité. Il en existe sans doute d'autres.

Notes

[1] Mais pourquoi la destination est toujours la racine !

[2] il va s'installer dans /usr/share/apps/konqueror/servicemenus/, /usr/bin/ et /usr/share/apps/kim

Bacula 3 : Interface graphique, Trucs et astuces

Voici mon dernier article sur Bacula. Pour finir, voyons les interfaces graphiques ainsi que quelques astuces de configuration supplémentaires.

Interfaces graphiques

Plusieurs interfaces graphiques sont disponibles pour contrôler ou suivre Bacula :

  • bimagemgr : qui permet de gérer les cdroms utilisés par Bacula. Comme j'utilise des bandes, je n'ai pas cherché plus loin.
  • wx-console : Une interface graphique à bacula Console, c'est la plus avancée
  • gnome-console : une autre, moins avancée
  • tray-monitor : un démon associé à une icône dans la barre des tâches pour suivre le fonctionnement de Bacula.
  • bacula-web : Une interface web en php pour suivre l'évolution des sauvegardes. C'est un programme read-only et qui ne fonctionne pas avec une base SQLite[1] !

L'utilisation d'une interface graphique était seulement une option de mes prés-requis. Mais je doit dire que la possibilité d'avoir une icone dans la barre des tâches pour suivre mes sauvegardes m'a emballé !
Malheuresement, je n'ai pas pu tester cette fonction. En effet, les paquets Dapper de Bacula n'integrent que les consoles Gnome et WxWidget. Le tray-monitor n'est pas présent.
Voila peut-être une raison de passer à Edgy sur le poste bureautique. Reste à vérifier la compatibilité des versions 1.36.3 de Dapper et 1.38.11 de Edgy !

WxConsole

Nous allons quand même installer et configurer cette interface graphique[2] :

Penfret$ sudo apt-get install bacula-wxconsole

Il nous faut maintenant configurer l'interface graphique pour lui indiquer sur quel Director se connecter :

Penfret$ sudo vi /etc/bacula/wx-console.conf

Modifiez le de cette manière :

Director {
Name = FortCigogne-dir # correspond au Name de bacula-dir.conf
DIRport = 9101
address = FortCigogne
Password = ""
}

Et voila, pour lancer votre interface graphique :

Penfret$ sudo bacula-wxconsole -c /etc/bacula/wx-console.conf

wx-console

Deux onglets s'offrent à vous :

  • Console qui est une interface directe à la console texte
  • Restore qui vous propose une interface à la souris pour les opérations de restauration

A noter que la dernière version semble un peu plus évoluée wx-console

Mais la version que j'ai testé semble très mal en point :

  • les options de la page de man ne sont pas reconnues
  • je n'ai pas réussit à faire fonctionner l'onglet restore
  • une fois sur deux, je n'ai aucune possibilité d'action

Bref, la version Dapper est assez décevante :(

Bacula-web

Cette interface semble très interresante, mais ne fonctionne pas avec une base SQLite.

Si vous utilisez une autre base, je vous renvoi vers une doc d'installation pour Debian ou vers le site officiel ou vous trouverez des screenshots qui font envie. :)

BaculaWeb

Trucs et astuces

logrotate

Plus qu'une astuce, cette partie est essentielle

Le fichier de log de bacula grossit ad vitam aeternam nous devons donc aussi configurer logrotate pour qu'il s'occupe de ce fichier. Normalement bacula est fournit avec un fichier d'exemple, mais dans dapper il semble ne pas exister. Vous pouvez trouver sur le CVS de bacula le fichier qui devrait être livré.

Pour le créer vous même, suivez cette procedure :

# edition du fichier en tant que root
$ sudo vi /etc/logrotate.d/bacula

Puis ajoutez y ces lignes :

/var/lib/bacula/log {
monthly
rotate 5
notifempty
missingok
}

Effacer la base de donnée de test

Normalement il existe un script drop_bacula_tables qui devrait faire le travail. mais chez moi il n'est pas installé. Donc voici la procedure pour remettre la base sqlite à zero :

$ cd /var/lib/bacula/
$ sudo mv bacula.db bacula.db.test
$ sudo /usr/share/bacula-director/make_sqlite_tables
$ sudo chown bacula:bacula bacula.db
$ ls -la bacula.db*
-rw-r- 1 bacula bacula  41984 2006-11-27 15:31 bacula.db
-rw-r- 1 bacula bacula 328704 2006-11-27 14:46 bacula.db.test

logwatch

logwatch est un utilitaire qui vous permet de suivre vos fichiers de log sans trop vous fatiguer. En effet une fois configuré, vous recevez tous les jours par mail un résumé des logs du jour. J'ai déjà détaillé l'installation et la configuration de logwatch dans un précedent billet.

De même que pour logrotate des fichiers tout prets devraient être fournit, mais je ne les ai pas trouvé. Vous pouvez aller les chercher sur le CVS de bacula téléchargez les fichiers et copiez les (en tant que root) dans le répertoire nécessaire (qui devra éventuellement être créé) :

  • bacula dans /etc/logwatch/scripts/services/ (pensez à le rendre executable par tous: chmod a+x)
  • services.bacula.conf dans /etc/logwatch/conf/services/ avec pour nom bacula.conf
  • logfile.bacula.conf.in dans /usr/share/logwatch/default.conf/logfiles/ avec pour nom bacula.conf[3].

Enfin, modifiez ce dernier fichier en remplaçant @working_dir@/log par le fichier de log de bacula, soit /var/log/bacula/log

Pour tester votre nouvel ajout, utilisez la commande suivante[4] :

sudo logwatch --print --detail high --service bacula --range today

A faire

Il vous reste un peu plus de configuration à faire. Je pense notament à des choses comme :

  • mettre des mots de passes pour sécuriser vos démons
  • changer les démons qu'ils n'ecoutent que sur le reseau local
  • ajouter des fileset ou des file dans le fileset pour sauvegarder plus que /etc
  • étudier la possibilité de faire des sauvegardes complètes
  • ...

Pour aller plus loin

Voici quelques liens qui vous permettront d'en voir un peu plus que cette petite introduction.

Pour Bacula :

Les autres logiciels de sauvegarde :

Voila, c'en est fini de ces articles sur Bacula. J'espère qu'ils vous seront utiles et surtout qu'ils vont vous inciter à sauvegarder vos données !

Notes

[1] J'ai bien l'intention d'aller voir cela de plus prêt

[2] Attention les noms de paquets ont changés en Edgy

[3] normalement on devrait le mettre dans /etc/logwatch/conf/logfiles mais cela semble ne pas fonctionner

[4] Les droits root sont necessaires pour lire le fichier de log

dimanche 3 décembre 2006

Bacula 2 : Sauvegarder, restaurer et ajouter un client

Voici le deuxième article de ma série sur la sauvegarde d'un réseau local. Nous allons étudier le processus de sauvegarde/restauration (sur le serveur) puis configurer la sauvegarde d'une nouvelle machine.

Notez que l'affichage des commandes a été allégé dans un but de simplification de l'article. Si vous les executez vous même, beaucoup plus d'informations apparaîtront. J'ai essayé de ne garder que le plus pertinent. Les ... signalent à peu pret les endroits ou j'ai coupé.
Rappelons aussi que le serveur de sauvegarde est nommé FortCigogne et le nouveau client Penfret. Les commandes sont préfixées par le nom de machine sur laquelle elles doivent être executées.

Sauvegarder

Voyons comment lancer une sauvegarde à la main.

Creer les Volumes de stockage

Les exemples sont pour des bandes, mais une procedure similaire est à faire dans les autres cas (Fichiers, dvd...).

Il faut affecter un Label aux différents média (les nommer) et les ajouter au Pool de sauvegarde (nous utilisons celui par défaut). Cette opération permet à bacula de connaître chaque média. Pensez aussi à étiquetter (physiquement) vos médias avec le label affecté.

Si la bande n'est pas vierge ou a déjà servi pour des tests, commencez par la nettoyer.

## arretons le Storage daemon qui a peut-être vérouillé le lecteur
$ sudo invoke-rc.d bacula-sd stop
## on rembobine
$ sudo mt -f /dev/st0 rewind
## on "efface"
$ sudo mt -f /dev/st0 weof
## on redemarre le Storage daemon
$ sudo invoke-rc.d bacula-sd start

Note: Si elle est deja utilisée dans un Pool de bacula utilisez plutôt purge et relabel

Puis labelisez la à l'aide de la Console (Plus d'infos dans la doc rapide ou de référence) :

$ sudo bconsole
*label
Using default Catalog name=MyCatalog DB=bacula
Automatically selected Storage: DDS-3
Enter new Volume name: Backup01
Automatically selected Pool: Default
...
3001 Device /dev/st0 is mounted with Volume "Backup01"
*list media
Pool: Default
+---------+------------+-----------+-----------+------------+ ...
| MediaId | VolumeName | VolStatus | MediaType |LastWritten |
+---------+------------+-----------+-----------+------------+
| 1       | Backup01   | Append    | DDS-3     | 0          |
+---------+------------+-----------+-----------+------------+
*quit

Démarrer une Sauvegarde

Pour lancer notre sauvegarde à la main, nous allons utiliser la Console :

FortCigogne$ sudo bconsole
*show filesets
FileSet: name=Config
      I /etc
FileSet: name=Catalog
      I /var/lib/bacula/bacula.sql
...
*status dir
FortCigogne-dir Version: 1.36.3 (22 April 2005) i486-pc-linux-gnu debian testing/unstable
Scheduled Jobs:
Level          Type     Pri  Scheduled          Name               Volume
===================================================================================
Incremental    Backup    10  28-Nov-06 01:05    FortCigogne_Config Backup01
Full           Backup    11  28-Nov-06 01:10    BackupCatalog      Backup01
...
*run
A job name must be specified.
The defined Job resources are:
     1: FortCigogne_Config
     2: BackupCatalog
     3: RestoreFiles
Select Job resource (1-3): 1
Run Backup job
JobName:  FortCigogne_config
...
OK to run? (yes/mod/no): yes
Job started. JobId=1
*status dir
...
Running Jobs:
 JobId Level   Name                       Status
======================================================================
     1 Full    FortCigogne_Config.2006-11-27_21.21.51 is running
...

Quand il est terminé, vous pouvez voir le rapport en tapant messages. Si vous avez configuré correctement l'envoi de mail, vous devriez aussi en recevoir un.

Restaurer des fichiers

Toujours à partir de la Console :

*restore all
Using default Catalog name=MyCatalog DB=bacula
To select the JobIds, you have the following choices:
    1: List last 20 Jobs run
    2: List Jobs where a given File is saved
    3: Enter list of comma separated JobIds to select
    4: Enter SQL list command
    5: Select the most recent backup for a client
    6: Select backup for a client before a specified time
    7: Enter a list of files to restore
    8: Enter a list of files to restore before a specified time
    9: Cancel
Select item:  (1-9): 5
+-------+----------+---------------------+------------+ ...
| JobId | JobFiles | StartTime           | VolumeName |
+-------+----------+---------------------+------------+
| 1     | 1157     | 2006-11-27 21:21:53 | Backup01   |
+-------+----------+---------------------+------------+
You have selected the following JobId: 1
...
cwd is: /
#### A ce moment vous pouvez selectionner quels fichiers vous allez restaurer
#### Pour la manière de faire, voyez toujours dans la documentation
$ done
The job will require the following Volumes:
   Backup01
1157 files selected to be restored.
Run Restore job
JobName:    RestoreFiles
Where:      /tmp/bacula-restores
...
OK to run? (yes/mod/no): yes
Job started. JobId=2
*quit

Vous notez que la restauration se fait dans un repertoire temporaire. Cela se change dans bacula-dir.conf ou via la Console.

Vous pouvez tester la restauration :

FortCigogne$ sudo diff /tmp/bacula-restores/etc/ /etc/

Ajouter un client

Nous allons maintenant ajouter la sauvegarde d'une autre machine : Penfret.

Installer et Configurer le client

Sur les clients, seul le service de fichier est necessaire :

Penfret$ sudo apt-get install bacula-fd
Penfret$ sudo vi /etc/bacula/bacula-fd.conf

Modifiez le de cette manière :

# Authorise le serveur a se connecter
Director {
Name = FortCigogne-dir # Correspond au Name de Director dans bacula-dir.conf sur le serveur
Password = ""
}

Verifiez la syntaxe de votre fichier et redémarrez le File daemon :

Penfret$ sudo bacula-fd -t -c /etc/bacula/bacula-fd.conf
Penfret$ sudo invoke-rc.d bacula-fd restart

Configurer le serveur

Nous allons donc modifier la configuration du serveur pour y ajouter un nouveau Job et un nouveau Client. Editez le fichier bacula-dir.conf
Les modifications sont assez similaires à celles que nous avons vu pour la sauvegarde du serveur FortCigogne.



Job {
Name = "Penfret_Config"
JobDefs = "DefaultJob"
FileSet = "Config" # Ici le même que pour FortCigogne
Client = Penfret-fd # Voir Client ci-dessous
Write Bootstrap = "/var/lib/bacula/Penfret.bsr"
}

Client {
Name = Penfret-fd # voir Job ci-dessus
Address = Penfret # La nouvelle machine à sauver
FDPort = 9102
Catalog = MyCatalog
Password = "" # password for FileDaemon
File Retention = 30 days # 30 days
Job Retention = 6 months # six months
AutoPrune = yes # Prune expired Jobs/Files
}

Redémarrez le Director daemon pour prendre en compte vos modifications.

FortCigogne$ sudo bacula-dir -t -c /etc/bacula/bacula-dir.conf
FortCigogne$ sudo invoke-rc.d bacula-director restart

Pour vérifier que le nouveau client est bien connu, utilisez la console :

FortCigogne$ sudo bconsole
*status dir
Scheduled Jobs:
Level          Type     Pri  Scheduled          Name               Volume
===================================================================================
Incremental    Backup    10  28-Nov-06 01:05    FortCigogne_Config Backup01
Incremental    Backup    10  28-Nov-06 01:05    Penfret_Config     Backup01
Full           Backup    11  28-Nov-06 01:10    BackupCatalog      Backup01
...

Vous pouvez alors le sauvegarder de la même manière que vue pour le serveur.

A noter, nous n'avons pas modifié la programation automatique des sauvegardes. Par défaut, elles sont toutes les nuits à partir de 1h05 :

  • Complètes (Full) le 1er dimanche de chaque mois
  • Différentielles (Difeferential) les autres dimanches
  • Incrémentales (Incremental) les autres jours

Pour plus d'explications, allez lire ... la documentation ;)

Dans le dernier article nous découvrirons les possibilités d'utiliser une interface graphique, comment paufiner un peu notre configuration et enfin tous les liens pour aller plus loin.

< 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 >