O ÚNICO site que não é um blog, alojado no blogger. É assim tipo um é pá... um..., um coijo...

Mostrar mensagens com a etiqueta tutoriais. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta tutoriais. Mostrar todas as mensagens

quarta-feira, setembro 15, 2010

Phishing mascarado de Vodafone

Ora digam lá se os tipos não são espertos:

A mensagem parece ser proveniente de msgvoz@vodafone.pt, mas isso é como eu enviar uma carta e escrever "Presidente da República Prof. Cavaco Silva" no envelope, portanto não vale a ponta dum corno.

Uma pessoa faz clique com botão direito do rato no link depois selecciona copiar ligação e cola-se no bloco de notas, o resultado é este:
http://tatiane-alves.pagebr.com/www.vodafone.pt/voice-mail.html

Hum... será que a Vodafone precisa de alojar serviços num site qualquercoisa.pagebr.com? Não me parece. Ah, e talvez o facto de ao seguir o link aparecer o pedido de download de um ficheiro executável seja um pouco estranho. Algo me diz que fazer download do ficheiro e executar o programa não vai dar bom resultado.

E, no entanto, parece que há pessoas que caem nesta esparrela.

segunda-feira, setembro 06, 2010

Máximas dos pilotos

Aqui vai uma lista singela de máximas que todos os pilotos (deviam) sabe(r)m:
 
                                        
  1. Os pax preferem comandantes velhos do que hospedeiras novas
  1. Descolar é opcional; aterrar é obrigatório.
  1. As três coisas mais inúteis em aviação são: a pista que ficou para trás, a altitude que ficou para cima e o combustível que ficou no camião no chão.
  1. Tente manter o número de aterragens igual ao número de descolagens.
  1. Um piloto é uma alma confusa que fala sobre mulheres quando está a voar e sobre vôo quando está com mulheres.
  1. Pior que um comandante que nunca foi co-piloto é um co-piloto que já foi comandante!
  1. Existem três regras simples para fazer uma aterragem suave; infelizmente ninguém sabe quais são...
  1. Decisões acertadas vêm com a experiência e a experiência vem com decisões erradas.
  1. Um avião pode desapontar um piloto, mas não pode surpreendê-lo.
  1. Acredite no seu instrutor, mas mantenha sempre o seu cinto apertado.
  1. Voar não é perigoso. Perigoso é cair.
  1. A probabilidade de sobrevivência é inversamente proporcional ao ângulo de aproximacão na final.
  1. Toda a gente sabe qual é a definição de uma boa aterragem: é quando se pode sair do avião pelo próprio pé. Mas pouca gente sabe a definição de uma óptima aterragem: é quando, para além disso, se pode usar o avião outra vez.
  1. Voar é a segunda maior emoção conhecida pelo homem; aterrar é a primeira
  1. A única situação em que pode achar que tem combustível a mais é quando tiver um princípio de incêndio
  1. Nunca largue o avião para agarrar no microfone. Os aviões voam de acordo com os princípios descobertos por Bernoulli, não por Marconi.
  1. Nunca permita que o avião o leve a algum lugar onde o seu cérebro não tenha chegado cinco minutos antes.
  1. Lembre-se sempre que se pilota com a cabeça e não com as mãos.
  1. Velocidade é vida; a altitude é a segurança da vida. Até hoje, ninguém colidiu com o céu.
  1. Se tiver de enfrentar uma aterragem forçada nocturna, acenda os faróis para ver a área de aterragem. Se não gostar do que vir, apague os faróis.
  1. A hélice é simplesmente um grande ventilador na frente do avião para manter o piloto fresco. A prova disso é que, quando a hélice pára, o piloto começa imediatamente a derreter-se em suor.
  1. É bem melhor estar cá em baixo desejando estar lá em cima do que estar lá em cima desejando estar cá em baixo!
  1. Esqueça tudo o que aprendeu sobre impulso, resistência, sustentação e gravidade; o que faz um avião voar é o dinheiro

terça-feira, maio 11, 2010

A crise...

terça-feira, março 30, 2010

