SCROLL
Среднее время на прочтение: 4 мин.

Резервное копирование списка учетных записей и списков рассылки в Zimbra Collaboration 8.6

Рассмотрим как делать резервные копии списка учетных записей, а так же списков рассылки. Данный бекап может пригодится, в случае переноса почтового сервера на другую машину, да и в целом на случай непредвиденного сбоя, всегда можно будет восстановить быстро как учетные записи, так и группы рассылки.

 

JUQwJTk4JUQxJTgyJUQwJUIwJUQwJUJBJTIwJUQwJUJDJUQxJThCJTIwJUQwJUI4JUQwJUJDJUQwJUI1JUQwJUI1JUQwJUJDJUMyJUEwJUQxJTgwJUQwJUIwJUQwJUI3JUQwJUIyJUQwJUI1JUQxJTgwJUQwJUJEJUQxJTgzJUQxJTgyJUQxJThCJUQwJUI5JTIwJUQwJUJGJUQwJUJFJTIwJUQxJThEJUQxJTgyJUQwJUJFJUQwJUI5JUMyJUEwJUQxJTgxJUQxJTgyJUQwJUIwJUQxJTgyJUQxJThDJUQwJUI1JUMyJUEwJUQwJUJGJUQwJUJFJUQxJTg3JUQxJTgyJUQwJUJFJUQwJUIyJUQxJThCJUQwJUI5JTIwJUQxJTgxJUQwJUI1JUQxJTgwJUQwJUIyJUQwJUI1JUQxJTgwJUMyJUEwWmltYnJhJTIwQ29sbGFib3JhdGlvbiUyMDguNiUyMCVEMCVCRCVEMCVCMCUyMFVidW50dSUyMDE0LjA0JTIwVHJ1c3R5JTIwVGFoci4lMjAlRDAlOTQlRDAlQkIlRDElOEYlMjAlRDElODElRDAlQkUlRDAlQjclRDAlQjQlRDAlQjAlRDAlQkQlRDAlQjglRDElOEYlMjAlRDAlQjElRDAlQjUlRDAlQkElRDAlQjAlRDAlQkYlRDAlQjAlMjAlRDAlQjQlRDAlQjAlRDAlQkQlRDAlQkQlRDElOEIlRDElODUlMjAlRDAlQkMlRDElOEIlMjAlRDAlQjElRDElODMlRDAlQjQlRDAlQjUlRDAlQkMlMjAlRDAlQjglRDElODElRDAlQkYlRDAlQkUlRDAlQkIlRDElOEMlRDAlQjclRDAlQkUlRDAlQjIlRDAlQjAlRDElODIlRDElOEMlMjBiYXNoJTIwJUQxJTgxJUQwJUJBJUQxJTgwJUQwJUI4JUQwJUJGJUQxJTgyJUQxJThCLg==

 

Резервное копирование списка учетных записей

Создаем текстовый файл и делаем его исполняемым:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
nano backup_accounts.sh
sudo chmod +x backup_accounts.sh
nano backup_accounts.sh sudo chmod +x backup_accounts.sh
nano backup_accounts.sh
sudo chmod +x backup_accounts.sh

 

JUQwJTkyJTIwJUQxJTgxJUQwJUJFJUQwJUI3JUQwJUI0JUQwJUIwJUQwJUJEJUQwJUJEJUQxJThCJUQwJUI5JTIwJUQxJTgxJUQwJUJBJUQxJTgwJUQwJUI4JUQwJUJGJUQxJTgyJTIwJUQwJUIyJUQwJUJGJUQwJUI4JUQxJTgxJUQxJThCJUQwJUIyJUQwJUIwJUQwJUI1JUQwJUJDJTIwJUQxJTgxJUQwJUJCJUQwJUI1JUQwJUI0JUQxJTgzJUQxJThFJUQxJTg5JUQwJUI1JUQwJUI1JTIwKCVEMCVCMiUyMCVEMCVCRiVEMCVCMCVEMSU4MCVEMCVCMCVEMCVCQyVEMCVCNSVEMSU4MiVEMSU4MCVEMCVCMCVEMSU4NSUyMCVEMCVCRCVEMCVCMCVEMSU4MSVEMSU4MiVEMSU4MCVEMCVCRSVEMCVCNSVEMCVCQSUyMCVEMSU4MSVEMCVCQSVEMSU4MCVEMCVCOCVEMCVCRiVEMSU4MiVEMCVCMCUyMCVEMSU4MyVEMCVCQSVEMCVCMCVEMCVCNyVEMSU4QiVEMCVCMiVEMCVCMCVEMCVCNSVEMCVCQyUyMCVEMCVCNCVEMCVCMCVEMCVCRCVEMCVCRCVEMSU4QiVEMCVCNSUyMCVEMSU4MSVEMCVCMiVEMCVCRSVEMCVCOCklM0E=

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
#!/bin/bash
#####################
# Настройка скрипта #
#####################
# Место где хранить бекапы
Path="/home/jakonda/bkzm"
# Название домена
Domain="jakondo.ru"
# Текущая дата
Current_date=$(date +%d-%m-%Y)
# Временный файл для работы скрипта
Temp=$Path"/temp"
echo "################################################"
echo "# Резервное копирование списка учетных записей #"
echo "################################################"
echo ""
echo "Получение списка аккаунтов в домене $Domain..."
# Получаем список всех аккаунтов в указанном домене
/opt/zimbra/bin/zmprov -l gaa $Domain > $Temp
echo "Получение подробных сведений по аккаунтам..."
# Получаем развернутые данные по каждому аккаунту
for account in $( cat $Temp); do
# Фамилия
GN=$(/opt/zimbra/bin/zmprov ga $account | grep givenName)
# Имя
SN=$(/opt/zimbra/bin/zmprov ga $account | grep sn)
# Отчество
IN=$(/opt/zimbra/bin/zmprov ga $account | grep initials)
# Отображаемое полное имя
DN=$(/opt/zimbra/bin/zmprov ga $account | grep displayName)
# компануем полученные данные в одну строку и записываем ее в файл бекапа
echo "$account <$GN><$SN><$IN><$DN>" >> $Path"/$Current_date.accounts.txt"
done
echo "Создание бекапа списка аккаунтов завершено"
# Подчищаем после выполнения скрипта
rm -f $Temp
#!/bin/bash ##################### # Настройка скрипта # ##################### # Место где хранить бекапы Path="/home/jakonda/bkzm" # Название домена Domain="jakondo.ru" # Текущая дата Current_date=$(date +%d-%m-%Y) # Временный файл для работы скрипта Temp=$Path"/temp" echo "################################################" echo "# Резервное копирование списка учетных записей #" echo "################################################" echo "" echo "Получение списка аккаунтов в домене $Domain..." # Получаем список всех аккаунтов в указанном домене /opt/zimbra/bin/zmprov -l gaa $Domain > $Temp echo "Получение подробных сведений по аккаунтам..." # Получаем развернутые данные по каждому аккаунту for account in $( cat $Temp); do # Фамилия GN=$(/opt/zimbra/bin/zmprov ga $account | grep givenName) # Имя SN=$(/opt/zimbra/bin/zmprov ga $account | grep sn) # Отчество IN=$(/opt/zimbra/bin/zmprov ga $account | grep initials) # Отображаемое полное имя DN=$(/opt/zimbra/bin/zmprov ga $account | grep displayName) # компануем полученные данные в одну строку и записываем ее в файл бекапа echo "$account <$GN><$SN><$IN><$DN>" >> $Path"/$Current_date.accounts.txt" done echo "Создание бекапа списка аккаунтов завершено" # Подчищаем после выполнения скрипта rm -f $Temp
#!/bin/bash

