Aller au contenu

Creation d'un serveur d'image de partitions System


Messages recommandés

Bonjour @ tous,

J'aimerais faire appel aux INpactiens car j'ai besoin de réaliser un projet. Le projet en question est de mettre en place un serveur d'Image de partitions d'O.S (Linux, Windows...), un peut comme Ghost, mais qui soit capable (si possible?) de permettre la création d'image disque depuis des machines distantes, ou depuis des machines d'un même réseau local.

Je m'explique, actuellement, la machine dédiée à celà tourne sur une Debian ETCH, qui acceuil un LAMP et un Samba (de manière à pouvoir centraliser toutes les images de disque sur cette même machine).

Maintenant, ce que j'aimerais savoir, c'est ... est-il possible, par exemple, de faire une image de disque d'une partition Windows, donc depuis la machine équipée d'un XP/2000/Vista avec un LiveCD comme Partimage ou Clonezilla (de manière à éviter à ce que la partition système soit montée), de spécifier l'IP du serveur d'Images et de stockée l'image de disque sur celui-ci ? Est-ce que c'est possible, si oui, est-ce que c'est la solution la plus rapide (niveau temps d'accès..etc) ?

Je ne suis pas certain d'avoir été très clair ;) ... mais si vous pouviez m'éclairer la dessus, sa m'aiderait beaucoup! ;)

Merci.

Lien vers le commentaire
Partager sur d’autres sites

ben, pour faire l'image, tu te fais un petit programme qui fait

fi=open(/dev/ta_partition);

fo=open(/media/usbdisk/toto.img);

while (x = read(fd, buf, 1048576))

write(fo, buf, x);

close(fo);

close(fi);

et la, t'as cree ton image dans toto.img

mais c'est idiot, un simple cat /dev/hda > /media/usbdisk/img.toto aurait suffit, l'interet du bout de code, en rajoutant un serveur avec un pseudo-protocole (add, drop, create, delete, ... enfin, comme tu le sens): tu vas pouvoir envoyer ton image directement par le reseau (send, recv, tu fais un buffer tournant et dans l'ideal, tu verifie a chaque fois que la chaine recue par le serveur est correcte, en gerrant le renvoie en cas d'echec, ca doit pouvoir se faire en une centaine de ligne sur le client, et tout autant sur le serveur)

apres, tu refais un bout de code pour re-ecrire l'image sauvegardee sur un dur, et c'est regle

c'est la solution de simplicite (gratuit, simple, relativement sure (suivant ton codage et si tu t'amuse en encrypter ce que tu envois ;)), ...)

apres, tu peux t'amuser a rajouter une interface sur le client en gtk, une identification sur le serveur, avec espace dedie, .... plein de jolies choses, kikoo-lol, mais qui auront la classe quand tu montrera ta becanne a tes copines (ou tes potes en restant pragmatique)

Lien vers le commentaire
Partager sur d’autres sites

Vraiment bien ce petit Linbox Rescue Server ... dommage que l'on est accès qu'à une utilisation restreinte du logiciel :pleure: (faut leur envoyer l'adresse ethernet de la carte reseau de la machine qui acceuille LRS et ils nous renvoie une clé de validation valable pour la restauration de 2 postes seulement ... dommage).

C'est exactement le genre d'outil que je recherche ... dans la section Screencasts de leurs site, en regardant la video Flash pour la sauvegarde d'une machine cliente dispo ici : http://www.linbox.com/ucome.rvt//any/fr/Pr...sts/backup.html on peut voir dans le shell à la création de l'image que LRS utilise NFS ... donc pour en revenir a ma question est-ce qu'il serait pas plus simple de refaire le meme genre d'outils soit meme en configurant un NFS à ma sauce avec d'autres outils derrière ?

mwe... ma solution etait plus fun...

sinon, c'est vrai que ca a l'air pas mal !

Et pour ta solution Mephisto, ça marche très certainement, je te crois sur parole, mais j'suis pas encore assez calé pour codé des scripts bash qui soient capables de ça :transpi: mais merci quand même :yes:

Lien vers le commentaire
Partager sur d’autres sites

Effectivement, j'avais zappé la partie windows (vu que je n'en utilise plus).

Tu as la liste de ce qui est supporté par les différentes version ici :

http://www.linbox.com/ucome.rvt?file=/any/...omparaison.tmpl

Donc oui pour fat/ntfs, c'est problématique.

La philosophie de linbox, c'est que si tu as eu des sous pour payer un Windows, tu peux bien payer un soft pour le backuper. De même si tu utilise du propriétaire, alors tu n'aura pas de problèmes pour utiliser un soft de backup non libre.