Páscoa para totós

        - Pai, o que é a Páscoa?

       -  Ora, Páscoa é ...... bem... é uma festa religiosa!

        - Igual ao Natal ?

       - É parecido. Só que  no Natal comemora-se
o nascimento de Jesus, e na Páscoa, se não me
engano,  comemora-se a sua ressurreição.

       -  Ressurreição?

       - É, ressurreição. Maria, vem  cá!

       - Sim?

       -  Explica lá ao puto o que é ressurreição
para eu poder ler o meu  jornal  descansado.

       - Bom, meu filho, ressurreição é  tornar a
viver após ter morrido. Foi o que aconteceu
com Jesus, três dias  depois de ter sido
crucificado. Ele ressuscitou e subiu aos  céus.
Entendido?

       - Mais ou menos ... Mãe,  Jesus era um coelho?

       - Que parvoíce é essa?  Estás-te a passar!
Coelho? Jesus Cristo é o Pai do Céu! Nem parece
que  foste baptizado! Jorge, este menino não pode
crescer assim, sem ir à missa  pelo menos aos
domingos. Até parece que não lhe demos uma
educação cristã!  Já pensaste se ele diz uma
asneira destas na escola? Deus me  perdoe!
Amanhã vou matricular esta criança na catequese!

        - Mãe, mas o Pai do Céu não é Deus?

        - É filho!  Jesus e Deus são a mesma coisa.
Vais estudar isso na  catequese. É a Trindade.
Deus é Pai, Filho e Espírito Santo.

        - O Espírito Santo também é Deus?

        - É sim.

       - E  Fátima?

       - Sacrilégio!!!

        - É por isso que na Trindade fica o Espírito Santo?

        - Não é o Banco Espírito Santo que fica na
Trindade, meu  filho. É o  Espírito Santo de Deus.
É uma coisa muito complicada, nem a  mãe entende
muito bem, para falar a verdade nem ninguém,
nem quem inventou  esta asneira a compreende.
Mas se perguntares à catequista ela  explica
muito bem!

       - Bom, se Jesus não é um  coelho, quem é o coelho da Páscoa?

       - (Aos  gritos no meio da casa) Eu sei lá! É uma
tradição. É igual ao Pai Natal, só  que em vez de
presentes, ele traz ovinhos.

        - O coelho põe ovos?

       - Chega! Deixa-me  ir fazer o almoço que eu
não aguento mais!

        - Pai, não era melhor que fosse galinha da Páscoa?

        - Era, era melhor, ou então peru .

        - Pai, Jesus nasceu no dia 25 de Dezembro,
não é? Em que dia é que ele  morreu?

       - Isso eu sei: na sexta-feira  santa.

       - Que dia e que mês?

        - Gaita!!!! Sabes que eu nunca pensei nisso?
Eu só  aprendi que ele morreu na sexta-feira
santa e ressuscitou três dias depois,  no sábado
de aleluia.

       - Um dia depois  portanto!

       - (Aos berros) Não, filho - três  dias!

       - Então morreu na  quarta-feira.

       - Não! Morreu na sexta-feira  santa... ou
terá sido na quarta-feira de cinzas? Ouve, já
me baralhaste  todo! Morreu na sexta-feira e
ressuscitou no sábado, três dias  depois!

       - Como !?!? Como !?!?

        - Pergunta à tua professora da catequese!

        - Pai, então por que amarraram um monte
de bonecos de  pano na rua?

       - É que hoje é sábado de aleluia,  e a aldeia
vai fingir que vai bater em Judas. Judas foi o
apóstolo que  traiu Jesus.

       - O Judas traiu Jesus no  sábado?

       - Claro que não! Se ele morreu na  sexta!!!

       - Então por que eles não lhe batem no  dia certo?

       - É, boa pergunta.

        - Pai, qual era o sobrenome de Jesus?

        - Cristo. Jesus Cristo.

       -  Só?

       - Que eu saiba sim, por quê?

        - Não sei não, mas tenho um palpite que o