#####################
# Настройка скрипта #
#####################
# Место где хранить бекапы
Path="/home/jakonda/bkzm"
# Название домена
Domain="jakondo.ru"
# Текущая дата
Current_date=$(date +%d-%m-%Y)
# Временный файл для работы скрипта
Temp=$Path"/temp"
echo "################################################"
echo "# Резервное копирование списка учетных записей #"
echo "################################################"
echo ""
echo "Получение списка аккаунтов в домене $Domain..."
# Получаем список всех аккаунтов в указанном домене
/opt/zimbra/bin/zmprov -l gaa $Domain > $Temp
echo "Получение подробных сведений по аккаунтам..."
# Получаем развернутые данные по каждому аккаунту
for account in $( cat $Temp); do
# Фамилия
GN=$(/opt/zimbra/bin/zmprov ga $account | grep givenName)
# Имя
SN=$(/opt/zimbra/bin/zmprov ga $account | grep sn)
# Отчество
IN=$(/opt/zimbra/bin/zmprov ga $account | grep initials)
# Отображаемое полное имя
DN=$(/opt/zimbra/bin/zmprov ga $account | grep displayName)
# компануем полученные данные в одну строку и записываем ее в файл бекапа
echo "$account <$GN><$SN><$IN><$DN>" >> $Path"/$Current_date.accounts.txt"
done
echo "Создание бекапа списка аккаунтов завершено"
# Подчищаем после выполнения скрипта
rm -f $Temp

 

JUQwJTkyJTIwJUQxJTg1JUQwJUJFJUQwJUI0JUQwJUI1JTIwJUQwJUIyJUQxJThCJUQwJUJGJUQwJUJFJUQwJUJCJUQwJUJEJUQwJUI1JUQwJUJEJUQwJUI4JUQxJThGJTIwJUQxJTgxJUQwJUJBJUQxJTgwJUQwJUI4JUQwJUJGJUQxJTgyJUQwJUIwJTJDJTIwJUQxJTgxJUQwJUJEJUQwJUIwJUQxJTg3JUQwJUIwJUQwJUJCJUQwJUIwJTIwJUQxJTg0JUQwJUJFJUQxJTgwJUQwJUJDJUQwJUI4JUQxJTgwJUQxJTgzJUQwJUI1JUQxJTgyJUQxJTgxJUQxJThGJTIwJUQxJTgxJUQwJUJGJUQwJUI4JUQxJTgxJUQwJUJFJUQwJUJBJTIwJUQwJUIyJUQxJTgxJUQwJUI1JUQxJTg1JTIwJUQwJUJGJUQwJUJFJUQxJTg3JUQxJTgyJUQwJUJFJUQwJUIyJUQxJThCJUQxJTg1JTIwJUQxJThGJUQxJTg5JUQwJUI4JUQwJUJBJUQwJUJFJUQwJUIyJTIwJUQwJUI4JUQwJUJDJUQwJUI1JUQxJThFJUQxJTg5JUQwJUI4JUQxJTg1JUQxJTgxJUQxJThGJTIwJUQwJUIyJTIwJUQxJTgzJUQwJUJBJUQwJUIwJUQwJUI3JUQwJUIwJUQwJUJEJUQwJUJEJUQwJUJFJUQwJUJDJTIwJUQwJUI0JUQwJUJFJUQwJUJDJUQwJUI1JUQwJUJEJUQwJUI1JTJDJTIwJUQwJUI3JUQwJUIwJUQxJTgyJUQwJUI1JUQwJUJDJTIwJUQwJUJGJUQwJUJFJTIwJUQwJUJBJUQwJUIwJUQwJUI2JUQwJUI0JUQwJUJFJUQwJUJDJUQxJTgzJTIwJUQwJUJGJUQwJUJFJUQxJTg3JUQxJTgyJUQwJUJFJUQwJUIyJUQwJUJFJUQwJUJDJUQxJTgzJTIwJUQxJThGJUQxJTg5JUQwJUI4JUQwJUJBJUQxJTgzJTIwJUQxJTgxJUQwJUJFJUQwJUI3JUQwJUI0JUQwJUIwJUQwJUI1JUQxJTgyJUQxJTgxJUQxJThGJTIwJUQwJUIxJUQwJUI1JUQwJUJBJUQwJUIwJUQwJUJGJTJDJTIwJUQwJUIyJTIwJUQwJUJBJUQwJUJFJUQwJUJEJUQxJTg2JUQwJUI1JTIwJUQxJTgxJUQwJUJFJUQwJUI3JUQwJUI0JUQwJUIwJUQwJUI1JUQxJTgyJUQxJTgxJUQxJThGJTIwJUQwJUJCJUQwJUJFJUQwJUIzJTIwJUQxJTg0JUQwJUIwJUQwJUI5JUQwJUJCLiUyMCVEMCU5RiVEMSU4MCVEMCVCOCVEMCVCQyVEMCVCNSVEMSU4MCUyMCVEMCVCMiVEMSU4QiVEMCVCMiVEMCVCRSVEMCVCNCVEMCVCMCUyMCVEMSU4MCVEMCVCMCVEMCVCMSVEMCVCRSVEMSU4MiVEMSU4QiUyMCVEMSU4MSVEMCVCQSVEMSU4MCVEMCVCOCVEMCVCRiVEMSU4MiVEMCVCMCUzQQ==

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
################################################
# Резервное копирование списка учетных записей #
################################################
Получение списка аккаунтов в домене jakondo.ru...
Получение подробных сведений по аккаунтам...
Создание бекапа списка аккаунтов завершено
################################################ # Резервное копирование списка учетных записей # ################################################ Получение списка аккаунтов в домене jakondo.ru... Получение подробных сведений по аккаунтам... Создание бекапа списка аккаунтов завершено
################################################
# Резервное копирование списка учетных записей #
################################################
Получение списка аккаунтов в домене jakondo.ru...
Получение подробных сведений по аккаунтам...
Создание бекапа списка аккаунтов завершено

 