Et je suis assez d'accord avec ça.

Mais ils pensent aussi (comme Roberto Di Cosmo) qu'un logiciel doit être payé une seule fois et être gratuit. C'est pour ça qu'il y a un compteur. Quand linbox aura perçu en licences l'équivalent qu'elle a investi dans le soft, les parties non libres seront libérées. Et je suis assez d'accord avec ça aussi.

http://www.linbox.com/ucome.rvt?file=/any/...oduits/LRS/llrs

http://www.linbox.com/ucome.rvt/any/en/Pro...rs/compteur.txt

Plus que 300 000 ¤ :transpi:

Lien vers le commentaire
Partager sur d’autres sites

(mon truc, je le pensais plus en C, voire perl/php/..., et c'est pas bien complique)

sinon, l'article que t'as envoye (partimage) est interessant

le seul probleme serait que tu devra creer un liveCD avec tes packets et tes fichiers de conf tout prets, mais c'est pas bien complique (ces derniers temps, on a pas mal de simple-cdd sous debian sur ce forum, et ca a l'air pas mal), et tant qu'a faire, creer un cd qui va tout te faire directement (pas de X, et un script shell qui fera tout dans ton rc.local)

Lien vers le commentaire
Partager sur d’autres sites

Super sujet, car je connaissez pas les outils disponibles sous linux pour faire ce genre de manipulations , à part à la barbare, en utilisant les commandes dd et un montage nfs à partir d'un live CD ...

mais en y repensant c'est pas si différent de part-image , et un petit script comprenant les infos serveurs , qui monte un partage nfs venant du serveur sur le liveCD fait exactement la même chose non ??

A part peut-être que l'on a pas forcément une image coupée en plusieurs fichiers.

donc finalement, la chose sympathique, c'est d'avoir une interface graphique ...

Lien vers le commentaire
Partager sur d’autres sites

Re bonjour tout le monde,

Bon alors, après avoir réfléchi un peut plus à la question suite à vos réponses d'hier, je me suis dit qu'il serait préférable, pour ce que je souhaite faire, de m'orienter vers une solution en boot PXE.

En gros, il faut que je trouve le moyen de faire booter une machine distante en PXE, qui charge un kernel linux très light, et charger automatiquement quelques petits scripts bash fait maison pour éxécuter une commande DD pour la création/restauration de l'image de disque. Je pense que ça peut se faire, il faut juste quelques infos sur la mise en place du PXE, de manière à n'avoir aucune interventions humaine à faire sur la machine.

Vous en pensez quoi ?

Merci d'avance. ;)

MAJ : j'ai trouver une doc format PDF qui se rapproche assez avec ce que je souhaite faire >> PXE.pdf

Lien vers le commentaire
Partager sur d’autres sites

Bonne idée, je vois plusieurs solution :