nome dele tinha  no apelido Coelho. Só assim
esta coisa do coelho da Páscoa faz  sentido,
não achas?

       -  Coitada!

       - Coitada de quem?

        - Da tua professora da catequese !!!

sexta-feira, março 12, 2010

Como gerir as passwords

Há muita gente que usa passwords estúpidas (por exemplo «1234567»... sim, não és só tu!) ou sempre a mesma password para vários sites. Tudo porque as passwords são difíceis de memorizar.
Portanto fica aqui uma sugestão: escrever passwords, diferentes para cada site, num papel.
Oh, mas se alguém vê o papel... não consegue nada! Porque aquilo que se deve fazer é escrever apenas as passwords. Nada de sites, nem login. Mais, pode-se memorizar uma palavra que pode ser adicionada a todas as passwords no papel. Assim, existe uma componente que está no papel e uma componente que é fácil de memorizar (é sempre igual para todas), mas não está ao alcance de qualquer pessoa.
Confuso? Nada como um exemplo. A minha palavra secreta, memorizada vai ser «bananas» (não usem esta). Assim escrevo no papel uma parte das minhas passwords:

4k3j4Tb3kj3
kj9rj43X4k
aS8d7dfMlfm
...

Mas na realidade, as passwords são:

4k3j4Tb3kj3bananas
kj9rj43X4kbananas
aS8d7dfMlfmbananas
...

Notaram as bananas no fim? Assim temos passwords grandes, difíceis de adivinhar e fáceis de memorizar. Ah, e o papel pode ir no porta-moedas... junto com o cartão multibanco. Não ponham perto do computador, não dá bom resultado.



Nota: no que toca a segurança, há que ter alguém com mais arcabouço que confirme o que dizemos. Esta dica é concordante com algumas referências no que toca à área da segurança de informação, um exemplo é o F-Secure.

quarta-feira, março 10, 2010

Como despachar chamadas de Telemarketing



Cliente - Estou!
Vodafone - Está? Estou a falar com o senhor (nome do cliente)?
Cliente - Sim...
Vodafone  - Sr. (nome do cliente), como vai? Aqui é da Vodafone e estamos a ligar para lhe apresentar a promoção Vodafone 1.382 minutos, que oferece...
Cliente - Desculpe (interrompe), mas com quem estou a falar?
Vodafone - O sr está a falar com Natália Bagulho da Vodafone. Eu estou a ligar-lhe para...
Cliente - Natália, desculpe-me, mas para minha segurança gostaria de conferir alguns dados antes de continuar com a nossa conversa, pode ser?
Vodafone - ...Sssssim, pode...
Cliente - A Natália trabalha em que área da Vodafone?
Vodafone - Telemarketing Pró-Activo.
Cliente - E tem número de funcionária da Vodafone?
Vodafone - Desculpe, mas não creio que essa informação seja necessária.
Cliente - Então terei que desligar, pois não estou seguro de estar realmente a falar com uma funcionária da Vodafone.
Vodafone - Mas eu posso garantir...
Cliente - Além disso, sempre que tento falar com a Vodafone sou obrigado a fornecer os meus dados a vários interlocutores.
Vodafone - Tudo bem, a minha matrícula é Vodafone-6696969-TPA.
Cliente - Só um momento enquanto verifico.
Cliente - ...??? (Dois minutos mais tarde) - Só mais um momento, por favor.
Vodafone - ...??? (Cinco minutos mais) - Estou sim?
Cliente - Só mais um momento, por favor, estamos muito lentos hoje cá por casa.
Vodafone - Mas, senhor... (Um minuto depois)
Cliente - Pronto, Natália, obrigado por ter aguardado. Qual é mesmo o assunto?
Vodafone - Aqui é da Vodafone, estamos a ligar para oferecer a promoção Vodafone 1382 minutos, pela qual o Sr. fala 1.300 minutos e ganha 82 minutos de bónus, além de poder enviar 372 SMS totalmente grátis. O senhor estaria interessado, Sr. (nome do cliente)?
Cliente - Natália, vou ter que transferir a sua ligação para a minha mulher porque é ela quem decide sobre alteração de planos de telemóveis.
Por favor, não desligue, pois a sua chamada é muito importante para mim...
(Pousa o telemóvel em frente ao leitor de CD?s, coloca a música "Quero cheirar teu bacalhau" a tocar em repeat mode e vai beber um cafézinho...)
Válido não só para a Vodafone: pode experimentar com a Zon TV CABO, Clix, Meo, Optimus, TMN, Cabovisão, etc...

