cancel
Showing results for 
Search instead for 
Did you mean: 

Sauvegarde / restauration sous Debian lenny, Alfresco 3.2

totoro
Champ in-the-making
Champ in-the-making
Bonjour,

Voila j'ai un serveur Alfresco sous Debian lenny, la version d'Alfresco est la 3.2 community.
Alfresco est configuré pour fonctionner avec Mysql.
La procédure suivie pour l'installation est disponible ici:
http://romain.therrat.fr/alfresco-installer-alfresco-community-3-3-sur-une-debian-lenny/229/
Mais j'utilise un 3.2 (j'ai pas encore fait de mise a jour …)
J'ai mise ne place un script de sauvegarde:
#!/bin/bash###############################################################################                                                                            ## Description : Script de sauvegarde d'Alfresco                              ## OS          : Linux                                                        ## Licence     : GPLv3                                                        ## Version     : 1.0.1                                                        ## Author      : Schneider Benoit <ton.ami.totoro CHEZ gmail.com>             ## Web site    : https://totorux.info                                         ##                                                                            ##                                                                            ##                                                                            ##    Foobar is free software: you can redistribute it and/or modify          ##    it under the terms of the GNU General Public License as published by    ##    the Free Software Foundation, either version 3 of the License, or       ##    (at your option) any later version.                                     ##                                                                            ##    Foobar is distributed in the hope that it will be useful,               ##    but WITHOUT ANY WARRANTY; without even the implied warranty of          ##    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the           ##    GNU General Public License for more details.                            ##                                                                            ##    You should have received a copy of the GNU General Public License       ##    along with Foobar.  If not, see <http://www.gnu.org/licenses/>.         ##                                                                            ################################################################################Variableutilmysql=usermysql #Utilisateur Mysqlmdputilmysql=mdpusermysql #Mot de passe de l'utilisateur Mysqlbasemysql=–all-databases #Nom de la base Mysqlserveurmysql=localhost #Nom du serveur Mysqldossiertrav=/tmp/save-alfresco #Dossier de travaildossiertmp=save-alfresco-`date +%Y-%m-%d` #Dossier & nom de la sauvegardedossiersav=/root/save-alfresco #Dossier ou sont deplace les sauvegardesdossieralfresco=/opt/Alfresco #Dossier ou est installe alfresco#Nombre de sauvegarde conserver:nb=5##Fonctions:sauv-mysql() #Sauvegarde des bases de donnees    {        echo "Sauvegarde mysql"        echo >> /var/log/save-alfresco.log        echo "Sauvegarde mysql" >> /var/log/save-alfresco.log        mysqldump -u $utilmysql -p$mdputilmysql -h $serveurmysql $basemysql > $dossiertrav/$dossiertmp/alfred-mysql.sql        echo "Fin sauvegarde mysql" >> /var/log/save-alfresco.log        echo "Fin sauvegarde mysql"        echo >> /var/log/save-alfresco.log    }sauv-data() #Sauvegarde des donnees    {        echo >> /var/log/save-alfresco.log        echo "Sauvegarde data"        echo "Sauvegarde data" >> /var/log/save-alfresco.log        cp -r $dossieralfresco/alf_data $dossiertrav/$dossiertmp/ >> /var/log/save-alfresco.log        echo "Fin sauvegarde data" >> /var/log/save-alfresco.log        echo "Fin sauvegarde data"        echo >> /var/log/save-alfresco.log    }sauv-conf() #Sauvegarde des donnees    {        echo >> /var/log/save-alfresco.log        echo "Sauvegarde de la configuration d alfresco"        echo "Sauvegarde de la configuration d alfresco" >> /var/log/save-alfresco.log        #Si vous voulez sauvegarder d autres fichiers remplacer / ajouter leurs chemin apres le in dans la boucle si dessous        for conf in $dossieralfresco/alfresco.sh $dossieralfresco/tomcat/shared/classes/alfresco-global.properties $dossieralfresco/tomcat/webapps/alfresco/WEB-INF/classes/log4j.properties        do            echo "Sauvegarde de $conf" >> /var/log/save-alfresco.log            cp -r $conf $dossiertrav/$dossiertmp/ >> /var/log/save-alfresco.log        done        echo "Fin sauvegarde de la configuration d alfresco" >> /var/log/save-alfresco.log        echo "Fin sauvegarde de la configuration d alfresco"        echo >> /var/log/save-alfresco.log    }sauv-comp() #Compression de la sauvegarde    {        echo >> /var/log/save-alfresco.log        echo "Compression data"        echo "Compression data" >> /var/log/save-alfresco.log        cd $dossiertrav        tar -czvf $dossiertmp.tar.gz $dossiertmp | grep tar: >> /var/log/save-alfresco.log        echo "Fin compression data" >> /var/log/save-alfresco.log        echo "Fin compression data"    }sauv-ndernier() #Conservation des N dernieres sauvegardes    {        echo >> /var/log/save-alfresco.log        echo "Conservation de $nb derniere sauvegarde"        echo "Conservation de $nb derniere sauvegarde" >> /var/log/save-alfresco.log        cd $dossiersav        nbsav=`ls | wc -l`        echo  >> /var/log/save-alfresco.log        echo "Nombre de points de sauvegardes `echo $nbsav`"  >> /var/log/save-alfresco.log        if test $nbsav -gt $nb        then            ls $dossiersav > $dossiertrav/nb-sav.txt            tail -n $nb $dossiertrav/nb-sav.txt > $dossiertrav/nb-sav-2.txt            echo  >> /var/log/save-alfresco.log            echo "Ne doivent pas etre supprimes"  >> /var/log/save-alfresco.log            echo  >> /var/log/save-alfresco.log            cat $dossiertrav/nb-sav-2.txt  >> /var/log/save-alfresco.log            for sav in `cat $dossiertrav/nb-sav-2.txt`            do                sed -i "/^$sav/"'d' $dossiertrav/nb-sav.txt            done                echo  >> /var/log/save-alfresco.log                echo "Suppression des vieilles sauvegardes" >> /var/log/save-alfresco.log            for savenutil in `cat $dossiertrav/nb-sav.txt`            do                rm $dossiersav/$savenutil                echo "Suppression de la sauvegarde $savenutil"  >> /var/log/save-alfresco.log            done            rm $dossiertrav/nb-sav*        fi        echo "Fin nettoyage des sauvegarde" >> /var/log/save-alfresco.log        echo "Fin nettoyage des sauvegarde"    }##Scriptecho >> /var/log/save-alfresco.logecho "<==========Debut nouvelle sauvegarde==========>">> /var/log/save-alfresco.logecho >> /var/log/save-alfresco.logecho Debut de la sauvegarde le >> /var/log/save-alfresco.logdate  >> /var/log/save-alfresco.logif  [ -d $dossiersav ]then    if  [ -d $dossiertrav ]    then        mkdir -p $dossiertrav/$dossiertmp    else        mkdir $dossiertrav/$dossiertmp    fielse    mkdir -p $dossiersav    mkdir -p $dossiertrav/$dossiertmpfisauv-mysqlecho "Fin sauvegarde mysql debut sauvegarde des donnees le" >> /var/log/save-alfresco.logdate  >> /var/log/save-alfresco.logsauv-dataecho "Fin sauvegarde des donnees le" >> /var/log/save-alfresco.logdate  >> /var/log/save-alfresco.logsauv-confecho "Fin sauvegarde des fichiers de configuration, debut compression de la sauvegarde le" >> /var/log/save-alfresco.logdate  >> /var/log/save-alfresco.logsauv-compmv $dossiertrav/$dossiertmp.tar.gz $dossiersavrm -rf $dossiertrav/$dossiertmpsauv-ndernierecho >> /var/log/save-alfresco.logecho "Fin de la sauvegarde le" >> /var/log/save-alfresco.logdate  >> /var/log/save-alfresco.logecho >> /var/log/save-alfresco.logecho "<==========Fin nouvelle sauvegarde==========>">> /var/log/save-alfresco.logecho >> /var/log/save-alfresco.logecho "*********************************************">> /var/log/save-alfresco.log‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

