[Bash] Pour les adeptes des versions bêta de domoticz (et les autres)

Vous avez créé un script LUA dont vous êtes fier, un .sh génial, un programme Python hors du commun, un Tuto, c'est ici que vous pouvez les partager.
papoo
Messages : 2029
Inscription : 10 janv. 2016, 11:29
Localisation : Limoges (87)
Contact :

[Bash] Pour les adeptes des versions bêta de domoticz (et les autres)

Message par papoo »

afin de pouvoir revenir à la version bêta (ou release) antérieure en cas de dysfonctionnement de la derniere installée, j'ai collecté au sein d'un seul fichier bash tout ce qui est nécessaire à cette restauration, sans avoir à redeployer une image disque de la carte SD
Ce script propose donc :
Choix 1 > backup du répertoire domoticz complet
Choix 2 > Update vers la derniere version bêta disponible
Choix 3 > Update vers la derniere version stable disponible
Choix 4 > Restauration de la version sauvegardée (si bien sur vous l'avez effectuée au préalable)
Choix 5 > Suppression de l'ancienne sauvegarde si elle n'est plus nécessaire (avant d'en faire une nouvelle donc)

Ce script désactive temporairement le service monit (commentez les lignes 5 et 10 si vous n'utilisez pas monit) et le service domoticz pour effectuer la sauvegarde.

il doit être placé dans le répertoire/home/pi/ et être nommé update (sans extension)
il vous suffit ensuite de taper ./update en ligne de commande pour accéder à ce menu

Code : Tout sélectionner

#/bin/bash
# auteur = papoo
# 23/09/2018
# https://pon.fr/bash-pour-les-adeptes-des-versions-beta-de-domoticz-et-les-autres
# https://easydomoticz.com/forum/viewtopic.php?f=17&t=7179
# script à placer dans le répertoire /home/pi/

fct_stop ()
{
    sudo /etc/init.d/monit stop
    sudo /etc/init.d/domoticz.sh stop
}
fct_start ()
{
    sudo /etc/init.d/monit start
    sudo /etc/init.d/domoticz.sh start
}
fct_update ()
{
echo
echo
echo "backup : 1"
echo
echo "Update Beta : 2"
echo
echo "Update Release : 3"
echo
echo "Restore (/!\efface le repertoire domoticz/!\) : 4"
echo
echo "Suppression archive : 5"
echo
echo "Q : Quitter le Script"
echo
echo "Choix : "
echo
read optionmenu
    case $optionmenu in
    1)
        echo
        echo "lancement Backup"
        echo
        ### make backup
        fct_stop
        sudo /bin/tar -zcvf domoticz_backup.tar.gz /home/pi/domoticz/ >&/dev/null

        ### copy backup to backup folder
        #sudo /bin/cp /tmp/domoticz_total_$CONCAT.tar.gz $DESTINATION > /dev/null

        ### Remove temp backup file
        #sudo /bin/rm /tmp/domoticz_total_$CONCAT.tar.gz > /dev/null
        #sudo /bin/rm -Rf /tmp/*.tar.gz > /dev/null
        sleep 5
        echo "backup termine relance service domoticz"
        fct_start
        fct_update;;
    2)
        echo
        echo "lancement updatebeta"
        echo
        cd /home/pi/domoticz/
        sudo /bin/bash /home/pi/domoticz/updatebeta >&/dev/null;
        sleep 5;;
    3)
        echo
        echo "lancement updaterelease"
        echo
        cd /home/pi/domoticz/
        sudo /bin/bash /home/pi/domoticz/updaterelease >&/dev/null;
        sleep 5;;
    4)
        echo
        echo "lancement restoration"
        fct_stop
        echo
        if [ -f "/home/pi/domoticz_backup.tar.gz" ]
        then
            echo "le fichier domoticz_backup.tar.gz existe"
            echo "Suppression du repertoire domoticz et de son contenu"
            #sudo rm -rf domoticz
            cd
            sudo /bin/tar -xzvf domoticz_backup.tar.gz>&/dev/null;
            sudo /bin/cp -r /home/pi/home/pi/domoticz/ /home/pi/;
            sudo chown -Rf pi /home/pi/domoticz/
            sudo rm -rf /home/pi/home/;
        else
            echo "attention pas de fichier archive"
            echo "Executer option 1"
        fct_update            
        fi
        fct_start
        sleep 5;;

    5)
        echo
        echo "Suppression archives"
        echo 
        sudo /bin/rm -Rf domoticz_backup.tar.gz > /dev/null
        sleep 5
        fct_update;;
    Q)
        fct_start
        exit;;
    q)
        fct_start
        exit;;
    *)
        echo
        echo "erreur de frappe"
        echo
        fct_update;;
        esac
}
    clear
    fct_update
domoticz beta/RaspBerry PI3 stretch
https://pon.fr github
Neutrino
Messages : 2662
Inscription : 10 juil. 2015, 15:42
Localisation : Les Herbiers(85)

Re: bash : pour les adeptes des versions bêta de domoticz (et les autres)

