Aller au contenu

Rechercher dans la communauté

Affichage des résultats pour les étiquettes 'bash'.

  • Rechercher par étiquettes

    Saisir les étiquettes en les séparant par une virgule.
  • Rechercher par auteur

Type du contenu


Forums

  • Général
    • News et infos
    • Présentation
    • Vos commentaires et suggestions
    • Tests & Reviews & Comparatifs
    • Articles
  • Questions avant achat
    • Achats/Ventes entre particuliers
    • Achat en boutique
    • Questions avant achat
  • Discussions Générales
    • Avis et critiques des consommateurs
    • Nos membres racontent...
  • Bien démarrer avec votre Synology
    • Matériels Compatibles
    • Western Digital
    • Seagate
    • Logiciels Compatibles
    • Installation, Démarrage et Configuration
    • Tutoriels
    • Firmwares
    • Enterprise Collaboration
  • Accès BETA
  • Paquets
    • Paquets Officiels Synology
    • Paquets par SynoCommunity.com
    • Anciens paquets Officiels
  • Synology C2
    • C2 Password
    • C2 Backup
    • C2 Storage
    • C2 Hybrid Share
    • C2 Transfer
    • C2 Identity
  • La Communauté
    • 3rd Party Packages
    • Zone de Téléchargements
  • Support des logiciels Synology
    • Partage de fichiers et privilèges
    • Services Réseau
    • Système
    • Gestionnaire de Stockage
    • Sauvegarder et Restaurer
    • Accès à vos données
    • DS Audio / DS Vidéo / DS File / DS Photo+ / DS Cam / DS Finder / DS Get / DS MailPlus
    • Monitoring de votre Synology
  • Autres Produits Synology
    • BeeDrive - BDS70-1T
    • Embedded DataStation EDS14
    • Routeur 1900AC
    • Routeur RT2600AC
    • Routeur MR2200ac
    • Routeur RT6600ax
    • Routeur WRX560
    • Visual Station VS60 & VS80
    • 2.5” SATA SSD SAT5200
    • SSD NVMe M.2 série SNV3000
  • Divers
    • Newbie du monde Linux
    • Système d'exploitation
    • Internet et réseaux
    • Autres NAS
    • Underground / Modifications
  • A propos de ce forum
    • Aide & Support Technique
    • Le Bar
    • Suggestions
    • Corbeille

Blogs

  • NAS-Forum
  • The Pepito Blog
  • Denis Blog
  • renaud Blog
  • R@M16' Blog
  • Francis KOCH' Blog
  • cmaur' Blog

Rechercher les résultats dans…

Rechercher les résultats qui contiennent…


Date de création

  • Début

    Fin


Dernière mise à jour

  • Début

    Fin


Filtrer par nombre de…

Inscription

  • Début

    Fin


Groupe


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Pays / Ville


Intérêts


Mon NAS

