Archive for the 'Dicas' Category

Não façam isto em casa!!! [explicação]

Saturday, January 20th, 2007

Eita como brasileiro é curioooso….

Atendendo a alguns emails e comentários de pessoas que ficaram curiosas em relação ao “comando” postado.

:(){ :|:& };:

O que é isto?

É uma função em bash. Sua forma de ação é denominada fork bomb.

O que isto faz?

Ele basicamente cria um número exponencial de processos muito rapidamente, mais rápido do que o processador é capaz de aguentar. Uma vez disparado, o processador é entupido com vários processos em thread impossibilitando o carregamento de novos programas e deixando os programas existentes em baixa prioridade (-n19). Não se preocupe, isto levará apenas alguns milésimos de segundos, quanto mais rápido o processador, mais rápido ele vai agir, ou seja, é uma forma incomumente insustentável de retroatividade.

Que sistemas estão vulneráveis?

Praticamente todo sistema que suportar a função ‘fork’, ou seja, todos os sistemas operacionais de computadores.

O Windows, não escapa desta também (que dúvida…), mas há uma diferença… até onde sei, não é possível limitar o número de processos no Windows (
Se você quiser fazer um teste com seu amigo que usa Windows basta criar um batch com o seguinte conteúdo:

:s
start %0
goto s

Seria, no mínimo, interessante botar isto no autoexec.bat :D

Como parar?

Uma vez disparado, o processo não pode ser interrompido, pois ele se auto-executa recursivamente em looping infinito. Sua máquina, irrevogavelmente, travará e será necessário reinicia-la.

Como se previnir?

Um fork bomb é uma forma de ataque DoS (Denial of Service). A maneira de se proteger dele é limitando o número de processos ou o número de processos equivalentes. Para limitar o número máximo de processos por usuário, basta dar o comando:

ulimit -u 1000

Onde 1000 é o número de máximo de processos por usuário.

Para maiores detalhes e sintaxe do ulimit, digite ‘help ulimit’.

Explicando a função:

Vou tentar explicar resumidamente a função:

Começa-se criando uma função chamada “:” que não aceita argumentos “()” e se reinicia recursivamente em loop, jogando a saída para ela própria “:|:”, e ainda chamando a função-mãe ao final “:” para que crie um loop dentro do loop.

Considerações finais:

Reza a lenda que esta função é um dos fork bombs mais fatais, que sua execução pode até mesmo vir a causar um buffer overflow, queimando o processador.

Fonte:
http://www.euglug.org/pipermail/euglug/2005-August/004338.html
http://en.wikipedia.org/wiki/Fork_bomb

Não façam isto em casa!!!

Saturday, January 20th, 2007

Outro dia num canal IRC qualquer um usuário desesperado com algum problema qualquer, que quebrou seu sistema, estava pedindo alguma ajuda, no entanto, naquele momento, não havia ninguém que pudesse ajuda-lo, pelo menos não da forma que ele gostaria.

Eis o diálogo (lembrando que, de forma alguma, tive qualquer tipo de envolvimento nesta história >:P )

-newuser- alguém aqui tem mais alguma idéia? Qualquer coisa…

-baduser- sudo rm -fr /* ?!

newuser has quit (Read error: 104 (Connection reset by peer))

… 2 horas mais tarde …

newuser (n=somename@somedns) entrou em #somechannel

-newuser- obrigado por me fazer remover todo o meu sistema raíz!!! :S

Se alguém disser para você dar algum destes comandos, não o faça:

sudo rm -fr /
nohup cd /; rm -fr * > /dev/null 2>&1 &
dd if=/dev/zero of=/byebyemyhdspace

Eles estão apenas brincando com você, e não esperam realmente que você o faça (pelo menos não a maioria deles :)). Os primeiros destruirão seu sistema raíz, o ultimo apenas acabará com o espaço da partição raíz se não for interrompido a tempo.
Por isso eu digo: Não façam isto em casa!!!

ATENÇÃO, ACONTEÇA O QUE ACONTECER, NUNCA, MAS NUNCA MESMO, DIGITE O SEGUINTE CÓDIGO EM UM TERMINAL:

:(){ :|:& };:

Você foi avisado ;)

WikiPage: Gerenciamento de Softwares e Pacotes

Sunday, November 12th, 2006

Tudo o que você precisa saber sobre Gerenciamento de Pacotes e Softwares no Ubuntu.

GerenciamentoDePacotes

Lá temos um pouco sobre:

  • Instalando Softwares
    • O que é um pacote?
    • Dependência de Pacotes
    • Gerênciadores de pacotes
    • Repositórios
  • Gerenciando Repositórios
    • Dapper
    • Edgy
  • Gerenciador de Pacotes Smart
  • APT-GET

Acesse e veja você mesmo!

Neste momento estamos precisando de uma WikiPage especial sobre o Synaptic e Gerenciamento de Pacotes pela linha de comando. Temos o APT-GET, mas a página está bem básica e não cobre muitas de suas funcionalidades. Se quer contribuir, sinta-se a vontade e agregue seu conhecimento à estas páginas. Se não possui muito conhecimento sobre como editar um wiki, veja o GuiaWiki.
Agradecimentos especiais ao AlexRocha e todo o Time de Documentação

GuiaWikiUbuntuBrasil/PrimeiraParte

Saturday, September 9th, 2006

Você provavelmente já deve ter ouvido falar [ou lido, mais provavelmente] a palavra WIKI. Mas você sabe o que é? Sabe como funciona? Ou para que serve?

Este post é o primeiro de uma série que visará ensinar como registrar-se, criar páginas, editar, wikificar, formatação e layout, dentre outras dicas sobre o Wiki e como contribuir com o Time de Documentação do Ubuntu Brasil.

Bom, vamos do princípio: Wiki é uma palavra havaiana que significa [dentre outras coisas] super-rápido. A sua pronúncia é a mesma em qualquer idioma: Uíkie ou Wíquie.

Wiki é um sofware web-based que permite a edição colaborativa de textos, onde todos podem contribuir e agregar informação e conteúdo as suas páginas internas.
Existem diversos softwares Wiki, dentre eles podemos citar MediaWiki, MoinMoin, UseModWiki e TWiki. O MediaWiki é particularmente conhecido devido à Wikipédia. Destes, o meu predileto é o MoinMoin :D pois ele é usado no Wiki e na Documentação de suporte oficial do Ubuntu, sem falar que ele também é usado pelo nosso Wiki Ubuntu Brasil.

Wiki na prática:

O nosso Wiki é um repositório de rica documentação em português que, ultimamente, tem sido reestruturado para comportar e padronizar toda a vasta documentação que demanda cada novo usuário do Ubuntu. Como disse em um post anterior, documentação é uma das coisas mais importantes para um sistema ser bem sucedido.

  • Registrando-se no wiki:
    1. Acesse o wiki;
    2. No canto superior direito, próximo a caixa de busca, há um link login. Ao clicar aparecerá uma página solicitando alguns dados dados.
    3. Preencha os campos com seus dados e clique em Criar novo perfil.
    4. Feito isso aparecerá uma pagina mostrando suas opções pessoais. Coloque seu nome usando captalização de letras, no formato: NomeSobrenome (por exemplo, se seu nome é Joaquim Oliveira coloque como login JoaquimOliveira.
  • Criando sua WikiPage
    1. Salve as alterações e então no lado superior direito da página aparecerá seu WikiName (o nome que utilizou para registrar-se no wiki), basta clicar nele e uma página para edição abrirá.
    2. Esta é sua WikiPage. Insira nela seu nome, email, link para sua página no launchpad e uma pequena descrição de quem é o que faz… etc.

Fácil né?! Que tal começar registrando-se e criando sua WikiPage?!

O que? Não pode esperar até o próximo post? Então seguem alguns links interessantes:

http://wiki.ubuntubrasil.org/Documentacao
http://wiki.ubuntubrasil.org/TimeDeDocumentacao
http://wiki.ubuntubrasil.org/TimeDeDocumentacao/GuiaWiki

Removendo completamente um ambiente desktop específico

Friday, August 11th, 2006

Desde que comecei a usar Linux, eu usei como desktop primário o KDE. Não por que não gostava do GNOME, nem tampouco por que amava o KDE, simplesmente o usava por que… usava.

Quando conheci o Ubuntu, com ele também me apaixonei pelo GNOME, e desde então o GNOME é minha interface gráfica pradrão/predileta. Mas tudo é uma questão de gosto mesmo, pois eu, ainda preferindo o GNOME, ainda gosto do KDE, tanto, que a cada nova versão, eu tenho uma certa… humm… curiosidade de testá-lo, para ver como anda o progresso: ver se já reduziram o número de botões, se já tiraram alguns menus duplicados, se já migraram a biblioteca para GTK (brincadeirinha :P).

Mas o fato é que volte e meia eu não resisto e dou um apt-get install kubuntu-desktop só pra testar, e olha que no primeiro uso, até gosto bastante, muito mesmo… mas depois de alguns poucos dias eu não me aguento e volto correndo para o GNOME, e é hora de remover toda a “tralha” (no bom sentido) que o KDE deixa pelo caminho ;)

Bom há algum tempo atráz eu ia “catando” os pacotes para remoção, e ainda assim o sistema ficava meio híbrido, o que eu não gosto.

Descobrí então que o fantástico e automágico aptitude poderia fazer o trabalho sujo para mim. Ou seja, se eu instalar um metapacote como o kubuntu-desktop, xubuntu-desktop ou ubuntu-desktop usando o aptitude, bastaria um:

aptitude remove kubuntu-desktop

Claro, substituindo o kubuntu-desktop pela interface que você deseja remover :P

Mas se você, assim como eu, instalou pelo apt-get ou então pelo Synaptic, então amigo, a única solução é remover tudo na mão mesmo, pois se der um apt-get remove kubuntu-desktop, ele removerá somente o meta-pacote, e não todos os pacotes e dependências que vieram com ele :(

Mas para [quase] tudo na vida existe uma solução simples!

Veja nesta página do Wiki como remover completamente um determinado ambiente gráfico.

Voltando ao GNOME (Ubuntu) puro

Para remover completamente o KDE e/ou o XFCE do seu computador e voltar somente ao Ubuntu puro, com GNOME, proceda da seguinte forma:

/VoltandoAoUbuntu

Voltando ao KDE (Kubuntu) puro

Para remover completamente o GNOME e/ou o XFCE do seu computador e voltar somente ao Kubuntu puro, com KDE, proceda da seguinte forma:

/VoltandoAoKubuntu

Voltando ao XFCE (Xubuntu) puro

Para remover completamente o GNOME e/ou o KDE do seu computador e voltar somente ao Xubuntu puro, com o XFCE, proceda da seguinte forma:

/VoltandoAoXubuntu