JUQwJTlGJUQwJUJFJUQwJUJCJUQxJTgzJUQxJTg3JUQwJUI1JUQwJUJEJUQwJUJEJUQxJThCJUQwJUI5JTIwJUQxJTg0JUQwJUIwJUQwJUI5JUQwJUJCJTIwJUQwJUIxJUQwJUI1JUQwJUJBJUQwJUIwJUQwJUJGJUQwJUIwJTIwJUQwJUIyJUQxJThCJUQwJUIzJUQwJUJCJUQxJThGJUQwJUI0JUQwJUI4JUQxJTgyJTIwJUQwJUIyJUQwJUJFJUQxJTgyJTIwJUQxJTgyJUQwJUIwJUQwJUJBJTNB

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
jakonda1@jakondo.ru <><sn: Жаконда1><><displayName: Жаконда1>
jakonda2@jakondo.ru <><sn: Жаконда2><><displayName: Жаконда2>
jakonda@jakondo.ru <givenName: Иван><sn: Иванов><initials: Иванович><displayName: Иванов Иван Иванович>
jakond@jakondo.ru <givenName: Петя><sn: Петечкин><initials: Петин><displayName: Петечкин Петя Петин>
jakonda1@jakondo.ru <><sn: Жаконда1><><displayName: Жаконда1> jakonda2@jakondo.ru <><sn: Жаконда2><><displayName: Жаконда2> jakonda@jakondo.ru <givenName: Иван><sn: Иванов><initials: Иванович><displayName: Иванов Иван Иванович> jakond@jakondo.ru <givenName: Петя><sn: Петечкин><initials: Петин><displayName: Петечкин Петя Петин>
jakonda1@jakondo.ru <><sn: Жаконда1><><displayName: Жаконда1>
jakonda2@jakondo.ru <><sn: Жаконда2><><displayName: Жаконда2>
jakonda@jakondo.ru <givenName: Иван><sn: Иванов><initials: Иванович><displayName: Иванов Иван Иванович>
jakond@jakondo.ru <givenName: Петя><sn: Петечкин><initials: Петин><displayName: Петечкин Петя Петин>

 

Вот таким способом мы получили бекап всем имеющихся учетных записей, которые всегда можно будет восстановить, что ниже мы и рассмотрим…

 

Восстановление учетных записей из резервной копии

Создаем текстовый файл и делаем его исполняемым:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
nano restore_accounts.sh
sudo chmod +x restore_accounts.sh
nano restore_accounts.sh sudo chmod +x restore_accounts.sh
nano restore_accounts.sh
sudo chmod +x restore_accounts.sh

 

JUQwJTkyJTIwJUQxJTgxJUQwJUJFJUQwJUI3JUQwJUI0JUQwJUIwJUQwJUJEJUQwJUJEJUQxJThCJUQwJUI5JTIwJUQxJTgxJUQwJUJBJUQxJTgwJUQwJUI4JUQwJUJGJUQxJTgyJTIwJUQwJUIyJUQwJUJGJUQwJUI4JUQxJTgxJUQxJThCJUQwJUIyJUQwJUIwJUQwJUI1JUQwJUJDJTIwJUQxJTgxJUQwJUJCJUQwJUI1JUQwJUI0JUQxJTgzJUQxJThFJUQxJTg5JUQwJUI1JUQwJUI1JTIwKCVEMCVCMiUyMCVEMCVCRiVEMCVCMCVEMSU4MCVEMCVCMCVEMCVCQyVEMCVCNSVEMSU4MiVEMSU4MCVEMCVCMCVEMSU4NSUyMCVEMCVCRCVEMCVCMCVEMSU4MSVEMSU4MiVEMSU4MCVEMCVCRSVEMCVCNSVEMCVCQSUyMCVEMSU4MSVEMCVCQSVEMSU4MCVEMCVCOCVEMCVCRiVEMSU4MiVEMCVCMCUyMCVEMSU4MyVEMCVCQSVEMCVCMCVEMCVCNyVEMSU4QiVEMCVCMiVEMCVCMCVEMCVCNSVEMCVCQyUyMCVEMCVCNCVEMCVCMCVEMCVCRCVEMCVCRCVEMSU4QiVEMCVCNSUyMCVEMSU4MSVEMCVCMiVEMCVCRSVEMCVCOCklM0E=

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
#!/bin/bash
#####################
# Настройки скрипта #
#####################
# Путь к месту бекапа списка пользователей
Path="/home/jakonda/bkzm"
# Название домена
Domain="jakondo.ru"
echo "#################################################################"
echo "# Восстановление из резервной копии списка пользователей Zimbra #"
echo "#################################################################"
echo ""
# Запрос ввода имени почтового ящика
read -p "Введите за какое число восстановить аккаунты пользователей: " Date
echo "Время начала восстановления аккаунтов - $(date +%T)"
echo ""
# Запоминаем время начала восстановление
Begin_time=$(date +%s)
# Проходимся по каждому аккаунту в списке и восстанавливаем его
cat $Path"/"$Date".accounts.txt"| while read account; do
# Отделяем имя аккаунта почты
AC=$(echo $account | sed -r 's/ <.+//')
# Отделяем Имя
if Result=$(echo $account | grep 'givenName'); then
GN=$(echo $account | sed 's|.*<givenName: ||'|sed -r 's/>.+//')
else
GN=$(echo "")
fi
# Отделяем Фамилия
if Result=$(echo $account | grep 'sn'); then
SN=$(echo $account | sed 's|.*<sn: ||'|sed -r 's/>.+//')
else
SN=$(echo "")
fi
# Отделяем Отчество
if Result=$(echo $account | grep 'initials'); then
IN=$(echo $account | sed 's|.*<initials: ||'|sed -r 's/>.+//')
else
IN=$(echo "")
fi
# Отделяем Отображаемое имя
if Result=$(echo $account | grep 'displayName'); then
DN=$(echo $account | sed 's|.*<displayName: ||'|sed -r 's/>.*//')
else
DN=$(echo)
fi
# Создаем почтовый аккаунт
echo "Восстановление аккаунта $AC..."
Result=$(/opt/zimbra/bin/zmprov ca $AC Aa1234567 displayName "$DN" givenName "$GN" sn "$SN" initials "$IN")
if [ $? -eq 0 ]; then
echo -n "$(tput hpa $(tput cols))$(tput cub 6) [OK]"
echo
else
echo -n "$(tput hpa $(tput cols))$(tput cub 6) [FAIL]"
echo
fi
done
# Вычисление времени работы бекапа почтовых ящиков
End_time=$(date +%s)
Elapsed_time=$(expr $End_time - $Begin_time)
Hours=$(($Elapsed_time / 3600))
Elapsed_time=$(($Elapsed_time - $Hours * 3600))
Minutes=$(($Elapsed_time / 60))
Seconds=$(($Elapsed_time - $Minutes * 60))
echo "Затрачено времени на восстановление аккаунтов : $Hours час $Minutes минут $Seconds секунд"
#!/bin/bash ##################### # Настройки скрипта # ##################### # Путь к месту бекапа списка пользователей Path="/home/jakonda/bkzm" # Название домена Domain="jakondo.ru" echo "#################################################################" echo "# Восстановление из резервной копии списка пользователей Zimbra #" echo "#################################################################" echo "" # Запрос ввода имени почтового ящика read -p "Введите за какое число восстановить аккаунты пользователей: " Date echo "Время начала восстановления аккаунтов - $(date +%T)" echo "" # Запоминаем время начала восстановление Begin_time=$(date +%s) # Проходимся по каждому аккаунту в списке и восстанавливаем его cat $Path"/"$Date".accounts.txt"| while read account; do # Отделяем имя аккаунта почты AC=$(echo $account | sed -r 's/ <.+//') # Отделяем Имя if Result=$(echo $account | grep 'givenName'); then GN=$(echo $account | sed 's|.*<givenName: ||'|sed -r 's/>.+//') else GN=$(echo "") fi # Отделяем Фамилия if Result=$(echo $account | grep 'sn'); then SN=$(echo $account | sed 's|.*<sn: ||'|sed -r 's/>.+//') else SN=$(echo "") fi # Отделяем Отчество if Result=$(echo $account | grep 'initials'); then IN=$(echo $account | sed 's|.*<initials: ||'|sed -r 's/>.+//') else IN=$(echo "") fi # Отделяем Отображаемое имя if Result=$(echo $account | grep 'displayName'); then DN=$(echo $account | sed 's|.*<displayName: ||'|sed -r 's/>.*//') else DN=$(echo) fi # Создаем почтовый аккаунт echo "Восстановление аккаунта $AC..." Result=$(/opt/zimbra/bin/zmprov ca $AC Aa1234567 displayName "$DN" givenName "$GN" sn "$SN" initials "$IN") if [ $? -eq 0 ]; then echo -n "$(tput hpa $(tput cols))$(tput cub 6) [OK]" echo else echo -n "$(tput hpa $(tput cols))$(tput cub 6) [FAIL]" echo fi done # Вычисление времени работы бекапа почтовых ящиков End_time=$(date +%s) Elapsed_time=$(expr $End_time - $Begin_time) Hours=$(($Elapsed_time / 3600)) Elapsed_time=$(($Elapsed_time - $Hours * 3600)) Minutes=$(($Elapsed_time / 60)) Seconds=$(($Elapsed_time - $Minutes * 60)) echo "Затрачено времени на восстановление аккаунтов : $Hours час $Minutes минут $Seconds секунд"
#!/bin/bash

