irado
(usa XUbuntu)
Enviado em 07/10/2010 - 09:53h
bem, conviria vc aprender um bocadinho de bash script pq é coisa que vc vai usar MUITO, no dia a dia. O melhor link que conheço para isso é o do Aurelio Jargas:
http://aurelio.net/shell/
agora vamos tentar dissecar o que foi dito ali em cima:
#---> daqui
MAQUINA="Comveima"
ARQUIVO="$MAQUINA-$DATA.tar.gz"
DIRETORIOS="/etc/rc.d /etc/squid /etc/sysconfig /etc/openvpn /etc/backup"
# Dados do servidor FTP
HOST_FTP="dominio.no-ip.net"
USUARIO_FTP="usuário"
SENHA_FTP="dfg147*"
#---> até aqui
as '#' (grade ou tralha) são para comentários, nada será "lido" ou executado pelo script.
as demais informações são variáveis de ambiente; é u'a maneira elegante de definir nomes de máquinas, dominios e etc que serão usados repetidamente no script. Facilita a manutenção pq vc pode ter (por exemplo) 50 chamadas a um nome em particular dentro do script, mas se precisar substitui-lo por outro vai faze-lo em um lugar só.
# aqui
cd /tmp
diz que vc vai 'mudar-se' para o folder /tmp
# aqui
tar zcf /tmp/$ARQUIVO $DIRETORIOS
está dizendo que será criado um arquivo compactado com gzip, em /tmp, com o nome Comveima-???.tar.gz, com o conteúdo dos diretórios definidos pela variável DIRETORIOS
como NÃO está definida a variável DATA no ambiente, vai dar êrro ;)
# daqui
ftp -in <<EOF
open $HOST_FTP
user $USUARIO_FTP $SENHA_FTP
bin
lcd /tmp
dele $ARQUIVO
put $ARQUIVO
bye
EOF
# até aqui
está dizendo o seguinte: "enquanto não aparecer EOF, chame o ftp acessando o host definido pela variável HOST_FTP, com o usuário definido (dá uma procurada, cansei - rs), com a senha contida em SENHA_FTP, ativar o modo 'bin'; mudar LOCALMENTE para o folder /tmp, apagar o arquivo definido em ARQUIVO e transferir o arquivo ARQUIVO; após isso, encerrar a conexão. Daí, aparece o EOF e o script termina.
nota: aqui pode ficar um pouco confuso:
".. apagar o arquivo definido em ARQUIVO e transferir o arquivo ARQUIVO.."
quando vc manda apagar, o comando será executado LÁ NO OUTRO LADO (servidor) e não AQUI; em seguida, o arquivo que está AQUI será transferido para LÁ.
claro como lama, não?
divirta-se.