Créer un SCRIPT de SAUVEGARDE (Ubuntu)
Dernière réponse : dans Le monde de Linux
Bonjour a tous !
Dans le cadre d'un PTI en informatique, je voudrais créer un script sous ubuntu qui effectuerait mes sauvegardes situées sur des serveurs : - 1 Sous WINDOWS 2003
- 1 Sous Ubuntu Server
je doit sauvegarder un dossier (sur Windows 2003), 1 dossier (sur Ubuntu Server), et une base de donnée MySQL situées sur mon serveur Windows 2003.
Je précise que mon "Serveur de sauvegarde" est une machine ne servant seulement qu'a ces sauvegarde (et qui est sous Ubuntu..)
Merci d'avance pour vos réponses !
Mc.Fly
Dans le cadre d'un PTI en informatique, je voudrais créer un script sous ubuntu qui effectuerait mes sauvegardes situées sur des serveurs : - 1 Sous WINDOWS 2003
- 1 Sous Ubuntu Server
je doit sauvegarder un dossier (sur Windows 2003), 1 dossier (sur Ubuntu Server), et une base de donnée MySQL situées sur mon serveur Windows 2003.
Je précise que mon "Serveur de sauvegarde" est une machine ne servant seulement qu'a ces sauvegarde (et qui est sous Ubuntu..)
Merci d'avance pour vos réponses !
Mc.Fly
Autres pages sur : creer script sauvegarde ubuntu
Lassé par la pub ? Créez un compte
- | Alerter
Un PTI est un "projet" en quelque sorte est n'est pas forcement lié qu'a l'informatique ...
Aller tu peux m'appeller Mc.Fly
désoler de sauter ainsi mais j'ai tres tres tres tres envi de faire ce projet ^^
---------------------------------------------------------------------------------------------------------------------
Donc comme je l'ai précisé je veux créer mon script sous Ubuntu, donc un .batch si tu préfères...
Je me doute qu'il va falloir utiliser la commande : MySQLDump pour la sauvegarde de bases de données
après mon "HIK''" vient du fait que ces fichiers sont situés sur des machines différentes (utilisation des lecteurs réseau..), et surtout que ces 3 machines ne sont pas sur le même Os ( Microsoft vs Unix ^^)
Aller tu peux m'appeller Mc.Fly
désoler de sauter ainsi mais j'ai tres tres tres tres envi de faire ce projet ^^
---------------------------------------------------------------------------------------------------------------------
Donc comme je l'ai précisé je veux créer mon script sous Ubuntu, donc un .batch si tu préfères...
Je me doute qu'il va falloir utiliser la commande : MySQLDump pour la sauvegarde de bases de données
après mon "HIK''" vient du fait que ces fichiers sont situés sur des machines différentes (utilisation des lecteurs réseau..), et surtout que ces 3 machines ne sont pas sur le même Os ( Microsoft vs Unix ^^)
- | Alerter
Quel langage de script comptes-tu utiliser ?
La réponse ne peut pas être Ubuntu. Ubuntu, c'est le nom de ta distribution. C'est comme si je te demandais "Où veux-tu aller ?" et que tu me répondais "Ben, j'ai une Twingo, eh, gros malin"
Choix plausibles :
[ ] sh/bash/ksh
[ ] rsh
[ ] csh
[ ] perl
[ ] Autre. Précisez: __________________
MySQL sur Windows quand on a un serveur Linux
J'espère que le choix n'est pas de toi
Pour exécuter des scripts à distance sous Windows, je t'invite à poser la question dans le monde de Windows. Regarde quand même du côté des PsTools de Mark Russinovitch.
Je repose la question un peu différemment.
Comment accèdes-tu aux fichiers sur tes différents serveurs ?
Choix plausibles :
[ ] ftp
[ ] http
[ ] Autre. Précisez: __________________
La réponse ne peut pas être Ubuntu. Ubuntu, c'est le nom de ta distribution. C'est comme si je te demandais "Où veux-tu aller ?" et que tu me répondais "Ben, j'ai une Twingo, eh, gros malin"
Choix plausibles :
[ ] sh/bash/ksh
[ ] rsh
[ ] csh
[ ] perl
[ ] Autre. Précisez: __________________
MySQL sur Windows quand on a un serveur Linux
J'espère que le choix n'est pas de toi
Pour exécuter des scripts à distance sous Windows, je t'invite à poser la question dans le monde de Windows. Regarde quand même du côté des PsTools de Mark Russinovitch.
Je repose la question un peu différemment.
Comment accèdes-tu aux fichiers sur tes différents serveurs ?
Choix plausibles :
[ ] ftp
[ ] http
[ ] Autre. Précisez: __________________
- | Alerter
Contenus similaires
- Script de sauvegarde - Forum
- Script sauvegarde fichier - Forum
- Créer script linux - Forum
- Serveur web linux ubuntu - Forum
- | Alerter
- | Alerter
- | Alerter
Bon. tu as le droit de débuter, mais il faudrait quand même nous aider à t'aider. TPI, je ne sais toujours pas ce que c'est. En fait, je me fous pas mal de connaître ce sigle, mais peut-être me renseignera-t-il sur ta situation. Est-ce un projet scolaire, professionnel, personnel ??? La vraie question est : quelle liberté as-tu sur les différentes machines ? - Installer CygWIN par exemple n'est pas anodin. Sur une machine perso, pas de problème, sur un serveur, l'admin risque de faire la gueule.
A priori, le langwage bourne ( = sh. bash et korn sont compatibles. Sous Ubuntu, de mémoire, /bin/sh est un lien vers /bin/bash ) est un grand classique. C'est sans doute ce qu'on attend de toi.
Un serveur est un ordinateur qui propose des services. Par exemple, ta machine Windows propose le service "Base de données". C'est donc bien un serveur.
Mais il faudrait aussi que ces machines proposent les services : "Sauvegarde d'un dossier" et "Sauvegarde d'une base de données".
Ce n'est pas à ton script sur la machine "Serveur de sauvegarde". D'ailleurs, le nom de cette machine est très mal choisi. Car il s'agit en fait d'un client de sauvegarde si j'ai bien compris.
Donc, il faut que tu répondes à la question, posée 3 fois maintenant :
Comment accèdes-tu aux fichiers à sauvegarder sur tes différents serveurs ?
A priori, le langwage bourne ( = sh. bash et korn sont compatibles. Sous Ubuntu, de mémoire, /bin/sh est un lien vers /bin/bash ) est un grand classique. C'est sans doute ce qu'on attend de toi.
Un serveur est un ordinateur qui propose des services. Par exemple, ta machine Windows propose le service "Base de données". C'est donc bien un serveur.
Mais il faudrait aussi que ces machines proposent les services : "Sauvegarde d'un dossier" et "Sauvegarde d'une base de données".
Ce n'est pas à ton script sur la machine "Serveur de sauvegarde". D'ailleurs, le nom de cette machine est très mal choisi. Car il s'agit en fait d'un client de sauvegarde si j'ai bien compris.
Donc, il faut que tu répondes à la question, posée 3 fois maintenant :
Comment accèdes-tu aux fichiers à sauvegarder sur tes différents serveurs ?
- | Alerter
- | Alerter
- | Alerter
Mais ne t'énerve pas McFly !!!!!!!!!!!!!
Tu as donc le choix dans le langage, côté "Serveur de sauvegarde".
Et je te propose le bourne shell (bash). Que veux-tu de plus ?
Mais il faut aussi que tu puisses accéder à tes fichiers sur les autres machines. Et ce n'est pas le choix du langage côté "Serveur de sauvegarde" qui va t'aider à récupérer tes données. Ce n'est pas le "Serveur de sauvegarde" qui prend les données, ce sont les serveurs Windows 2003 et Ubuntu Server qui donnent leur données pour les sauvegarder.
Tant que tu ne comprendras pas ça, tu ne pourras pas avancer. Surtout si tu t'énerves et que tu insultes ceux qui prennent la peine de t'aider.
Tu as donc le choix dans le langage, côté "Serveur de sauvegarde".
Et je te propose le bourne shell (bash). Que veux-tu de plus ?
Mais il faut aussi que tu puisses accéder à tes fichiers sur les autres machines. Et ce n'est pas le choix du langage côté "Serveur de sauvegarde" qui va t'aider à récupérer tes données. Ce n'est pas le "Serveur de sauvegarde" qui prend les données, ce sont les serveurs Windows 2003 et Ubuntu Server qui donnent leur données pour les sauvegarder.
Tant que tu ne comprendras pas ça, tu ne pourras pas avancer. Surtout si tu t'énerves et que tu insultes ceux qui prennent la peine de t'aider.
- | Alerter
- | Alerter
- | Alerter
- | Alerter
>>sur windows tu install un serveur ssh
CygWIN needed for OpenSSH ! (Peut être pensais-tu à un autre serveur ?)
(Pas tous les paquets, je te l'accorde)
N'empêche, il faut installer un service supplémentaire sur le serveur Windows.
Y installer un serveur SSH répondrait à la question Comment accèdes-tu à la machine contenant les fichiers à sauvegarder ?
CygWIN needed for OpenSSH ! (Peut être pensais-tu à un autre serveur ?)
(Pas tous les paquets, je te l'accorde)
N'empêche, il faut installer un service supplémentaire sur le serveur Windows.
Y installer un serveur SSH répondrait à la question Comment accèdes-tu à la machine contenant les fichiers à sauvegarder ?
- | Alerter
- | Alerter
- | Alerter
>>>c'est fictif !!!!
Désolé T_Hebi, je viens de comprendre. Mais tu utilises des mots et des abréviations qui te semblent sans équivoques, alors qu'ils peuvent l'être. Des projets, j'en ai à la pelle au boulot, et pourtant, ce n'est pas du tout fictif.
Quand je t'ai demandé ce qu'était un PTI, tu aurais pu m'expliquer que c'était scolaire, professionnel, personnel, etc... Par ailleurs, pour moi, un serveur est une machine sur laquelle on n'a pas la main, par principe. Bon, sauf si on est soit même l'admin. Ce que tu es, donc. Ça change tout dans la résolution de ton problème.
Désolé T_Hebi, je viens de comprendre. Mais tu utilises des mots et des abréviations qui te semblent sans équivoques, alors qu'ils peuvent l'être. Des projets, j'en ai à la pelle au boulot, et pourtant, ce n'est pas du tout fictif.
Quand je t'ai demandé ce qu'était un PTI, tu aurais pu m'expliquer que c'était scolaire, professionnel, personnel, etc... Par ailleurs, pour moi, un serveur est une machine sur laquelle on n'a pas la main, par principe. Bon, sauf si on est soit même l'admin. Ce que tu es, donc. Ça change tout dans la résolution de ton problème.
- | Alerter
Hypothèses
On dispose d'un parc hétérogène de serveurs.
On veut sauvegarder certaines données.
Proposition 1
On peut laisser les serveurs sauver régulièrement leurs données et les mettre à disposition.
Sur chaque serveur, dans le gestionnaire des tâches (Windows) ou dans la crontable (Linux),
un script est lancé qui sauvegarde les données à heure fixe, par exemple le soir à 20h00.
Chaque script est adapté au système : un batch sous Windows, un bash sous Ubuntu.
Faire un équivalent pour Windows.
Sur chacun de ces serveurs, le répertoire de sauvegarde est accessible en lecture via un service FTP.
Sur la machine de sauvegarde, il suffit alors de faire le tour des fichiers à sauvegarder :
Cela nécessite donc 1 service FTP par serveur, c'est tout.
(Du côté client FTP, un ptit ncftpget ne peut pas faire de mal
On aime : L'option -f )
Evidemment, on peut remplacer FTP par HTTP si on a un serveur web sur la machine. La récupération se fait alors par un wget.
Autre idée : Se servir du partage de fichiers sur le serveur Windows, de Samba sur le serveur Ubuntu et d'un bête client Samba sur la machine de sauvegarde.
Cela nécessite donc Samba sur le serveur Ubuntu.
Donc en résumé, sur les serveurs à sauvegarder : cron / g. de tâches + script + serveur de fichiers (ftp, http, smb)
Proposition 2
La même chose, mais le serveur de sauvegarde est passif : on installe un serveur ftp (ou autre) sur cette machine et ce sont les autre machines qui font un put vers le serveur de sauvegarde. (ncftpput)
Résumé, côté serveurs à sauvegarder : cron / g. de tâches + script.
Proposition 3
Tant qu'à faire d'installer Samba, autant l'utiliser : Donc on partage en lecture les dossiers et répertoires où les données à sauvegarder et c'est le serveur de données qui fait le boulot. Les scripts de sauvegarde sont donc les mêmes, mais on les exécute à partir du serveur de sauvegarde. Il faut être sûr que les fichiers ne sont pas en cours de modifications.
Résumé : Installation de Samba sur le serveur Ubuntu.
Proposition 4
Utiliser rsh ou ssh pour exécuter les commandes à distance. rsync est alors un excellent choix. Mais ce choix impose l'installation de CygWIN sur les machines Windows. On dénature un peu le problème, car on se réduit au cas : Parc homogène de machines sous UNIX-like.
Résumé : Installation de CygWIN et de OpenSSH sur le serveur Windows.
On dispose d'un parc hétérogène de serveurs.
On veut sauvegarder certaines données.
Proposition 1
On peut laisser les serveurs sauver régulièrement leurs données et les mettre à disposition.
Sur chaque serveur, dans le gestionnaire des tâches (Windows) ou dans la crontable (Linux),
un script est lancé qui sauvegarde les données à heure fixe, par exemple le soir à 20h00.
Chaque script est adapté au système : un batch sous Windows, un bash sous Ubuntu.
#!/bin/sh
YESTERDAY=`date --date '1 day ago' +%Y%m%d`
TODAY=`date +%Y%m%d`
SAVE_DIR=/var/saved_data
FILES_TO_SAVE=/home/t_hebi/data_to_save
# Sauvegarde complète
tar -cf $WHERE/all_data_$TODAY $FILES_TO_SAVE
# Sauvegarde des fichiers du jour
tar --newer $YESTERDAY -cf $WHERE/data_of_the_day_$TODAY $FILES_TO_SAVE
Faire un équivalent pour Windows.
Sur chacun de ces serveurs, le répertoire de sauvegarde est accessible en lecture via un service FTP.
Sur la machine de sauvegarde, il suffit alors de faire le tour des fichiers à sauvegarder :
#!/bin/sh
COMPUTERS="SrvW1 SrvUbun2"
TODAY=`date +%Y%m%d`
for $COMPUTER in $COMPUTERS; do
cd /var/saved_data/$COMPUTER
echo "Récupération des donnés sur le serveur $COMPUTER"
ftp -n ftp://SrvW1 <<EOF
user ADMIN_SAUVEGARDE
pass lemotdepassdeladmin
get /saved_data/all_data_$TODAY
get /saved_data/data_of_the_day_$TODAY
EOF
done
Cela nécessite donc 1 service FTP par serveur, c'est tout.
(Du côté client FTP, un ptit ncftpget ne peut pas faire de mal
On aime : L'option -f )Evidemment, on peut remplacer FTP par HTTP si on a un serveur web sur la machine. La récupération se fait alors par un wget.
Autre idée : Se servir du partage de fichiers sur le serveur Windows, de Samba sur le serveur Ubuntu et d'un bête client Samba sur la machine de sauvegarde.
Cela nécessite donc Samba sur le serveur Ubuntu.
Donc en résumé, sur les serveurs à sauvegarder : cron / g. de tâches + script + serveur de fichiers (ftp, http, smb)
Proposition 2
La même chose, mais le serveur de sauvegarde est passif : on installe un serveur ftp (ou autre) sur cette machine et ce sont les autre machines qui font un put vers le serveur de sauvegarde. (ncftpput)
Résumé, côté serveurs à sauvegarder : cron / g. de tâches + script.
Proposition 3
Tant qu'à faire d'installer Samba, autant l'utiliser : Donc on partage en lecture les dossiers et répertoires où les données à sauvegarder et c'est le serveur de données qui fait le boulot. Les scripts de sauvegarde sont donc les mêmes, mais on les exécute à partir du serveur de sauvegarde. Il faut être sûr que les fichiers ne sont pas en cours de modifications.
Résumé : Installation de Samba sur le serveur Ubuntu.
Proposition 4
Utiliser rsh ou ssh pour exécuter les commandes à distance. rsync est alors un excellent choix. Mais ce choix impose l'installation de CygWIN sur les machines Windows. On dénature un peu le problème, car on se réduit au cas : Parc homogène de machines sous UNIX-like.
Résumé : Installation de CygWIN et de OpenSSH sur le serveur Windows.
- | Alerter
- | Alerter
- | Alerter
Zeb, j'apprécie vraiment les gens comme vous qui font avancer la communauté par vos explications claires et pertinentes; ceci dit T_HeBi est une personne qui devrait travailler un minimum par lui-même mais clairement il desire qu'on lui fasse son travail sans effort. C'est bien de remercier T_HeBi, mais la politesse veut que vous repondiez aux questions qu'une personne vous pose surtout quand cette dernière vous montre son intérêt pour votre dessein et vous mache le boulot.
- | Alerter
Yoant, je suis assez d'accord avec toi.
D'habitude, celui qui ne se donne pas la peine de correctement s'expliquer se retrouve sans la moindre explication de ma part. Ce jour-là, je n'avais pas compris du premier coup ce que me disait T_HeBi, du coup, je me suis un peu investi pour bien comprendre don problème. C'est pour ça qu'il a eut une réponse très complète. En plus, je ne sevais rien avoir à faire à ce moment
Bon en plus la solution est assez générique pour pouvoir servir à d'autres, alors tant qu'à faire....
Quant à T_HeBi, j'ai eu un "merci énormément", c'est déjà bien.
Il n'est sans doute pas revenu pour répondre à la dernière question, ce n'est pas grave, il répondra au prochain problème
- | Alerter
Lassé par la pub ? Créez un compte