Console mode, BASH scripts, SH, SHell

 Charge moyenne sur 1mn : 0.27 Charge moyenne sur 5mn : 0.34 Charge moyenne sur 15mn : 0.34


How to use the console, to make scripts BASH, SHells ?

Make scripts BASH, SHells ! Use user files like .bashrc and .profile.





Site user blocks : Account info / user rights / summary

Sauvegardes de comptes utilisateurs Zimbra

  • Sauvegardes de comptes utilisateurs Zimbra
Faire des sauvegardes des comptes utilisateurs Zimbra en étant administrateur de la machine.

Informations :

Dates
  • Publish : : Friday 03 april 2020
  • Modification : Friday 03 april 2020

  • 818 views

Share :

Je vous met ici un script pour sauvegarder les comptes des utilisateurs de votre Webmail Zimbra html.

Il faut créer le répertoire mkdir /opt/zimbra/backup et lui attribuer les droits zimbra : chown zimbra.zimbra /opt/zimbra/backup

Puis executer le script suivant : backup-zimbra-usr.sh

Script avec 47 lignes

001#!/bin/bash
002#-------------------- INFORMATIONS -------------------------
003#
004#       Description : Sauvegarde d'un utilisateur zimbra
005#       Autheur : O.Romain Jaillet-ramey (orj@lab3w.fr)
006#       Date-create : 20160614
007#
008#-------------------- INFORMATIONS -------------------------
009
010DATE=`date +%Y-%m-%d-%H%M%S`
011BACKUP_FOLDER="/opt/zimbra/backup/"
012
013function import_compte()
014{
015        USER=$1
016        RESOLVE="skip modify reset"
017
018        /opt/zimbra/bin/zmmailbox -z -m $USER -t 0 postRestURL "//?fmt=tgz&resolve=reset"  /tmp/account.tgz
019
020}
021
022function backup_compte()
023{
024        USER=$1
025
026        /opt/zimbra/bin/zmmailbox -z -m $USER -t 0 getRestURL "//?fmt=tgz" > ${BACKUP_FOLDER}${USER}-$DATE.tar.gz
027
028}
029
030function backup_preferences()
031{
032        USER=$1
033        su - zimbra -c "zmprov getAccount $USER > ${BACKUP_FOLDER}${USER}-$DATE-settings.txt"
034}
035
036if [ $1 ]; then
037
038
039        backup_compte 
040        backup_preferences 
041
042fi
043
044
045if [ ! $1  ]; then
046        echo "Utiliser: ./backup-zimbra-usr.sh user@domain.tld"
047fi

On attribue les droits d'execution au script :
chown u+x /root/backup-zimbra-usr.sh et on lance le backup d'un utilisateur de cette manière /root/backup-zimbra-usr.sh user@domain.tld

Il y a aussi l'import postRestURL de notre sauvegarde zimbra utilisateur ;)

Le paramètre resolve= a plusieurs options :

Script avec 4 lignes


001"skip" ignore les doublons d'anciens éléments, c'est aussi la résolution de conflit par défaut.
002"modify" change d'anciens éléments.
003"reset" supprimera l'ancien sous-dossier (ou toute la boîte aux lettres si /).
004"replace" les supprimera et les réintroduira.

A la sauvegarde en plus de notre boîte mails, documents etc..
il y la configuration, les préférences liée à l'utilisateur
dans le fichier user@domain.tld-date-settings.txt

Script avec 53 lignes

001# name user@domain.tld
002cn: O.Romain Jaillet-ramey
003description: Administrative Account
004displayName: O.Romain Jaillet-ramey
005givenName: O
006initials: Romain
007mail: user@domain.tld
008mail: alias1@domain.tld
009mail: alias2@domain.tld
010mail: alias3@domain.tld
011mail: alias4@domain.tld
012objectClass: inetOrgPerson
013objectClass: zimbraAccount
014objectClass: amavisAccount
015sn: Jaillet-ramey
016uid: o.romain.jaillet-ramey
017userPassword: VALUE-BLOCKED
018zimbraAccountStatus: active
019zimbraAdminAuthTokenLifetime: 12h
020zimbraAdminSavedSearches: Comptes en maintenance : (zimbraAccountStatus=*maintenance*)
021zimbraAdminSavedSearches: Comptes verrouillés : (zimbraAccountStatus=*lockout*)
022zimbraAdminSavedSearches: Comptes non actifs : (!(zimbraAccountStatus=*active*))
023zimbraAdminSavedSearches: Comptes Admin : (|(zimbraIsAdminAccount=TRUE)(zimbraIsDelegatedAdminAccount=TRUE))
024zimbraAdminSavedSearches: Comptes clôturés : (zimbraAccountStatus=*closed*)
025zimbraAdminSavedSearches: Comptes externes : (zimbraIsExternalVirtualAccount=TRUE)
026zimbraAdminSavedSearches: Comptes inactifs (90 jours) : (zimbraLastLogonTimestamp<=###JSON:{func: ZaSearch.getTimestampByDays, args:[-90]}###)
027zimbraAdminSavedSearches: Comptes inactifs (30 jours) : (zimbraLastLogonTimestamp<=###JSON:{func: ZaSearch.getTimestampByDays, args:[-30]}###)
028zimbraAllowAnyFromAddress: FALSE
029zimbraArchiveAccountDateTemplate: yyyyMMdd
030zimbraArchiveAccountNameTemplate: ${USER}-${DATE}@${DOMAIN}.archive
031zimbraArchiveEnabled: FALSE
032zimbraAttachmentsBlocked: FALSE
033zimbraAttachmentsIndexingEnabled: TRUE
034zimbraAttachmentsViewInHtmlOnly: FALSE
035zimbraAuthTokenLifetime: 2d
036zimbraAuthTokens: 1018345349|1585918982572|8.6.0_GA_1153
037zimbraAuthTokens: 208497761|1585919168531|8.6.0_GA_1153
038zimbraAuthTokens: 857057044|1585960591540|8.6.0_GA_1153
039zimbraAuthTokens: 1368127013|1585961413830|8.6.0_GA_1153
040zimbraBatchedIndexingSize: 20
041zimbraCalendarCalDavSharedFolderCacheDuration: 1m
042zimbraCalendarKeepExceptionsOnSeriesTimeChange: FALSE
043zimbraCalendarMaxRevisions: 1
044zimbraCalendarResourceDoubleBookingAllowed: TRUE
045zimbraCalendarShowResourceTabs: TRUE
046zimbraCommunityHomeURL: /integration/zimbracollaboration
047zimbraCommunityUsernameMapping: uid
048zimbraContactAutoCompleteEmailFields: email,email2,email3,workEmail1,workEmail2,workEmail3
049zimbraContactAutoCompleteMaxResults: 20
050zimbraContactEmailFields: email,email2,email3,email4,email5,email6,email7,email8,email9,email10,workEmail1,workEmail2,workEmail3
051zimbraContactMaxNumEntries: 10000
052zimbraContactRankingTableSize: 200
053zimbraCreateTimestamp: 20160713041109Z

Script utilisé sur la "Release 8.6.0.GA.1153.UBUNTU14.64 UBUNTU14_64 FOSS edition".

Plus rapide et plus simple lors des migrations ^^ ;) Merci aux développeu(r)(se)s ZM :)

Liens Web Zimbra :


Cordialement,
Romain



Keywords :

mail MX MTA Zimbra Copias de seguridad de cuentas de usuario نسخ احتياطية من حسابات المستخدمين