sexta-feira, fevereiro 26, 2010

Atalhos para máquinas virtuais

Algumas pessoas usam máquinas virtuais... para fazer coisas. Se forem espertas e não tiverem grandes exigências no que toca às funcionalidades, provavelmente farão como eu e usam a VirtualBox.
Ora, ter de abrir o programa para escolher a máquina a usar é uma chatice. Portanto hoje vou explicar como fazer belos atalhos no ambiente de trabalho que abrem directamente a máquina virtual.

Primeiro, para Windows:
1) Abrir a VirtualBox e observar os nomes das máquinas virtuais:

2) Criar um atalho para o programa VBoxManage.exe (que está no "Program Files"), adicionando "startvm " no fim:



E pronto, têm um atalho para a maquina virtual escolhida.


Agora em Linux/Unix/Mac OS (absurdamente mais simples):

1) criar um ficheiro de texto e escrever:
#!/usr/bin/env bash
@echo off
VirtualBox --startvm {nome_da_maquina_virtual} &
@exit

Onde o texto mais escuro deve ser substítuido pelo nome da máquina virtual.




Nota: as imagens da zona Windows foram obtidas aqui

terça-feira, fevereiro 23, 2010

Mude de motor de busca - salve a floresta

Aqui está um motor de busca que usa os lucros para plantar árvores.
E ainda para mais eles explicam como colocar na pesquisa padrão do browser... nice.

quinta-feira, dezembro 17, 2009

Criar utilizadores no Mac OS X... usando o terminal

Ora cá vai mais um truque que certamente será utilizado pela maioria dos nossos leitores no seu dia-a-dia.

Estas instruções são para Mac OS Leopard, para outros troquem o ponto pela barra.
Nota: UTILIZADOR deve ser trocado pelo nome de utilizador... bem como outras palavras em maiúsculas.

sudo dscl . -create /Users/UTILIZADOR
sudo dscl . -create /Users/UTILIZADOR UserShell /bin/bash
sudo dscl . -create /Users/UTILIZADOR RealName "NOME_REAL_DA_PESSOA"
sudo dscl . -create /Users/UTILIZADOR UniqueID 503
sudo dscl . -create /Users/UTILIZADOR PrimaryGroupID 1000
sudo dscl . -create /Users/UTILIZADOR NFSHomeDirectory /Users/UTILIZADOR sudo mkdir /Users/UTILIZADOR
sudo passwd UTILIZADOR


Caso pretendam que este utilizador tenha direitos de administração (coisa que deve ser seriamente ponderada...):

sudo dscl . -append /Groups/admin GroupMembership UTILIZADOR

quinta-feira, novembro 19, 2009

Como fazer condições if em bash

Esta deu-me um bocadinho de trabalho para reencontrar, portanto vou por aqui para nunca mais me esquecer.

Geralmente uso isto para testar o número de argumentos passados ao script bash:

if [ "$1" == "" ]; then
echo "usage: script.sh <first-arg>"
exit
fi

O problema surge quando há mais do que um argumento, essa é que não me lembrava como era:

if [ "$1" ="" ] || [ "$2"="" ] ; then
echo "usage: script.sh <first-arg> <second-arg>"
exit
fi

Ou seja, a operação OR é executada pelo operador || entre cada uma das expressões:
[ expr1 ] || [ expr2 ]

A operação AND é executada pelo operador &&, colocado entre expressões:
[ expr1 ] && [ expr2 ]

Pensando bem, é muito parecido com C. A única diferença é a colocação de parêntesis rectos, para o script não pensar que o que está lá dentro são comandos.

quinta-feira, novembro 05, 2009

Clonar máquinas virtuais com a VirtualBox

