Hoje eu tive que fazer um script rápido para backup do ExpressoMail. Como sei que ele pode ser útil para muitos SysAdmins que conheço, aqui vai ele (é coisa boba mesmo):
#!/bin/bash # # bkp-expresso.sh # # Script para fazer backup do Expresso Mail # # Ele faz backup de: # * Banco de dados # * Base do LDAP # * Cyrus # * Emails # # Última modificação: 13/11/2008 # # Versão 1: Versão Inicial # # Autor: Hugo Doria (hugo@archlinux.org) # DIR_BACKUP="/root/backups/" USUARIO_BANCO="postgres" if [ ! -d ${DIR_BACKUP} ]; then echo "Criando o diretório de backup ..." mkdir -p ${DIR_BACKUP} fi cd ${DIR_BACKUP} || exit 1 # Backup do postgres echo "Fazendo o backup do banco ..." pg_dump -o -U ${USUARIO_BANCO} expresso > bkp-banco.dump # Backup do ldap echo "Fazendo o backup do ldap ..." slapcat > bkp-ldap.ldif # Backup do cyrus echo "Fazendo o backup do cyrus ..." echo "Parando o cyrus ..." /etc/init.d/cyrus2.2 stop if [ -d /var/spool/cyrus ]; then echo "Fazendo o dump da estrutura do cyrus ..." su - cyrus -c "/usr/sbin/ctl_mboxlist -d > bkp-cyrus.dump" mv /var/spool/cyrus/bkp-cyrus.dump ${DIR_BACKUP} echo "Compactando as mensagens ..." tar cvf bkp-mail.tar.gz /var/spool/cyrus fi if [ -d /var/lib/cyrus ]; then echo "Compactando o /var/lib/cyrus ..." tar cvf bkp-cyrusvarlib.tar.gz /var/lib/cyrus fi echo "Iniciando o cyrus ..." /etc/init.d/cyrus2.2 start echo "Backup finalizado e salvo em ${DIR_BACKUP}"
Se preferir, é só baixar o script.
Não entendo patavinas de ExpressoMail ou Cyrus, mas vai aí uma sujestão de shell script:
s/${DIR_BACKUP}/”${DIR_BACKUP}”/
s/>/>/
(Pode apagar esse comentário depois.)
E uma correção do meu próprio comentário :D
s/sujestão/sugestão/