2 résultats trouvés

  1. Remerciements Ce script est basé sur les travaux de mj0nsplex, martinorob et de michealespinola. J'ai traduit et modifié leurs scripts pour mettre à jour automatiquement Plex sur DSM 7. Dans un futur proche je ferai certainement un fork du script de michealespinola pour le rendre multi-version de DSM. Pré-requis Préparer un emplacement sur le NAS où stocker le fichier du script. Utilisation Télécharger le script sur votre ordinateur. Déposer votre script à l'emplacement que vous aurez précédemment défini sur votre NAS. Ouvrir Planificateur de tâches via le Panneau de configuration (uniquement visible en mode avancé). Cliquer sur Créer > Tâche planifiée > Script défini par l'utilisateur Dans l'onglet Général , nommer votre tâche et définissez l'utilisateur sur root . Dans l'onglet Programmer , choissisez la fréquence d'éxécution de votre tâche. Dans l'onglet Paramètres de tâche , coller le code suivant bash /*SCRIPT_EMPLACEMENT*/plex_update.sh . Remplacer *SCRIPT_EMPLACEMENT* par l'emplacement de votre script sur votre NAS et cliquer sur OK. Si vous souhaitez recevoir des courriels à chaque execution du script, cochez la case Envoyer les détails d'exécution par e-mail . Enjoy ! 🤟 Pour celles et ceux qui utilisent Github, vous pouvez retrouver le script directement sur mon repo.
  2. Bonjour, J'ai un soucis avec le script en fin de message (car il est un peu long...). La commande docker suivante ne passe pas : docker exec -u $ID_USER_NAS -it -w /$GITEA_BACKUP_DIR $(/usr/local/bin/docker ps -qf "name=$NOM_CONTENEUR") bash -c "/app/gitea/gitea dump -c /$GITEA_DATA_DIR/gitea/conf/app.ini" Et même la version sans variables ne passe pas : docker exec -u 1060 -it -w /backup-data $(/usr/local/bin/docker ps -qf "name=gitea") bash -c "/app/gitea/gitea dump -c /data/gitea/conf/app.ini" L'erreur retournée dans le mail de notification est : Que la commande soit précédée par un sudo ou non, ou que le chemin /usr/local/bin/ devant ou non, ça ne fonctionne pas mieux... Pour être sûr que la commande docker fonctionne dans uns script, j'ai fait un petit script test avec : docker ps Dans l'email de notification je reçois bien le résultat d'un docker ps avec la liste des conteneurs lancés. Donc la commande docker est bien reconnue. Ce qui ne va pas est donc ce qui suit... Je précise que lancer le script depuis une invite SSH (iTerm2 ou Windows Terminal), fonctionne bien : Donc voilà, comment rendre fonctionnelle cette ligne de commande permettant de faire la sauvegarde des données via ce qui est fourni par la doc officielle ? Merci d'avance. Le script lui même : ##============================================================================================== ## ## ## Script gitea-backup.sh ## ## ## ##============================================================================================== ## ## ## gitea-backup.sh [<méthode de backup>] ## ## <méthode de backup> est facultatif. S'il n'est pas spécifié, on fait les deux ! ## ## <méthode de backup> = gitea_dump ## ## = archive_dossier ## ## ## ##============================================================================================== ##============================================================================================== ## ## ## Objectif du script : faire une sauvegarde de l'installation Gitea @ Docker ## ## Il y a aura un shutdown du conteneur le temps de la sauvegarde afin que la base de ## ## données ne soit pas modifiée pendant le backup, puis le conteneur sera redémarré. ## ## ## ## Il faudra créer une tâche planifiée pour lancer la sauvegarde toutes les nuits, par ## ## exemple à 3h du matin. ## ## ## ##============================================================================================== ## ## ## Une méthode officielle de backup de la base de données est présente ici : ## ## https://docs.gitea.io/en-us/backup-and-restore/#backup-command-dump ## ## ## ##============================================================================================== # Récupération des arguments qu'on place dans des variables constantes declare -r nb_arg=$# # Nombre d'argument(s) fourni(s) au script. declare -r methode="$1" # 1er argument fourni if [ "$methode" = "--help" ] || [ "$methode" = "-help" ] || [ "$methode" = "-h" ] || [ "$methode" = "--h" ]; then echo "Le script gitea-backup.sh permet de faire une sauvegarde des données du conteneur Gitea." echo "Utilisation : gitea-backup.sh [<méthode de backup>]" echo "L'argument <méthode de backup> est facultatif. S'il n'est pas spécifié, on fait les deux !" echo " <méthode de backup> = gitea_dump" echo " = archive_dossier" echo exit 0 fi mode_backup=0 # 0 = aucune méthode indiquée ; 1 = gitea_dump ; 2 = archive_dossier ##──── ──────────────────────────────────────────────────────────────────────────────────────── ##──── ──────────────────────────────────────────────────────────────────────────────────────── ## ## ## VALEURS À PERSONNALISER ## ## ## ## Chemin d'accès vers votre dossier docker et vers le dossier de backup de gitea ## # Chemin du dossier qui contient le dossier des données (data) et des backups (backup-data) GITEA_DOCKER_DIR=/volume1/docker/gitea # Les noms des dossiers montés dans le conteneur doivent êtres identiques à ceux présents sur la machine hôte. Sinon faudra modifier le script... # Nom du dossier contenant les backups qui doit exister car il doit être monté dans le conteneur à l'aide du docker-compose.yml. GITEA_BACKUP_DIR=backup-data # Nom du dossier contenant les donneés de Gitea (data) GITEA_DATA_DIR=data # Nom du conteneur NOM_CONTENEUR=gitea # ID de l'utilisateur du NAS qui a les droits sur le conteneur ID_USER_NAS=1060 ##──── ──────────────────────────────────────────────────────────────────────────────────────── ##──── ──────────────────────────────────────────────────────────────────────────────────────── echo "$(date "+%R:%S - ") Script de sauvegarde des données du conteneur Gitea" ##============================================================================================== ## Vérification de la présence des dossiers du conteneur ## cd $GITEA_DOCKER_DIR num_erreur=$? # On stocke le code de retour de la commande précédente. if [ $num_erreur -ne 0 ]; then # Si ce code n'est pas 0, il y a eu une erreur, on arrète le script. echo " Le chemin '$GITEA_DOCKER_DIR' est invalide ! Veuillez vérifier le chemin d'accès..." echo " Abandon, avec code d'erreur $num_erreur" exit $num_erreur fi if [ ! -d "$GITEA_BACKUP_DIR" ] || [ ! -d "$GITEA_DATA_DIR" ]; then # Au moins un des dossiers n'existe pas if [ ! -d "$GITEA_BACKUP_DIR" ]; then # Le dossier $GITEA_BACKUP_DIR n'existe pas ! echo " Le dossier '$GITEA_BACKUP_DIR' n'existe pas !" fi if [ ! -d "$GITEA_DATA_DIR" ]; then # Le dossier $GITEA_DATA_DIR n'existe pas ! echo " Le dossier '$GITEA_DATA_DIR' n'existe pas !" fi echo " Abandon, avec code d'erreur $num_erreur" exit 999 else echo "-- Les dossiers $GITEA_BACKUP_DIR et $GITEA_DATA_DIR existent bien. On peut continuer." fi ##============================================================================================== ##============================================================================================== ## ## ## Définition du mode de backup à faire en fonction de la méthode donnée en argument ## case $methode in gitea_dump) # Méthode gitea_dump sélectionnée ## mode_backup=1 #echo "mode_backup=$mode_backup" ;; archive_dossier) # Méthode archive_dossier sélectionnée ## mode_backup=2 #echo "mode_backup=$mode_backup" ;; *) # Aucune méthode sélectionnée ## mode_backup=0 #echo "mode_backup=$mode_backup" ;; esac ##============================================================================================== ##============================================================================================== ## ## ## Partie concernant les sauvegardes ## if [ $mode_backup -eq 0 ] || [ $mode_backup -eq 1 ]; then # Aucune méthode n'est choisie ou bien méthode gitea_dump sélectionnée # Rappel des variables : # GITEA_DOCKER_DIR=/volume1/docker/gitea # GITEA_BACKUP_DIR=backup-data # GITEA_DATA_DIR=data # NOM_CONTENEUR=gitea # ID_USER_NAS=1060 echo "-- Sauvegarde via Gitea dump. (un peu chiant à restaurer...)" echo "###############################################################################" # Dans la commande suivante, les chemins d'accès donnés en paramètres sont des chemins d'accès à l'intérieur du conteneur, montés avec le docker-compose.yml. # Exemple de commande sans variables : # docker exec -u 1060 -it -w /backup-data $(docker ps -qf "name=gitea") bash -c '/app/gitea/gitea dump -c /data/gitea/conf/app.ini' docker exec -u $ID_USER_NAS -it -w /$GITEA_BACKUP_DIR $(/usr/local/bin/docker ps -qf "name=$NOM_CONTENEUR") bash -c "/app/gitea/gitea dump -c /$GITEA_DATA_DIR/gitea/conf/app.ini" num_erreur=$? # On stocke le code de retour de la commande précédente. if [ $num_erreur -ne 0 ]; then # Si ce code n'est pas 0, il y a eu une erreur, on arrète le script. echo "!!!!!! Erreur lors de la commande de backup gitea dump." #echo "!!!!!! Commande lancée :" #echo " docker exec -u $ID_USER_NAS -it -w /$GITEA_BACKUP_DIR $(docker ps -qf "name=$NOM_CONTENEUR") bash -c "/app/gitea/gitea dump -c /$GITEA_DATA_DIR/gitea/conf/app.ini"" echo "!!!!!! Abandon, avec code d'erreur $num_erreur" exit $num_erreur fi echo "###############################################################################" echo "-- Sauvegarde via Gitea dump terminée." fi if [ $mode_backup -eq 0 ] || [ $mode_backup -eq 2 ]; then # Aucune méthode n'est choisie ou bien méthode archive_dossier sélectionnée echo "-- Sauvegarde par création d'une archive de tout le dossier $GITEA_DATA_DIR" echo "###############################################################################" echo "-- Extinction du conteneur $NOM_CONTENEUR" cd $GITEA_DOCKER_DIR # Même si on est censé déjà être là... docker stop $NOM_CONTENEUR tar -czf $GITEA_BACKUP_DIR/Gitea-Data-Backup-`date +%Y-%m-%d--%Hh%Mm%Ss`.tar.gz ./$GITEA_DATA_DIR # On Linux/Unix, in order to backup directories you must use tar : # - to backup a directory : tar cf - directory | 7z a -si directory.tar.7z # - to restore your backup : 7z x -so directory.tar.7z | tar xf - tar cf - ./$GITEA_DATA_DIR | 7z a -si $GITEA_BACKUP_DIR/Gitea-Data-Backup-`date +%Y-%m-%d--%Hh%Mm%Ss`.7z echo "-- Archive de tout le dossier $GITEA_DATA_DIR créée." echo "-- Redémarrage du conteneur Gitea..." docker start $NOM_CONTENEUR echo "###############################################################################" echo "-- Processus de sauvegarde par création d'archive terminé." fi echo "$(date "+%R:%S - ") Fin du script de sauvegarde des donneés du conteneur Gitea" exit 0 ## ## ##==============================================================================================
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.