Ir para conteúdo

Featured Replies

Postado

O seguinte script faz backup incremental de todas as contas cPanel de um servidor e o envia para um servidor remoto (com acesso root) via Rsync sobre SSH.
Salve o script como backup.sh e aplique permissão de execução nele: chmod +x backup.sh
Execute-o com ./backup.sh ou bash backup.sh
Não se esqueça de editar o script e alterar CAMINHO_CHAVE_SSH, PORTA_SSH_SERVIDOR_REMOTO e IP_SERVIDOR_REMOTO
O diretório /backup já deve existir no servidor remoto. Você também pode mudar para outro destino.

IMPORTANTE: se deseja usar senha em vez de chave SSH, instale o sshpass, disponível no repositório EPEL e
substitua ssh -i CAMINHO_CHAVE_SSH por sshpass -p "SENHA_SERVIDOR_REMOTO" ssh

#!/bin/bash

    for file in /var/cpanel/users/*
    do
        
        user=$(basename $file)
        echo "Fazendo backup do usuario $user"
        mkdir -p /backup/cpanel
        sleep 1

        # Criação de backup de dados da conta cPanel
        /scripts/pkgacct --incremental --nocompress --skiphomedir $user --backup /backup/cpanel

        # Envio de bancos de dados, zonas DNS e configurações de usuário
        rsync -avzAX --numeric-ids -e 'ssh -i CAMINHO_CHAVE_SSH -p PORTA_SSH_SERVIDOR_REMOTO -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o GSSAPIAuthentication=no' /backup/cpanel/$user root@IP_SERVIDOR_REMOTO:/backup/
    
        # Envio de arquivos do usuário (diretório home)
        rsync -avzAX --numeric-ids -e 'ssh -i CAMINHO_CHAVE_SSH -p PORTA_SSH_SERVIDOR_REMOTO -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o GSSAPIAuthentication=no' /home/$user/ root@IP_SERVIDOR_REMOTO:/backup/$user/homedir

    done

 

Editado por Jaime

Não há bem nem mal que dure para sempre. Um dia tudo acaba.


Postado

Show, boa dica.


Postado

O seguinte script faz backup incremental de todas as contas cPanel de um servidor e o envia para um servidor remoto (com acesso root) via Rsync sobre SSH.
Salve o script como backup.sh e aplique permissão de execução nele: chmod +x backup.sh
Execute-o com ./backup.sh ou bash backup.sh
Não se esqueça de editar o script e alterar CAMINHO_CHAVE_SSH, PORTA_SSH_SERVIDOR_REMOTO e IP_SERVIDOR_REMOTO
O diretório /backup já deve existir no servidor remoto. Você também pode mudar para outro destino.

IMPORTANTE: se deseja usar senha em vez de chave SSH, instale o sshpass, disponível no repositório EPEL e
substitua ssh -i CAMINHO_CHAVE_SSH por sshpass -p "SENHA_SERVIDOR_REMOTO" ssh

#!/bin/bash

    for file in /var/cpanel/users/*
    do
        
        user=$(basename $file)
        echo "Fazendo backup do usuario $user"
        mkdir -p /backup/cpanel
        sleep 1

        # Criação de backup de dados da conta cPanel
        /scripts/pkgacct --incremental --nocompress --skiphomedir $user --backup /backup/cpanel

        # Envio de bancos de dados, zonas DNS e configurações de usuário
        rsync -avzAX --numeric-ids -e 'ssh -i CAMINHO_CHAVE_SSH -p PORTA_SSH_SERVIDOR_REMOTO -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o GSSAPIAuthentication=no' /backup/cpanel/$user root@IP_SERVIDOR_REMOTO:/backup/
    
        # Envio de arquivos do usuário (diretório home)
        rsync -avzAX --numeric-ids -e 'ssh -i CAMINHO_CHAVE_SSH -p PORTA_SSH_SERVIDOR_REMOTO -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o GSSAPIAuthentication=no' /home/$user/ root@IP_SERVIDOR_REMOTO:/backup/$user/homedir

    done

 

Olá Jaime,

Utilizando o sshpass com a porta diferente de 22, como ficaria o comando "sshpass -p "SENHA_SERVIDOR_REMOTO" ssh".
Pois tente assim e não funcionou:
sshpass -p1012 "SENHA_SERVIDOR_REMOTO" ssh ou sshpass -p 1012 "SENHA_SERVIDOR_REMOTO" ssh


Postado
  • Autor

Olá Jaime,

Utilizando o sshpass com a porta diferente de 22, como ficaria o comando "sshpass -p "SENHA_SERVIDOR_REMOTO" ssh".
Pois tente assim e não funcionou:
sshpass -p1012 "SENHA_SERVIDOR_REMOTO" ssh ou sshpass -p 1012 "SENHA_SERVIDOR_REMOTO" ssh

O correto é: sshpass -p "SENHA_SERVIDOR_REMOTO" ssh -p 1012

Não há bem nem mal que dure para sempre. Um dia tudo acaba.


Postado

O correto é: sshpass -p "SENHA_SERVIDOR_REMOTO" ssh -p 1012

Vlw Jaime, funcionou perfeito aqui....


Postado

Aqui deu esse erro:

 

[2015-08-13 10:22:57 -0300] pkgacct target is: /backup/cpanel/adidas
sshpass: invalid option -- 'l'
protocol version mismatch -- is your shell clean?
(see the rsync man page for an explanation)
rsync error: protocol incompatibility (code 2) at compat.c(171) [sender=3.0.6]

 


Postado
  • Autor

Aqui deu esse erro:

 

[2015-08-13 10:22:57 -0300] pkgacct target is: /backup/cpanel/adidas
sshpass: invalid option -- 'l'
protocol version mismatch -- is your shell clean?
(see the rsync man page for an explanation)
rsync error: protocol incompatibility (code 2) at compat.c(171) [sender=3.0.6]

 

Você digitou alguma coisa errada. Como está seu código na parte sshpass -p "SENHA_SERVIDOR_REMOTO" ssh?

Não há bem nem mal que dure para sempre. Um dia tudo acaba.


Postado

estava com dois '' , agora acho que foi..


Postado

Ainda estão utilizando esse script? Funciona 100%? ou Melhor usar o proprio Backup do cPanel com a opção incremental e enviar via rsync?


Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.
Nota: Sua postagem exigirá aprovação do moderador antes de ficar visível.

Visitante
Infelizmente, seu conteúdo contém termos que não são permitimos. Edite seu conteúdo para remover as palavras destacadas abaixo.
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Informação Importante

Concorda com os nossos termos?