Message par Neutrino »

Et je m'emmerdais à faire ça à la main à chaque fois.... Merci papoo :D
Ma maison à plein d'IP ! :mrgreen:
SAV Bonjour. Vous avez vidé le cache ?
papoo
Messages : 2029
Inscription : 10 janv. 2016, 11:29
Localisation : Limoges (87)
Contact :

Re: bash : pour les adeptes des versions bêta de domoticz (et les autres)

Message par papoo »

Neutrino a écrit : 24 sept. 2018, 21:11 Et je m'emmerdais à faire ça à la main à chaque fois.... Merci papoo :D
tout comme moi :D
domoticz beta/RaspBerry PI3 stretch
https://pon.fr github
Honrap
Messages : 69
Inscription : 01 nov. 2017, 21:11

Re: bash : pour les adeptes des versions bêta de domoticz (et les autres)

Message par Honrap »

Pas testé, mais merci papoo.
Je garde en favori.
Ollivtesteur85
Messages : 10
Inscription : 08 avr. 2020, 07:44

Re: bash : pour les adeptes des versions bêta de domoticz (et les autres)

Message par Ollivtesteur85 »

Bonjour,

Merci pour ce programme update qui à l'air fort utile et pratique.

Cependant j'ai un problème permissions denied

une idée ?
j'ai essayé http://www.soft-alternative.com/raspber ... spbian.php

Mais en me connectant a mon raspberry en passant par termius , si j'essaye l'utilisateur root ça ne fonctionne pas .

Merci d'avance
Ollivtesteur85
Messages : 10
Inscription : 08 avr. 2020, 07:44

Re: bash : pour les adeptes des versions bêta de domoticz (et les autres)

Message par Ollivtesteur85 »

Bon je sais pas si j'aurais du faire un post pour ma question , mais vu que j'ai trouvé je l'ajoute ici .
donc pour ceux qui ne le savent pas , comme c'était mon cas il y a 10 min .
une fois qu'on a compilé un programme il faut le rendre utilisable avec la commande :

Code : Tout sélectionner

sudo chmod +x NomProg
et ensuite le démarrer avec la commande

Code : Tout sélectionner

./NomProg
corrigez moi si j'ai dit une bétises

Merci en tout cas pour le programme update,et merci de m'avoir permis d'apprendre de nouvelle chose sur le rasp et domoticz il y a quelque semaine en voyant ce post j'aurais paasé mon chemin en disant c'est pas pour moi …
c'est motivant !
papoo
Messages : 2029
Inscription : 10 janv. 2016, 11:29
Localisation : Limoges (87)
Contact :

Re: bash : pour les adeptes des versions bêta de domoticz (et les autres)

Message par papoo »

merci pour cette precision
heureux que cela fonctionne pour toi
domoticz beta/RaspBerry PI3 stretch
https://pon.fr github
denis_brasseur
Messages : 898
Inscription : 24 déc. 2018, 17:05
Localisation : (26)

Re: bash : pour les adeptes des versions bêta de domoticz (et les autres)

Message par denis_brasseur »

Au vue du grand nombre de message lié à la dernière version beta, ce script prend tout son sens.
Je l'ai mis en place il y a plus d'un an, et cela m'a permit une réinstallation très facile suite au passage sous buster.
Ne dispense pas d'une sauvegarde régulière de la base domoticz
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
victor81
Messages : 152
Inscription : 25 juin 2017, 09:59
Localisation : Tarn

Re: bash : pour les adeptes des versions bêta de domoticz (et les autres)

Message par victor81 »

bonjour
et merci pour ce script, ... j'ai été moi meme une victime par malaadresse de la nouvelle mise a jour ;)
j'ai cependant un probleme
le script est executtable pas de probleme mais, ... j'ai un probleme:
il arrete bien domoticz mais s'arrete la
en ligne de commande, j'ai cette indication

~ $ sudo ./update
[3;J


backup : 1

Update Beta : 2

Update Release : 3

Restore (/!\efface le repertoire domoticz/!\) : 4

Suppression archive : 5

Q : Quitter le Script

Choix :

1

lancement Backup

[ ok ] Stopping domoticz.sh (via systemctl): domoticz.service.
./update: 114: ./update: Syntax error: Bad fd number


quelqu'un a une idée? :/
merci de votre aide :)
Rpi 3b jessie sur ssd, rflink48, domoticz 4.9700, YANA
ma presentation: https://easydomoticz.com/forum/viewtopi ... =21&t=6449
denis_brasseur
Messages : 898
Inscription : 24 déc. 2018, 17:05
Localisation : (26)

Re: bash : pour les adeptes des versions bêta de domoticz (et les autres)

Message par denis_brasseur »

La commande Backup depuis le choix 1 du script va copier le dossier /home/pi/domoticz/ vers l'archive domoticz_backup.tar.gz
A vérifier si /home/pi/domoticz existe, ton chemin peut etre différent..
Ensuite, à vérifier, le fichier de sauvegarde update doit être placé dans le répertoire/home/pi/
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
Répondre