#####################
# Настройки скрипта #
#####################
# Путь к месту бекапа списка пользователей
Path="/home/jakonda/bkzm"
# Название домена
Domain="jakondo.ru"
echo "#################################################################"
echo "# Восстановление из резервной копии списка пользователей Zimbra #"
echo "#################################################################"
echo ""
# Запрос ввода имени почтового ящика
read -p "Введите за какое число восстановить аккаунты пользователей: " Date
echo "Время начала восстановления аккаунтов - $(date +%T)"
echo ""
# Запоминаем время начала восстановление
Begin_time=$(date +%s)
# Проходимся по каждому аккаунту в списке и восстанавливаем его
cat $Path"/"$Date".accounts.txt"| while read account; do
# Отделяем имя аккаунта почты
AC=$(echo $account | sed -r 's/ <.+//')
# Отделяем Имя
if Result=$(echo $account | grep 'givenName'); then
GN=$(echo $account | sed 's|.*<givenName: ||'|sed -r 's/>.+//')
else
GN=$(echo "")
fi
# Отделяем Фамилия
if Result=$(echo $account | grep 'sn'); then
SN=$(echo $account | sed 's|.*<sn: ||'|sed -r 's/>.+//')
else
SN=$(echo "")
fi
# Отделяем Отчество
if Result=$(echo $account | grep 'initials'); then
IN=$(echo $account | sed 's|.*<initials: ||'|sed -r 's/>.+//')
else
IN=$(echo "")
fi
# Отделяем Отображаемое имя
if Result=$(echo $account | grep 'displayName'); then
DN=$(echo $account | sed 's|.*<displayName: ||'|sed -r 's/>.*//')
else
DN=$(echo)
fi
# Создаем почтовый аккаунт
echo "Восстановление аккаунта $AC..."
Result=$(/opt/zimbra/bin/zmprov ca $AC Aa1234567 displayName "$DN" givenName "$GN" sn "$SN" initials "$IN")
if [ $? -eq 0 ]; then
echo -n "$(tput hpa $(tput cols))$(tput cub 6) [OK]"
echo
else
echo -n "$(tput hpa $(tput cols))$(tput cub 6) [FAIL]"
echo
fi
done
# Вычисление времени работы бекапа почтовых ящиков
End_time=$(date +%s)
Elapsed_time=$(expr $End_time - $Begin_time)
Hours=$(($Elapsed_time / 3600))
Elapsed_time=$(($Elapsed_time - $Hours * 3600))
Minutes=$(($Elapsed_time / 60))
Seconds=$(($Elapsed_time - $Minutes * 60))
echo "Затрачено времени на восстановление аккаунтов : $Hours час $Minutes минут $Seconds секунд"

 

В ходе выполнения скрипта, из списка бекапа аккаунтов разбирается каждая строка и при создании аккаунтов восстанавливаются данные такие как ФИО и отображаемое имя, по-умолчанию задается пароль Aa1234567. Пример вывода работы скрипта:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
#################################################################
# Восстановление из резервной копии списка пользователей Zimbra #
#################################################################
Введите за какое число восстановить аккаунты пользователей: 28-01-2017
Время начала восстановления аккаунтов - 21:43:19
Восстановление аккаунта jakonda1@jakondo.ru...[OK]
Восстановление аккаунта jakonda2@jakondo.ru...[OK]
Восстановление аккаунта jakonda@jakondo.ru...[OK]
Восстановление аккаунта jakond@jakondo.ru...[OK]
Затрачено времени на восстановление аккаунтов : 0 час 0 минут 56 секунд
################################################################# # Восстановление из резервной копии списка пользователей Zimbra # ################################################################# Введите за какое число восстановить аккаунты пользователей: 28-01-2017 Время начала восстановления аккаунтов - 21:43:19 Восстановление аккаунта jakonda1@jakondo.ru...[OK] Восстановление аккаунта jakonda2@jakondo.ru...[OK] Восстановление аккаунта jakonda@jakondo.ru...[OK] Восстановление аккаунта jakond@jakondo.ru...[OK] Затрачено времени на восстановление аккаунтов : 0 час 0 минут 56 секунд
#################################################################
# Восстановление из резервной копии списка пользователей Zimbra #
#################################################################
Введите за какое число восстановить аккаунты пользователей: 28-01-2017
Время начала восстановления аккаунтов - 21:43:19
Восстановление аккаунта jakonda1@jakondo.ru...[OK]
Восстановление аккаунта jakonda2@jakondo.ru...[OK]
Восстановление аккаунта jakonda@jakondo.ru...[OK]
Восстановление аккаунта jakond@jakondo.ru...[OK]
Затрачено времени на восстановление аккаунтов : 0 час 0 минут 56 секунд

 