Je pense rien avoir oublier …

Le problème vient de la restauration (oui avant de mettre le tout disponible sur le net, j'aimerais arrivé a faire une restauration… donc je fait des testes avec une machine qui n'est pas en prod … pour la restauration, voici le script de restauration dans son état actuel:
#!/bin/bash###############################################################################                                                                            ## Description : Script de restauration d'Alfresco                            ## OS          : Linux                                                        ## Licence     : GPLv3                                                        ## Version     : 0.1.0                                                        ## Author      : Schneider Benoit <ton.ami.totoro CHEZ gmail.com>             ## Web site    : https://totorux.info                                         ##                                                                            ##                                                                            ##                                                                            ##    Foobar is free software: you can redistribute it and/or modify          ##    it under the terms of the GNU General Public License as published by    ##    the Free Software Foundation, either version 3 of the License, or       ##    (at your option) any later version.                                     ##                                                                            ##    Foobar is distributed in the hope that it will be useful,               ##    but WITHOUT ANY WARRANTY; without even the implied warranty of          ##    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the           ##    GNU General Public License for more details.                            ##                                                                            ##    You should have received a copy of the GNU General Public License       ##    along with Foobar.  If not, see <http://www.gnu.org/licenses/>.         ##                                                                            #################################################################################Variableutilmysql=usermysql #Utilisateur Mysqlmdputilmysql=mdpusermysql #Mot de passe de l'utilisateur Mysqlbasemysql=–all-databases #Nom de la base Mysqlserveurmysql=localhost #Nom du serveur Mysqldossiertrav=/tmp/save-alfresco #Dossier de travaildossiersav=/root/save-alfresco #Dossier ou sont les sauvegardesdossieralfresco=/opt/Alfresco #Dossier ou est installe alfresconbrest=0##Fonctionslist-sav() #Listage des sauvegardes    {        echo Liste des sauvegardes        mkdir -p $dossiertrav >> /var/log/save-alfresco.log        cd $dossiersav        nbsav=`ls | wc -l`        ls $dossiersav > $dossiertrav/nbsave.txt        echo "Il y a $nbsav sauvegardes"        echo "Il y a $nbsav sauvegardes" >> /var/log/save-alfresco.log        for sav in `cat $dossiertrav/nbsave.txt`        do            nbrest=$(($nbrest + 1 ))            echo $nbrest >> $dossiertrav/list.txt            echo "$nbrest : $sav"        done        echo Fin Liste sauvegardes    }recup-sav() #Requperation sauvegarde    {        echo Requperation sauvegarde        echo "Indiquez le numéro du point de sauvegarde à restaurer"        read choix        if [ -z "`echo $choix | sed s/[0-9]*//`" ]        then            if test $choix -lt 1 -o $choix -gt $nbsav            then                echo "Restauration annulée, mettez un des chiffres contenus dans la liste" && exit            fi        else        echo "Restauration annulée, mettez un des chiffres contenus dans la liste" && exit        fi        arg=`echo $choix`p        sed -n "$arg" $dossiertrav/nbsave.txt > $dossiertrav/arestaurer.txt        echo Fin Requperation sauvegarde    }decomp-data() #decompresion de la sauvegarde    {        echo Decompresion de la sauvegarde        echo "Début restauration de la sauvegarde `cat $dossiertrav/arestaurer.txt`" >> /var/log/save-alfresco.log        cp $dossiersav/`cat $dossiertrav/arestaurer.txt` $dossiertrav/ >> /var/log/save-alfresco.log        tar -xzvf $dossiertrav/`cat $dossiertrav/arestaurer.txt` -C $dossiertrav/ | grep tar: >> /var/log/save-alfresco.log        sed -i "s/.tar.gz//" $dossiertrav/arestaurer.txt        echo Fin decompresion de la sauvegarde    }resto-data() #Restauration des donnees    {        echo Restauration data        mv $dossieralfresco/alf_data $dossiertrav/alf_data-`date +%Y-%m-%d`        mv $dossiertrav/`cat $dossiertrav/arestaurer.txt`/alf_data $dossieralfresco/        mv $dossieralfresco/alf_data/backup-lucene-indexes $dossieralfresco/alf_data/lucene-indexes        echo Fin restauration data    }resto-base() #Restauration de la base de donnees    {        echo Restauration de la base de donnees        mysql -u $utilmysql -p$mdputilmysql -e "drop database alfresco;"        mysql -u $utilmysql -p$mdputilmysql -e "create database alfresco;"        mysql -u $utilmysql -p$mdputilmysql alfresco < $dossiertrav/`cat $dossiertrav/arestaurer.txt`/alfred-mysql.sql        echo Fin restauration de la base de donnees    }net-tmp() #Nettoyage du dossier temporaire    {        echo Debut nettoyage du dossier temporaire        rm -rf $dossiertrav/`cat $dossiertrav/arestaurer.txt`        for fichier in arestaurer.txt  list.txt  nbsave.txt        do            rm $dossiertrav/$fichier        done        echo Voulez vous suprimez la sauvegarde du alf_data creer a l instant oui/Oui ou non/Non ?        read reponse        case "$reponse" in        oui|Oui)        rm -rf $dossiertrav/alf_data-*        echo "Dossier alf_data tu dossier de travail suprimez"        ;;        non|Non)        echo "Dossier non surprimer"        ;;        *)        echo "valeur invalide"        esac        echo Fin  nettoyage du dossier temporaire    }##Script##Arret d'Alfrescoecho >> /var/log/save-alfresco.logecho "<==========Debut restauration==========>">> /var/log/save-alfresco.logecho >> /var/log/save-alfresco.logecho >> /var/log/save-alfresco.logecho "Début restauration, arret d alfresco le `date +%Y-%m-%d_%Hh%M`" >> /var/log/save-alfresco.logecho >> /var/log/save-alfresco.log$dossieralfresco/alfresco.sh stop >> /var/log/save-alfresco.logkillall java >> /var/log/save-alfresco.logecho >> /var/log/save-alfresco.log#Listage des sauvegardeslist-sav#Récupération de la sauvegarde a restaurerrecup-sav#Décompression de la sauvegardedecomp-data##Restoration des donneesresto-data##Restoration de la base de donneeresto-basenet-tmp##Demarage d'Alfrescoecho >> /var/log/save-alfresco.logecho "Redemarrage d alfresco" >> /var/log/save-alfresco.logecho >> /var/log/save-alfresco.logecho "Fin de la restauration redemarrage d alfresco !"$dossieralfresco/alfresco.sh start >> /var/log/save-alfresco.logecho >> /var/log/save-alfresco.logecho "Fin restauration, alfresco redemarrer le `date +%Y-%m-%d_%Hh%M`" >> /var/log/save-alfresco.logecho "<==========Fin restauration==========>">> /var/log/save-alfresco.logecho >> /var/log/save-alfresco.logecho "*********************************************">> /var/log/save-alfresco.log‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

Bon maintenant mon problème, après la tentative de restauration (manuelle ou avec le script), (je tien a précisé que je pour la création du script et la restauration manuel je me suis inspirer de se qui est écrit ici: http://wiki.alfresco.com/wiki/Backup_and_Restore#Restore_Procedure et là: http://forums.alfresco.com/fr/viewtopic.php?f=8&t=2848)

J'obtiens toujours:

HTTP Status 404 -type Status reportmessagedescription The requested resource () is not available.Apache Tomcat/6.0.18‍‍‍‍‍‍‍‍

Le fichier alfresco.log http://pastebin.com/TEgtAmy6
Le fichier catalina.out http://pastebin.com/gWznV5bR

J'ai également essayer en mettant :
index.recovery.mode=ALL
Mais sans succès …

Merci de votre aide, pour les scripts si vous avez des idées supplémentaire je suis preneur (je début aussi en scripting donc bon Smiley Wink )
5 REPLIES 5

dranakan
Champ on-the-rise
Champ on-the-rise
Hello,

C'est sympa de mettre à disposition ton script. Merci.

Pour la restauration, essaie plutôt ceci :

index.recovery.mode=FULL‍

Concernant le script de backup, on pourrait :
Faire des tests après chaque commande
# Directory to Storemkdir -p $BACKUP_DESTINATION_BASE 2>> $LOGFILEif [ $? -gt 0 ] ; then        message "$ERROR : Unable to create the destination directory"        exit 1fi‍‍‍‍‍‍

Faire une copie des backup-lucenes-indexes (dès que tu restauras, tu pourrais remplacer les lucenes-indexes par ceux-ci, cela t'économisera du temps).

Pour la sauvegarde de mysql, j'étais tombé sur des exemples qui utilisaient certaines options… à voir si c'est bénéfique…
# Save the databasemysqldump -u $MYSQL_USER -p$MYSQL_PASSWORD $MYSQL_DATABASE_ALF –opt –single-transaction –create-options > $BACKUP_FILE_MYSQL_SLQ 2>> $LOGFILEif [ $? -gt 0 ] ; then        message "$ERROR : Unable to do the mysqldump"        exit 1fi‍‍‍‍‍‍‍‍

totoro
Champ in-the-making
Champ in-the-making
Merci de ta réponse je regarderais ça ce soir.
Par contre tu ne vois pas de raison qui ferait que ça marche pas ? Mis a par le:
index.recovery.mode=FULL‍
@ +

dranakan
Champ on-the-rise
Champ on-the-rise
Rien ne m'a sauté aux yeux…

totoro
Champ in-the-making
Champ in-the-making
Bonsoir,

Bon toujours pas mieux Smiley Sad

xsudan tu les as trouver où ses morceaux de script ?