Ontem precisei de clonar umas máquinas virtuais... e agora é mais fácil!


Basta escolher a opção "File>Export Appliance" e pronto, a VirtualBox cria um ficheiro que descreve a máquina e outro que descreve o disco virtual. Depois é só usar a opção "File>Import Appliance" e o software cria uma máquina com as características (e uma cópia do disco guardado) da máquina exportada.

Para quem não sabe porque raio pode precisar de clonar uma máquina virtual... bem, eu uso para fazer um servidor linux sem ter uma máquina independente, mas podem sempre querer levar a máquina virtual numa pen (com o Windows) para usar um pc personalizado em qualquer lado. Há uma versão portátil da VirtualBox aqui. Agora com a aceleração 3D até é capaz de dar para jogar qualquer coisa...

sexta-feira, outubro 30, 2009

Browser & Javascript

Neste site, encontei uns blocos de javascript simples que permitem detectar o browser em uso.


Podia copiar tudo, mas fica aqui apenas um exemplo só para detectar o tipo de browser

var browserName=navigator.appName;
if (browserName=="Netscape"){
alert("Hi Netscape User!");
}
else{
if (browserName=="Microsoft Internet Explorer"){
alert("Hi, Explorer User!");
}
else{
alert("What ARE you browsing with here?");
}
}

sábado, setembro 05, 2009

Cuidado com o copy+paste

Encontei este site onde se tenta mostrar uma captura de conteúdo do copiado. No meu caso não funcionou por não usar o Windows, mas como isso é usado por 99% das pessoas, fica aqui o aviso.
Aparentemente, basta copiar algo e aceder a esta página. Se tudo correr "bem", devem ver o texto copiado na página! Em baixo estão algumas indicações sobre como evitar isto no Internet Explorer.

quarta-feira, julho 29, 2009

RECONHECER UM STROKE (AVC)

O neurologista diz que se ele conseguir chegar até uma vitima de stroke dentro de 3 horas, ele pode reverter totalmente os efeitos do stroke... totalmente . Ele diz que o truque está em reconhecer os sinais de stroke, diagnosticar, e obter assistência medica no prazo de 3 horas, o que não é fácil.

RECONHECER UM STROKE

Lembrem-se de memorizar os "3" passos ,
STR . Lê e aprende!

Ás vezes os sintomas do stroke são difíceis de identificar. Infelizmente, a falta de atenção significa desastre. A vitima de stroke pode sofrer danos mentais muito graves quando as pessoas mais próximas falham em reconhecer os sintomas de um stroke
.



Agora os médicos dizem que pessoa pode reconhecer um stroke perguntando 3 perguntas simples:

S *
Pede ao individuo para Sorrir
T *
Pede ele (a) dizer (Talk) uma frase simples e coerente(ex:Está um dia lindo)
R *
Pede para que levante (Raise) os dois braços.

Se ele (a) tiver problemas a fazer alguma destas três coisas chama o 112 imediatamente e descreve os sintomas a quem atender.


Novo Sinal de um Stroke -------- Põe a língua de fora
.

NOTA: Outro sinal de stroke é este: Pede á pessoa para por a língua de fora... Se a língua estiver torta ou for para um lado ou para outro
,
isso é indicação de stroke.

quinta-feira, julho 02, 2009

php: evitar dupla submissão de formulário

Esta já devia ter sido resolvida, mas como há pouco não conseguir encontrar a solução em lado nenhum, tive de ir a um site que já tinha feito para refrescar a memória.

Um problema comum para quem faz sites é as pessoas submeterem os seus dados (por exemplo de pagamento de um serviço) e depois, estupidamente, enganam-se e carregam na tecla f5. Isto faz com que o formulaŕio seja re-submetido (ok, alguns browsers perguntam se querem re-submeter os dados, mas muitas pessoas dizem que sim...). Ora qual é a solução? Encaminhar para uma página nova. Mesmo assim não funciona. Estava a fazer uma página com a framework CodeIgniter.
Neste caso a solução é usar a função redirect, com um parâmetro extra "refresh" para limpar os dados do envio do formulário:


redirect('controlador/funcao_que_chama_a_vista', 'refresh');


Para quem é mais purista e usa php em "bruto", lá terá de ser a função header:


header('refresh: 0; url=http://www.example.net');


Pronto, da próxima vez que precisar já sei onde hei-de ir para relembrar... o pior é que provavelmente nunca mais vou esquecer...

quinta-feira, maio 28, 2009

Hoje vou colocar aqui um tutorial para se ser gestor de projecto. É baseado nas dez regras de Spark para o Gestor de Projecto.
Aqui vai:


  1. Esforce-se por parecer tremendamente importante.

  2. Tente sempre ser visto com gente importante.

  3. Fale com tom de autoridade; no entanto, exponha apenas os factos provados e óbvios.

  4. Não arranje discussões, mas, se for encostado à parede, faça uma pergunta irrelevante e recoste-se com um sorriso satisfeito enquanto o seu oponente tenta perceber o que se está a passar; depois, mude rapidamente de assunto.

  5. Escute atentamente enquanto os outros discutem o problema. Atire uma frase seca e dê cabo deles com ela.

  6. Se um subordinado lhe faz uma pergunta pertinente, olhe-o como se ele tivesse perdido o juízo. Quando ele baixar os olhos, devolva-lhe a pergunta por outras palavras.

  7. Obtenha uma missão que dê nas vistas, mas mantenha-se na sombra e fora do alcance dos holofotes.

  8. Saia sempre com passo apressado do seu gabinete: isso mantém as perguntas de subordinados e superiores a um nível mínimo.

  9. Mantenha sempre a porta do seu gabinete fechada. Isso deixa os visitantes na defensiva e dá o aspecto de que você está sempre numa reunião importante.

  10. Dê todas as ordens verbalmente. Nunca escreva que possa vir a ser arquivado num «Dossier Bomba Atómica».

segunda-feira, março 30, 2009

Ubuntu: backspace como atalho para voltar atrás no Firefox

Esta comeu-me a cabeça... até me dar ao trabalho de pesquisar!
Em Windows habituei-me a usar o backspace para voltar a páginas que abri antes no browser. No Ubuntu (que é o que estou a usar, não sei se isto acontece noutras distros) isto não funciona assim (vá-se lá saber porquê!), portanto vou deixar aqui uns passos para resolver esta coisa no Firefox.

Aqui vai:
(1) Escrever "about:config" na barra de endereço;
(2) Clicar no botão "Prometo ser cuidadoso" ou algo assim;
(3) Escrever "backspace" na caixa de pesquisa;
(4) Agora o único item visivel deve ter como nome "browser.backspace_action". Fazer duplo clique no campo "valor" e mude o conteúdo que lá está para "0".

E já está!

segunda-feira, março 09, 2009

CSS cross-browser inline-block

Ora bem, como estou sempre a esquecer-me disto e (vá-se lá saber porquê!) nunca me lembro de pôr a fonte desta cena nos favoritos, aqui fica um fix css para ter inline-block a funcionar em todos os browsers (mesmo aqueles que não suportam o inline-block):

Para aqueles que não perceberam nada do que foi dito: esqueçam isto vão mazé ver os wallpapers do ubuntu, cheios de curvas, que está a ter uma saída do caraças.

Isto foi encontrado aqui


.inlineblock li { display:-moz-inline-box; -moz-box-orient:vertical;
display:inline-block; vertical-align:top;
word-wrap:break-word; }
* html .inlineblock li { display:inline; }
* + html .inlineblock li { display:inline; }
.inlineblock li > * { display:table; table-layout:fixed;
overflow:hidden; }
ul.inlineblock{ list-style: none inside none;padding: 0px;}

segunda-feira, março 02, 2009

Backups à preguiçoso II

Ora viva!
Cá estou eu mais uma vez a dar um truque que poucas pessoas vão usar. Da última vez mostrei um script que fazia backups de websites geridos por cpanel que quase podia ser usado por pessoas que não percebiam nada de python. Agora vou mostrar a versão 2.0 do mesmo script, que pode ser usado por qualquer pessoa que saiba escrever. Sim, já não é preciso olhar para o código. A não ser, claro para o copiar, colar e guardar no computador.