Таким способом мы удобно восстанавливаем почтовые аккаунты. Теперь рассмотрим как создавать резервные копии списков пользователей и так же их восстанавливать.

 

Резервное копирование списков рассылки

JUQwJUExJUQwJUJFJUQwJUI3JUQwJUI0JUQwJUIwJUQwJUI1JUQwJUJDJTIwJUQxJTgyJUQwJUI1JUQwJUJBJUQxJTgxJUQxJTgyJUQwJUJFJUQwJUIyJUQxJThCJUQwJUI5JTIwJUQxJTg0JUQwJUIwJUQwJUI5JUQwJUJCJTIwJUQwJUI4JTIwJUQwJUI0JUQwJUI1JUQwJUJCJUQwJUIwJUQwJUI1JUQwJUJDJTIwJUQwJUI1JUQwJUIzJUQwJUJFJTIwJUQwJUI4JUQxJTgxJUQwJUJGJUQwJUJFJUQwJUJCJUQwJUJEJUQxJThGJUQwJUI1JUQwJUJDJUQxJThCJUQwJUJDJTNB

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
nano backup_lists.sh
sudo chmod +x backup_lists.sh
nano backup_lists.sh sudo chmod +x backup_lists.sh
nano backup_lists.sh
sudo chmod +x backup_lists.sh

 

JUQwJTkyJTIwJUQxJTgxJUQwJUJFJUQwJUI3JUQwJUI0JUQwJUIwJUQwJUJEJUQwJUJEJUQxJThCJUQwJUI5JTIwJUQxJTgxJUQwJUJBJUQxJTgwJUQwJUI4JUQwJUJGJUQxJTgyJTIwJUQwJUIyJUQwJUJGJUQwJUI4JUQxJTgxJUQxJThCJUQwJUIyJUQwJUIwJUQwJUI1JUQwJUJDJTIwJUQxJTgxJUQwJUJCJUQwJUI1JUQwJUI0JUQxJTgzJUQxJThFJUQxJTg5JUQwJUI1JUQwJUI1JTIwKCVEMCVCMiUyMCVEMCVCRiVEMCVCMCVEMSU4MCVEMCVCMCVEMCVCQyVEMCVCNSVEMSU4MiVEMSU4MCVEMCVCMCVEMSU4NSUyMCVEMCVCRCVEMCVCMCVEMSU4MSVEMSU4MiVEMSU4MCVEMCVCRSVEMCVCNSVEMCVCQSUyMCVEMSU4MSVEMCVCQSVEMSU4MCVEMCVCOCVEMCVCRiVEMSU4MiVEMCVCMCUyMCVEMSU4MyVEMCVCQSVEMCVCMCVEMCVCNyVEMSU4QiVEMCVCMiVEMCVCMCVEMCVCNSVEMCVCQyUyMCVEMCVCNCVEMCVCMCVEMCVCRCVEMCVCRCVEMSU4QiVEMCVCNSUyMCVEMSU4MSVEMCVCMiVEMCVCRSVEMCVCOCklM0E=

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
#!/bin/bash
#####################
# Настройка скрипта #
#####################
# Место где хранить бекапы
Path="/home/jakonda/bkzm/lists"
# Название домена
Domain="jakondo.ru"
# Текущая дата
Current_date=$(date +%d-%m-%Y)
# Временный файл для работы скрипта
Temp=$Path"/temp"
echo "##########################################"
echo "# Резервное копирование списков рассылки #"
echo "##########################################"
echo ""
echo "Время начала бекапа списков рассылки - $(date +%T)"
# Запоминаем время начала бекапа
Begin_time=$(date +%s)
echo ""
# Создаем катаолг под бекап на текущую дату
mkdir -p $Path/$Current_date/
# Получаем списки рассылок в указанном домене
echo "Получение списка рассылки в домене $Domain..."
/opt/zimbra/bin/zmprov gadl > $Temp
# Получаем адресатов в рассылках
cat $Temp | while read accounts_list; do
echo "Получение адресатов в рассылке $accounts_list..."
/opt/zimbra/bin/zmprov gdl $accounts_list | grep zimbraMailForwardingAddress: | awk {'print $2'} > $Path/$Current_date/$accounts_list
if [ $? -eq 0 ]; then
echo -n "$(tput hpa $(tput cols))$(tput cub 6)[OK]"
echo
else
echo -n "$(tput hpa $(tput cols))$(tput cub 6)[FAIL]"
echo
fi
done
echo "Создание бекапа списков рассылки"
# Подчищаем после выполнения скрипта
rm -f $Temp
# Вычисление времени работы бекапа списков рассылки
End_time=$(date +%s)
Elapsed_time=$(expr $End_time - $Begin_time)
Hours=$(($Elapsed_time / 3600))
Elapsed_time=$(($Elapsed_time - $Hours * 3600))
Minutes=$(($Elapsed_time / 60))
Seconds=$(($Elapsed_time - $Minutes * 60))
echo "Затрачено времени на резервное копирование : $Hours час $Minutes минут $Seconds секунд"
#!/bin/bash ##################### # Настройка скрипта # ##################### # Место где хранить бекапы Path="/home/jakonda/bkzm/lists" # Название домена Domain="jakondo.ru" # Текущая дата Current_date=$(date +%d-%m-%Y) # Временный файл для работы скрипта Temp=$Path"/temp" echo "##########################################" echo "# Резервное копирование списков рассылки #" echo "##########################################" echo "" echo "Время начала бекапа списков рассылки - $(date +%T)" # Запоминаем время начала бекапа Begin_time=$(date +%s) echo "" # Создаем катаолг под бекап на текущую дату mkdir -p $Path/$Current_date/ # Получаем списки рассылок в указанном домене echo "Получение списка рассылки в домене $Domain..." /opt/zimbra/bin/zmprov gadl > $Temp # Получаем адресатов в рассылках cat $Temp | while read accounts_list; do echo "Получение адресатов в рассылке $accounts_list..." /opt/zimbra/bin/zmprov gdl $accounts_list | grep zimbraMailForwardingAddress: | awk {'print $2'} > $Path/$Current_date/$accounts_list if [ $? -eq 0 ]; then echo -n "$(tput hpa $(tput cols))$(tput cub 6)[OK]" echo else echo -n "$(tput hpa $(tput cols))$(tput cub 6)[FAIL]" echo fi done echo "Создание бекапа списков рассылки" # Подчищаем после выполнения скрипта rm -f $Temp # Вычисление времени работы бекапа списков рассылки End_time=$(date +%s) Elapsed_time=$(expr $End_time - $Begin_time) Hours=$(($Elapsed_time / 3600)) Elapsed_time=$(($Elapsed_time - $Hours * 3600)) Minutes=$(($Elapsed_time / 60)) Seconds=$(($Elapsed_time - $Minutes * 60)) echo "Затрачено времени на резервное копирование : $Hours час $Minutes минут $Seconds секунд"
#!/bin/bash

