[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] hist�rias de terror na tela negra
From: |
Aurelio Marinho Jargas |
Subject: |
Re: [shell-script] histórias de terror na tela negra |
Date: |
Mon, 14 Jul 2003 11:04:42 -0300 (ART) |
ae gustavo,
--- Gustavo Adolfo Kellermann <address@hidden> escreveu:
> Será que tem boa documentação em português sobre como recuperar
> arquivos no linux?
> Lembrei da maior aventura da minha vida na informática, quando
> removi um diretório com milhares de arquivos de movimento, que
> significavam $$$ a ser cobrado dos usuários.
cara, que história de terror :)
não queria estar na tua pele nesse momento...
recuperar os dados já é difÃcil, com o peso da importância
deles fica mais difÃcil ainda, e pra fechar com os caras
no cangote perguntando se vai demorar, aà é brabo :)
a minha pior caca infelizmente foi irreversÃvel :(
eu tava no meu $HOME ***como root*** (principiante é fogo...)
e por algum motivo eu queria apagar todos os arquivos dele,
acho que eu tinha copiado meu $HOME pra outro lugar, sei lá.
o fato é que eu fiz um rm -rf * básico e pronto, todos os
arquivos foram apagados. opa, todos não, ainda faltavam os
arquivos ocultos que começam com ponto .
já perceberam o que vai acontecer né? :)
pois é, eu muito do trouxa automaticamente escrevi
rm -rf .*
para apagar todos os arquivo que começam com ponto, certo?
certo! só que eu não contava com o arquivo '..'
o meu rm mágico subiu um diretório e achou o /home do sistema,
onde estavam os HOMEs de outros funcionários da área técnica
da Conectiva e fez a festa.
como eu tinha poucos arquivos ocultos no meu HOME e vi que o
comando estava demorando, apertei Ctrl+C e o rm faminto parou,
mas o resultado foi o HOME inteiro de um colega apagado e mais
uns arquivos de outro.
meu, não sabia onde enfiar a cara. descobri da pior maneira
que:
1. não se usa root à toa
2. pense 3 vezes antes de dar o ENTER num rm -rf
3. nunca use .* quando o certo é .[^.]*
a Conectiva ainda era bem pequena, qualquer mané (tipo eu)
tinha senha de root nas máquinas e não tinha becape naquela
máquina em especial. o cara realmente perdeu todos os seus
arquivos e eu fiquei com cara de bunda por um bom tempo.
senha de root + principiante = PERIGO
outras cacas que fiz foi em scripts...
MUITO CUIDADO com a combinação
rm -rf
+
$variavel
+
/ ou *
é comum num script você fazer algo como
ext='.txt'
rm *$ext
ou
dir=fulano
rm -rf /home/$fulano
parece normal né?
mas agora pense: e se por algum motivo alienÃgena a variável
chegar vazia na linha do rm?
vai ficar:
rm *
e
rm -rf /home/
isso pode acontecer por várias razões, pois se hoje a declaração
da variável está logo acima do rm, amanhã pode estar lá no
começo do script, pode ter virado um função, mudado de nome...
o mais seguro é SEMPRE definir um valor padrão para pegar estes
casos, assim:
rm *${ext:-VARIAVEL_VAZIA}
rm -rf /home/${fulano:-VARIAVEL_VAZIA}
assim caso elas estejam vazias, os comandos ficarão
rm *VARIAVEL_VAZIA
rm -rf /home/VARIAVEL_VAZIA
e nenhum dano será causado
ops, me empolguei,
falouzz.
=====
--
Aurelio Marinho Jargas - Floripa
Vou ministrar Curso de Shell em SP http://aurelio.net
Fotos do IV FISL (Porto Alegre) http://aurelio.net/viagem/fisl-2003/
Desenvolvimento Livre http://aurelio.net/doc/changelog-nerd.html
_______________________________________________________________________
Yahoo! Mail
Mais espaço, mais segurança e gratuito: caixa postal de 6MB, antivÃrus,
proteção contra spam.
http://br.mail.yahoo.com/
- undelete em linux, Gustavo Adolfo Kellermann, 2003/07/10
- Re: [shell-script] histórias de terror na tela negra,
Aurelio Marinho Jargas <=