Portanto, basta copiar o código python, e guardar num ficheiro de texto ao qual podem dar qualquer nome, desde que tenha extensão .py (para o windows. Em unix/linux pode ser qualquer coisa). Depois é só fazer um ficheiro de texto chamado "cpanel.accounts.txt" e atirar lá para dentro os dados das contas. Vamos ver um exemplo:

Ficheiro cpanel.accounts.txt-----------------------------


username=OMeuSite
password=AMinhaPass
domain=OMeuDominio
folder=APastaOndeVouGuardarOBackup
host=127.0.0.1:1234
dbs=soTemUmaDB
replace=yes

username=OMeuSite2
password=AMinhaPass2
domain=OMeuDominio2
folder=APastaOndeVouGuardarOBackup2
host=127.0.0.1:1234
dbs=dbPrincipal,dbSecundaria
replace=yes

Ficheiro cpanel.accounts.txt-----------------------------

Aqui vemos um exemplo simples de um ficheiro de contas com duas contas. Reparem que as várias contas têm de estar separadas por uma linha em branco e tem de existir uma linha em branco no fim do ficheiro. De resto é quase tudo igual à versão anterior, só existem dois parâmetros novos:

"replace": Serve para decidir se vamos guardar todos os dias novas cópias de backups ou se queremos substituir a cópia de ontem. Neste caso decidi substituir, para poupar espaço no disco.

"dbs": Serve para indicar o nome das bases de dados presentes na conta e que devem ser guardadas. As várias bases de dados são separadas por virgulas. No exemplo acima, a primeira conta só tem uma base de dados e a segunda conta tem duas.

Podem por uma centena de contas neste ficheiro. Para que funcione, basta estar junto ao programa python do qual se segue o código. Devem copiar sem qualquer alteração para um ficheiro de texto tal como disse mais acima.

Ficheiro cpanel-backup.py-----------------------------

#!/usr/bin/env python
from os import system
from datetime import date

def dbBackup(db, url, folder, replace = True):
db = db.strip()
download = "%s.sql.gz" % db
system("rm %s/%s" % (folder, download))
system("wget -P %s %s/getsqlbackup/%s" % (folder, url, download))
if not replace:
today = date.today()
newfile = "db-%s-%d%d%d.sql.gz" %\
(db, today.day, today.month, today.year)
system("rm %s/%s" % (folder, newfile))
system("mv %s/%s %s/%s" %(folder, download, folder, newfile))

def homeBackup(username, url, folder, replace = True):

if replace:
download = "home-%s.tar.gz" % username
else:
today = date.today()
download = "home-%s-%d%d%d.tar.gz" %\
(username, today.day, today.month, today.year)

system("rm %s/%s" % (folder, download))
system("wget -P %s %s/getbackup/%s" %\
(folder, url, download))

def doBackup(account):

url = 'http://%s:%s@%s' %\
(account['username'], account['password'], account['host'])

if account['replace'] == 'yes': replace = True
else: replace = False

for db in account['dbs'].split(','):
dbBackup(db, url, account['folder'], replace)

homeBackup(account['username'], url, account['folder'], replace)


def getAccounts(infile):
accounts = []
f = open(infile, 'r')
account = {}

for line in f:
line = line.strip()
if line == '##': break
if not line:
if not account == {}:
accounts.append(account)
account = {}
if line and not line[0] == '#':
pos = line.find('=')
key = line[0:pos].strip()
value = line[pos+1:].strip()
account[key] = value
f.close()
return accounts

if __name__ == '__main__':

accounts = getAccounts('cpanel.accounts.txt')
for account in accounts:
doBackup(account)
Ficheiro cpanel-backup.py-----------------------------

sábado, fevereiro 28, 2009

Fumar mata...

Descobri o que fazer àquelas pessoas que fumam em qualquer lado sem se preocupar se estão a matar quem está à volta. Fica aqui o truque:

eXTReMe Tracker