#####################
# Настройка скрипта #
#####################
# Место где хранить бекапы
Path="/home/jakonda/bkzm/lists"
# Название домена
Domain="jakondo.ru"
# Текущая дата
Current_date=$(date +%d-%m-%Y)
# Временный файл для работы скрипта
Temp=$Path"/temp"
echo "##########################################"
echo "# Резервное копирование списков рассылки #"
echo "##########################################"
echo ""
echo "Время начала бекапа списков рассылки - $(date +%T)"
# Запоминаем время начала бекапа
Begin_time=$(date +%s)
echo ""
# Создаем катаолг под бекап на текущую дату
mkdir -p $Path/$Current_date/
# Получаем списки рассылок в указанном домене
echo "Получение списка рассылки в домене $Domain..."
/opt/zimbra/bin/zmprov gadl > $Temp
# Получаем адресатов в рассылках
cat $Temp | while read accounts_list; do
echo "Получение адресатов в рассылке $accounts_list..."
/opt/zimbra/bin/zmprov gdl $accounts_list | grep zimbraMailForwardingAddress: | awk {'print $2'} > $Path/$Current_date/$accounts_list
if [ $? -eq 0 ]; then
echo -n "$(tput hpa $(tput cols))$(tput cub 6)[OK]"
echo
else
echo -n "$(tput hpa $(tput cols))$(tput cub 6)[FAIL]"
echo
fi
done
echo "Создание бекапа списков рассылки"
# Подчищаем после выполнения скрипта
rm -f $Temp
# Вычисление времени работы бекапа списков рассылки
End_time=$(date +%s)
Elapsed_time=$(expr $End_time - $Begin_time)
Hours=$(($Elapsed_time / 3600))
Elapsed_time=$(($Elapsed_time - $Hours * 3600))
Minutes=$(($Elapsed_time / 60))
Seconds=$(($Elapsed_time - $Minutes * 60))
echo "Затрачено времени на резервное копирование : $Hours час $Minutes минут $Seconds секунд"

 

В ходе выполнения скрипта обрабатываются все имеющиеся списки рассылок и каждая из список рассылок резервируется с их адресатами. Пример вывода работы скрипта:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
##########################################
# Резервное копирование списков рассылки #
##########################################
Время начала бекапа списков рассылки - 20:28:08
Получение списка рассылки в домене jakondo.ru...
Получение адресатов в рассылке test1@jakondo.ru... [OK]
Получение адресатов в рассылке test2@jakondo.ru... [OK]
Создание бекапа списков рассылки
Затрачено времени на резервное копирование : 0 час 0 минут 19 секунд
########################################## # Резервное копирование списков рассылки # ########################################## Время начала бекапа списков рассылки - 20:28:08 Получение списка рассылки в домене jakondo.ru... Получение адресатов в рассылке test1@jakondo.ru... [OK] Получение адресатов в рассылке test2@jakondo.ru... [OK] Создание бекапа списков рассылки Затрачено времени на резервное копирование : 0 час 0 минут 19 секунд
##########################################
# Резервное копирование списков рассылки #
##########################################
Время начала бекапа списков рассылки - 20:28:08
Получение списка рассылки в домене jakondo.ru...
Получение адресатов в рассылке test1@jakondo.ru... [OK]
Получение адресатов в рассылке test2@jakondo.ru... [OK]
Создание бекапа списков рассылки
Затрачено времени на резервное копирование : 0 час 0 минут 19 секунд

 

JUQwJTkxJUQxJThCJUQxJTgxJUQxJTgyJUQxJTgwJUQwJUJFJTJDJTIwJUQwJUJCJUQwJUI1JUQwJUIzJUQwJUJBJUQwJUJFJTIwJUQwJUI4JTIwJUQwJUI4JUQwJUJEJUQxJTg0JUQwJUJFJUQxJTgwJUQwJUJDJUQwJUIwJUQxJTgyJUQwJUI4JUQwJUIyJUQwJUJEJUQwJUJFJTIwJUQwJUJDJUQxJThCJTIwJUQwJUI3JUQwJUI0JUQwJUI1JUQwJUJCJUQwJUIwJUQwJUJCJUQwJUI4JTIwJUQxJTgwJUQwJUI1JUQwJUI3JUQwJUI1JUQxJTgwJUQwJUIyJUQwJUJEJUQxJThCJUQwJUI1JTIwJUQwJUJBJUQwJUJFJUQwJUJGJUQwJUI4JUQwJUI4JTIwJUQxJTgxJUQwJUJGJUQwJUI4JUQxJTgxJUQwJUJBJUQwJUJFJUQwJUIyJTIwJUQxJTgwJUQwJUIwJUQxJTgxJUQxJTgxJUQxJThCJUQwJUJCJUQwJUJBJUQwJUI4LiUyMCVEMCVBMiVEMCVCNSVEMCVCRiVEMCVCNSVEMSU4MCVEMSU4QyUyMCVEMSU4MCVEMCVCMCVEMCVCNyVEMCVCMSVEMCVCNSVEMSU4MCVEMCVCNSVEMCVCQyUyMCVEMCVCQSVEMCVCMCVEMCVCQSUyMCVEMCVCMiVEMCVCRSVEMSU4MSVEMSU4MSVEMSU4MiVEMCVCMCVEMCVCRCVEMCVCRSVEMCVCMiVEMCVCOCVEMSU4MiVEMSU4QyUyMCVEMCVCOCVEMCVCNyUyMCVEMSU4MCVEMCVCNSVEMCVCNyVEMCVCNSVEMSU4MCVEMCVCMiVEMCVCRCVEMCVCRSVEMCVCOSUyMCVEMCVCQSVEMCVCRSVEMCVCRiVEMCVCOCVEMCVCOCUyMCVEMSU4MSVEMCVCRiVEMCVCOCVEMSU4MSVEMCVCQSVEMCVCOCUyMCVEMSU4MCVEMCVCMCVEMSU4MSVEMSU4MSVEMSU4QiVEMCVCQiVEMCVCRSVEMCVCQS4=

 

Восстановление списков рассылки из резервной копии

JUQwJUExJUQwJUJFJUQwJUI3JUQwJUI0JUQwJUIwJUQwJUI1JUQwJUJDJTIwJUQxJTgyJUQwJUI1JUQwJUJBJUQxJTgxJUQxJTgyJUQwJUJFJUQwJUIyJUQxJThCJUQwJUI5JTIwJUQxJTg0JUQwJUIwJUQwJUI5JUQwJUJCJTIwJUQwJUI4JTIwJUQwJUI0JUQwJUI1JUQwJUJCJUQwJUIwJUQwJUI1JUQwJUJDJTIwJUQwJUI1JUQwJUIzJUQwJUJFJTIwJUQwJUI4JUQxJTgxJUQwJUJGJUQwJUJFJUQwJUJCJUQwJUJEJUQxJThGJUQwJUI1JUQwJUJDJUQxJThCJUQwJUJDJTNB

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
nano restore_lists.sh
sudo chmod +x restore_lists.sh
nano restore_lists.sh sudo chmod +x restore_lists.sh
nano restore_lists.sh
sudo chmod +x restore_lists.sh

 