- le serveur a un repertoire partager en NFS ou autre dans lequel vons venir se poser les images disque. La machine cliente boot en PXE (comme sa tu a presque pas d'intervention a faire) créé sont image et la copie sur le dossier partager du server, en faisant un fichier de log si il y a un souci.

- Une autre solution : Le client boot en PXE, partage sont disque et le server créé l'image lui meme a partir du partage.

Je me pose des questions : l'image doit etre une copie de la partition phisique par exemple /dev/sda1 non ? parce qu'une sauvegarde des donnéee ne permettrais pas la restauration en cas de probleme sur la partition (block deffectueux ou autre) ? Dans ce cas je ne sais pas si il est possible de partagé un fichier spéciale et d'en faire la copie a distance pour la seconde solution que j'ai proposé ?

Le probleme aussi c'est que l'image n'aura pas la taille des data mais de la partition, ceci dis, un tar.gz sur l'image devrais etre efficace a condition d'avoir le temps si la partition est grosse ...

Apres une sauvegarde des données seulement obligera un formatage de la partition a la main en cas de souci avant la restauration des données

Lien vers le commentaire
Partager sur d’autres sites

Bon alors, après avoir réfléchi un peut plus à la question suite à vos réponses d'hier, je me suis dit qu'il serait préférable, pour ce que je souhaite faire, de m'orienter vers une solution en boot PXE.

En gros, il faut que je trouve le moyen de faire booter une machine distante en PXE, qui charge un kernel linux très light, et charger automatiquement quelques petits scripts bash fait maison pour éxécuter une commande DD pour la création/restauration de l'image de disque. Je pense que ça peut se faire, il faut juste quelques infos sur la mise en place du PXE, de manière à n'avoir aucune interventions humaine à faire sur la machine.

Vous en pensez quoi ?

Merci d'avance. :mdr:

Bah c'est une très bonne idée. C'est dur de trouver mieux je pense. C'est bien pratique car il n'y a rien besoin d'installer quoi que ce soit sur les clients. Il suffit de rebooter.

Pour info c'est la solution utilisée par le LRS, par contre ce n'est pas un dd par la suite. Je ne me souvient plus exactement, mais c'est une copie block par block compressé à la volée (un truc de la mort qui tue).

Dommage que tu aie besion de backuper des Windows, parce que pour des nux, ça aurait été la solution idéale pour toi j'ai l'impression. (tant que ce n'est pas totalement libéré quoi).

Enfin bon courage pour ton truc, c'est loin d'être trivial j'en ai peur.

Lien vers le commentaire
Partager sur d’autres sites

Bon alors, après avoir réfléchi un peut plus à la question suite à vos réponses d'hier, je me suis dit qu'il serait préférable, pour ce que je souhaite faire, de m'orienter vers une solution en boot PXE.

En gros, il faut que je trouve le moyen de faire booter une machine distante en PXE, qui charge un kernel linux très light, et charger automatiquement quelques petits scripts bash fait maison pour éxécuter une commande DD pour la création/restauration de l'image de disque. Je pense que ça peut se faire, il faut juste quelques infos sur la mise en place du PXE, de manière à n'avoir aucune interventions humaine à faire sur la machine.

Vous en pensez quoi ?

Merci d'avance. :yes:

Bah c'est une très bonne idée. C'est dur de trouver mieux je pense. C'est bien pratique car il n'y a rien besoin d'installer quoi que ce soit sur les clients. Il suffit de rebooter.

Pour info c'est la solution utilisée par le LRS, par contre ce n'est pas un dd par la suite. Je ne me souvient plus exactement, mais c'est une copie block par block compressé à la volée (un truc de la mort qui tue).

Dommage que tu aie besion de backuper des Windows, parce que pour des nux, ça aurait été la solution idéale pour toi j'ai l'impression. (tant que ce n'est pas totalement libéré quoi).

Enfin bon courage pour ton truc, c'est loin d'être trivial j'en ai peur.

Ok, bah écoute, il me reste plus qu'à trouver de la doc pour charger un kernel linux light en boot PXE et les quelques outils qui vont bien pour ça .. mais en googlelisant le truc je devrais trouver mon bonheur je pense... sinon si vous avez déjà quelques petites choses en tête, je suis preneur ... en attendant, je cherche :transpi:

Merci, @+

Lien vers le commentaire
Partager sur d’autres sites

ben, pour faire l'image, tu te fais un petit programme qui fait

fi=open(/dev/ta_partition);

fo=open(/media/usbdisk/toto.img);

while (x = read(fd, buf, 1048576))

write(fo, buf, x);

close(fo);

close(fi);

Tu recodes un "dd" quoi :D (en sûrement moins optimisé)

Sinon pour l'aspect réseau y'a toujours rsync ;)

Lien vers le commentaire
Partager sur d’autres sites

rsync ne préserve pas les ACLs et aura du mal avec une partition NTFS.

Sinon, une autre solution est dd/gzip/ssh.

Pour le backup:

dd if=/dev/hda1 bs=16k conv=sync,noerror | gzip -c | ssh -c blowfish user@host "cd dir && dd of=hda1.gz bs=16k"

Pour le restore:

dd if=hda1.gz bs=16k| ssh -c blowfish root@host "gunzip -c | dd of=/dev/hda1 bs=16k"

Le block size (option bs de la commande dd) est à tuner, je ne connais pas la valeur optimale.

Je n'ai pas testé, mais avec un peu d'adaptation ça devrait fonctionner.

Pour le ntfs, il y a ntfsclone:

http://man.linux-ntfs.org/ntfsclone.8.html

Lien vers le commentaire
Partager sur d’autres sites

Ok, merci djuke, je vais étudier un peut le truc, tester tout ça et voir si ça me convient ! :reflechis:

:byebye:

MAJ : A ce propos, est-ce qu'il serait possible de combiner (si je trouve ^^) un petit kernel linux de base (déja tout fait de préférence :transpi:) capable de booter en PXE et de charger ensuite la solution proposée par djuke ?

MAJ2 : Alternative pour la restauration des image disque, utilisation de PXE, Partimage, TFTP + inet, NFS et DHCP ??

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...