В созданный скрипт вписываем следующее (в параметрах настроек скрипта указываем данные свои):

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
#!/bin/bash
#####################
# Настройки скрипта #
#####################
# Путь к месту бекапа списка пользователей
Path="/home/jakonda/bkzm/lists"
# Название домена
Domain="jakondo.ru"
# Временный файл для работы скрипта
Temp=$Path"/temp"
echo "######################################################"
echo "# Восстановление из резервной копии списков рассылки #"
echo "######################################################"
echo ""
# Запрос даты, за какое число нужно восстановить бекап
read -p "Введите дату за какое число восстановить из бекапа (прим. 01-01-1985): " Date
# Проверим наличия бекапов за указанную дату
if ! [ -d $Path/$Date ]; then
echo 'Нет бекапов на указанную дату... Завершаем работу скрипта.'
exit
fi
echo "Время начала восстановление списков рассылки - $(date +%T)"
# Запоминаем время начала восстановления
Begin_time=$(date +%s)
# Восстанавливаем списки рассылок из бекапа
for file in $Path/$Date/*; do
Name=$(ls $file | sed -e 's/^.*\///')
echo "Восстанавливаем список рассылки $Name"
Result=$(/opt/zimbra/bin/zmprov cdl $Name)
if [ $? -eq 0 ]; then
echo -n "$(tput hpa $(tput cols))$(tput cub 6)[OK]"
echo
echo "Восстановление участников рассылки $Name"
FullName=$(ls $file)
cat $FullName | while read account; do
Result=$(/opt/zimbra/bin/zmprov adlm $Name $account)
done
echo
else
echo -n "$(tput hpa $(tput cols))$(tput cub 6)[FAIL]"
echo
fi
done
# Вычисление времени работы бекапа почтовых ящиков
End_time=$(date +%s)
Elapsed_time=$(expr $End_time - $Begin_time)
Hours=$(($Elapsed_time / 3600))
Elapsed_time=$(($Elapsed_time - $Hours * 3600))
Minutes=$(($Elapsed_time / 60))
Seconds=$(($Elapsed_time - $Minutes * 60))
echo "Затрачено времени на восстановление списка рассылок : $Hours час $Minutes минут $Seconds секунд"
#!/bin/bash ##################### # Настройки скрипта # ##################### # Путь к месту бекапа списка пользователей Path="/home/jakonda/bkzm/lists" # Название домена Domain="jakondo.ru" # Временный файл для работы скрипта Temp=$Path"/temp" echo "######################################################" echo "# Восстановление из резервной копии списков рассылки #" echo "######################################################" echo "" # Запрос даты, за какое число нужно восстановить бекап read -p "Введите дату за какое число восстановить из бекапа (прим. 01-01-1985): " Date # Проверим наличия бекапов за указанную дату if ! [ -d $Path/$Date ]; then echo 'Нет бекапов на указанную дату... Завершаем работу скрипта.' exit fi echo "Время начала восстановление списков рассылки - $(date +%T)" # Запоминаем время начала восстановления Begin_time=$(date +%s) # Восстанавливаем списки рассылок из бекапа for file in $Path/$Date/*; do Name=$(ls $file | sed -e 's/^.*\///') echo "Восстанавливаем список рассылки $Name" Result=$(/opt/zimbra/bin/zmprov cdl $Name) if [ $? -eq 0 ]; then echo -n "$(tput hpa $(tput cols))$(tput cub 6)[OK]" echo echo "Восстановление участников рассылки $Name" FullName=$(ls $file) cat $FullName | while read account; do Result=$(/opt/zimbra/bin/zmprov adlm $Name $account) done echo else echo -n "$(tput hpa $(tput cols))$(tput cub 6)[FAIL]" echo fi done # Вычисление времени работы бекапа почтовых ящиков End_time=$(date +%s) Elapsed_time=$(expr $End_time - $Begin_time) Hours=$(($Elapsed_time / 3600)) Elapsed_time=$(($Elapsed_time - $Hours * 3600)) Minutes=$(($Elapsed_time / 60)) Seconds=$(($Elapsed_time - $Minutes * 60)) echo "Затрачено времени на восстановление списка рассылок : $Hours час $Minutes минут $Seconds секунд"
#!/bin/bash

#####################
# Настройки скрипта #
#####################
# Путь к месту бекапа списка пользователей
Path="/home/jakonda/bkzm/lists"
# Название домена
Domain="jakondo.ru"
# Временный файл для работы скрипта
Temp=$Path"/temp"
echo "######################################################"
echo "# Восстановление из резервной копии списков рассылки #"
echo "######################################################"
echo ""
# Запрос даты, за какое число нужно восстановить бекап
read -p "Введите дату за какое число восстановить из бекапа (прим. 01-01-1985): " Date
# Проверим наличия бекапов за указанную дату
if ! [ -d $Path/$Date ]; then
echo 'Нет бекапов на указанную дату... Завершаем работу скрипта.'
exit
fi
echo "Время начала восстановление списков рассылки - $(date +%T)"
# Запоминаем время начала восстановления
Begin_time=$(date +%s)
# Восстанавливаем списки рассылок из бекапа
for file in $Path/$Date/*; do
Name=$(ls $file | sed -e 's/^.*\///')
echo "Восстанавливаем список рассылки $Name"
Result=$(/opt/zimbra/bin/zmprov cdl $Name)
if [ $? -eq 0 ]; then
echo -n "$(tput hpa $(tput cols))$(tput cub 6)[OK]"
echo
echo "Восстановление участников рассылки $Name"
FullName=$(ls $file)
cat $FullName | while read account; do
Result=$(/opt/zimbra/bin/zmprov adlm $Name $account)
done
echo
else
echo -n "$(tput hpa $(tput cols))$(tput cub 6)[FAIL]"
echo
fi
done
# Вычисление времени работы бекапа почтовых ящиков
End_time=$(date +%s)
Elapsed_time=$(expr $End_time - $Begin_time)
Hours=$(($Elapsed_time / 3600))
Elapsed_time=$(($Elapsed_time - $Hours * 3600))
Minutes=$(($Elapsed_time / 60))
Seconds=$(($Elapsed_time - $Minutes * 60))
echo "Затрачено времени на восстановление списка рассылок : $Hours час $Minutes минут $Seconds секунд"

 

JUQwJTkyJTIwJUQxJTg1JUQwJUJFJUQwJUI0JUQwJUI1JTIwJUQwJUIyJUQxJThCJUQwJUJGJUQwJUJFJUQwJUJCJUQwJUJEJUQwJUI1JUQwJUJEJUQwJUI4JUQxJThGJTIwJUQxJTgxJUQwJUJBJUQxJTgwJUQwJUI4JUQwJUJGJUQxJTgyJUQwJUIwJTIwJUQwJUIyJUQwJUJFJUQxJTgxJUQxJTgxJUQxJTgyJUQwJUIwJUQwJUJEJUQwJUIwJUQwJUIyJUQwJUJCJUQwJUI4JUQwJUIyJUQwJUIwJUQwJUI1JUQxJTgyJUQxJTgxJUQxJThGJTIwJUQxJTgwJUQwJUIwJUQxJTgxJUQxJTgxJUQxJThCJUQwJUJCJUQwJUJBJUQwJUIwJTIwJUQwJUI4JUQwJUI3JTIwJUQxJTgwJUQwJUI1JUQwJUI3JUQwJUI1JUQxJTgwJUQwJUIyJUQwJUJEJUQwJUJFJUQwJUI5JTIwJUQwJUJBJUQwJUJFJUQwJUJGJUQwJUI4JUQwJUI4JTIwJUQwJUI4JTIwJUQwJUIyJUQwJUJBJUQwJUJCJUQxJThFJUQxJTg3JUQwJUI1JUQwJUJEJUQwJUI4JUQwJUI1JTIwJUQwJUIyJTIwJUQwJUJEJUQwJUI1JUQwJUI1JTIwJUQxJTgzJUQxJTg3JUQwJUIwJUQxJTgxJUQxJTgyJUQwJUJEJUQwJUI4JUQwJUJBJUQwJUJFJUQwJUIyLiVDMiVBMCVEMCU5RiVEMSU4MCVEMCVCOCVEMCVCQyVEMCVCNSVEMSU4MCUyMCVEMCVCMiVEMSU4QiVEMCVCMiVEMCVCRSVEMCVCNCVEMCVCMCUyMCVEMSU4MCVEMCVCMCVEMCVCMSVEMCVCRSVEMSU4MiVEMSU4QiUyMCVEMSU4MSVEMCVCQSVEMSU4MCVEMCVCOCVEMCVCRiVEMSU4MiVEMCVCMCUzQQ==

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
######################################################
# Восстановление из резервной копии списков рассылки #
######################################################
Введите дату за какое число восстановить из бекапа (прим. 01-01-1985): 30-01-2017
Время начала восстановление списков рассылки - 22:56:19
Восстанавливаем список рассылки test1@jakondo.ru [OK]
Восстановление участников рассылки test1@jakondo.ru
Восстанавливаем список рассылки test2@jakondo.ru [OK]
Восстановление участников рассылки test2@jakondo.ru
Затрачено времени на восстановление списка рассылок: 0 час 0 минут 58 секунд
###################################################### # Восстановление из резервной копии списков рассылки # ###################################################### Введите дату за какое число восстановить из бекапа (прим. 01-01-1985): 30-01-2017 Время начала восстановление списков рассылки - 22:56:19 Восстанавливаем список рассылки test1@jakondo.ru [OK] Восстановление участников рассылки test1@jakondo.ru Восстанавливаем список рассылки test2@jakondo.ru [OK] Восстановление участников рассылки test2@jakondo.ru Затрачено времени на восстановление списка рассылок: 0 час 0 минут 58 секунд
######################################################
# Восстановление из резервной копии списков рассылки #
######################################################
Введите дату за какое число восстановить из бекапа (прим. 01-01-1985): 30-01-2017
Время начала восстановление списков рассылки - 22:56:19
Восстанавливаем список рассылки test1@jakondo.ru [OK]
Восстановление участников рассылки test1@jakondo.ru
Восстанавливаем список рассылки test2@jakondo.ru [OK]
Восстановление участников рассылки test2@jakondo.ru
Затрачено времени на восстановление списка рассылок: 0 час 0 минут 58 секунд

 

JUQwJTkyJUQwJUJFJUQxJTgyJTIwJUQxJTgyJUQwJUIwJUQwJUJBJUQwJUI4JUQwJUJDJTIwJUQxJTgxJUQwJUJGJUQwJUJFJUQxJTgxJUQwJUJFJUQwJUIxJUQwJUJFJUQwJUJDJTIwJUQwJUJDJUQxJThCJTIwJUQxJTgzJUQwJUI0JUQwJUJFJUQwJUIxJUQwJUJEJUQwJUJFJTIwJUQwJUI4JTIwJUQwJUI4JUQwJUJEJUQxJTg0JUQwJUJFJUQxJTgwJUQwJUJDJUQwJUIwJUQxJTgyJUQwJUI4JUQwJUIyJUQwJUJEJUQwJUJFJTIwJUQwJUI0JUQwJUI1JUQwJUJCJUQwJUIwJUQwJUI1JUQwJUJDJTIwJUQxJTgwJUQwJUI1JUQwJUI3JUQwJUI1JUQxJTgwJUQwJUIyJUQwJUJEJUQxJThCJUQwJUI1JTIwJUQwJUJBJUQwJUJFJUQwJUJGJUQwJUI4JUQwJUI4JTIwJUQwJUI4JTIwJUQwJUIyJUQwJUJFJUQxJTgxJUQxJTgxJUQxJTgyJUQwJUIwJUQwJUJEJUQwJUIwJUQwJUIyJUQwJUJCJUQwJUI4JUQwJUIyJUQwJUIwJUQwJUI1JUQwJUJDJTIwJUQwJUI4JUQwJUI3JTIwJUQwJUJEJUQwJUI4JUQxJTg1Lg==

 

ПОНРАВИЛАСЬ ИЛИ ОКАЗАЛАСЬ ПОЛЕЗНОЙ СТАТЬЯ, ПОДДЕРЖИ АВТОРА ДОНАТОМ

Обсуждение

Ответ на комментарий ЖакондаОтмена ответа
7 комментариев
  • Может поправите некорректные символы > и т.п…

  • актуален ли скрипт для 8.7?

    • Это ответ на комментарий Юра

      Не знаю, не пробовал для версии 8.7. В тестовых условиях попробуйте.

  • В скрипте Резервное копирование списка учетных записей
    в /opt/zimbra/bin/zmprov gdl $accounts_list | grep zimbraMailForwardingAddress: | awk {‘print $2’} > $Path/$Current_date/$accounts_l$ ошибка

    • Это ответ на комментарий grinnZ

      Копировал листинг из терминала, немного строка обрезалась, должно быть так /opt/zimbra/bin/zmprov gdl $accounts_list | grep zimbraMailForwardingAddress: | awk {‘print $2’} > $Path/$Current_date/$accounts_list

      Исправил

  • Спасибо! Весьма полезные скрипты!
    Было бы неплохо в скрипт «Резервное копирование списка учетных записей» вставить какой нить «прогресс», а то не совсем понятно, работает скрипт или завис, когда много почтовых ящиков!

    • Это ответ на комментарий hmuriy

      Может быть по возможности свободного времени доработаю его, прикручу индикатор выполнения.