Utilizando o VIM como IDE para o Bash

Como já devem saber eu sou da turminha do vi. Nada contra o Emacs, lógico, mas vi é vi. O relacionamento com ele nunca começa bem. Lembro-me que a primeira vez que abri o vi, num SCO Unix, o único jeito que consegui sair do editor foi rebootando a máquina. Eu não tinha nem idéia de que bastava um ESC:q! para cumprir a tarefa. Mas passados 11 anos ou mais deste início traumático, posso dizer que me dou bem com o editor hoje em dia, utilizando-o inclusive para escrever posts no meu blog, como neste momento o faço. ...

September 9, 2008 · Eri

Morre!

Uma funçãozinha muito útil do Perl é a “die”. Fica fácil gerar mensagens de erro e já abortar a execução numa tacada só. Segue a versão primo-pobre para bash: Exemplos de uso: ou

September 8, 2008 · Eri

Benchmark de Servidores DNS Recursivos

A recente vulnerabilidade no protocolo DNS causou uma grande quantidade de estudos sobre o assunto recentemente. No meu trabalho não foi diferente e de certo modo ainda pior. Depois de analisar com cuidado o atual cenário do DNS por lá e trabalhar alguns dias para aplicar todas as correções, cheguei à conclusão que arrumar a atual configuração seria apenas empurrar com a barriga um problema maior e por isso minha idéia foi implantar um novo par de DNS recursivos para substituir o atual. O número de usuários locais não é muito grande – cerca de 5000 – mas pelo que fui informado são todos heavy-users e já houve vezes em que o servidor DNS abriu o bico. O desafio então foi encontrar uma solução que conseguisse atender bem os usuários sem exigir muito hardware, já que serão necessários dois novos servidores para o serviço. Os candidatos Depois de uma olhada aqui, adotei os seguintes critérios: Deveria ser Open Source, com possibilidade de rodar no Linux ou no Solaris e eu já deveria, pelo menos, ter ouvido falar. Os 4 escolhidos foram: Bind MaraDNS djbDNS PowerDNS ...

August 4, 2008 · Eri

De volta à universidade

Pois é. Estou voltando pra universidade. Mas não, não é isso que você está pensando. Estou indo trabalhar para uma universidade. Meu atual emprego até que foi interessante até um determinado ponto. Aprendi muito e vi como é infra-estrutura de IT de gente grande. E aprendi como é que se implementa Linux no que se chama “enterprise class” e entendi porque wall-street ama open source. Também me mandaram pra Nova York e me deram curso de Perl. E só de birra, resolvi aprender Python. Além de que a famosa frase “a prática leva à perfeição” se mostrou real com o tanto que tive que colocar minha experiência com Bash pra funcionar. ...

July 12, 2008 · Eri

Bash vs Perl vs Python

Comentei aqui que estava fazendo curso de Perl na semana passada, além de ter decidido estudar também Python por conta própria. Não posso deixar de citar também que tenho uma experiência considerável com bash script e que esta era oficialmente a única “linguagem de programação” que conhecia até os eventos anteriormente citados. Nem me arrisco a dizer que conheço bem Perl ou sequer um pouco de Python, então por favor entendam minha opinião apenas como isso: Minha opinião. ...

May 11, 2008 · Eri

goto no Bash

Um dos problemas que eu enfrento no serviço é que eu tenho que administrar trocentos servidores e a única coisa que não me segue de um servidor pra outro é meu history do bash. A razão não vale a pena discutir, mas concordo com ela. Então alguns comandos que uso repetidas vezes acabam tendo que ser digitados de novo e de novo e de novo. Mas hoje vi uma mensagem na lista de Shell Script que resolveu meu problema. 😉 ...

May 10, 2008 · Eri

Hein?

Cá entre nós, estou achando Perl sensacional, mas dêem uma olhada no código abaixo, que acabei de fazer: A sua pergunta no momento deve ser: “Que m* é essa??”. Pois é. Este é o “problema” do Perl, na minha opinião. Qualquer mané (aka /me) com 2 dias de curso consegue fazer um código, que funciona, mas não faz o menor sentido pros demais habitantes do planeta. ...

May 6, 2008 · Eri

Indo além do Bash

Sei que sou um geek meia-boca toda vez que entra programação na parada. Quer dizer, eu me viro muito bem com shell script e fiz/faço muita coisa nervosa com Bash. Inclusive já tirei muito barato de nego que trabalhou comigo porquê enquanto eles abriam o Eclipse (ou outro IDE que o valha) para criar um programa pontual, eu já estava rodando o dito cujo em shell. Mas tem coisas que simplesmente forçam muito a amizade do Bash e o bichinho não tem features para resolver o problema. ...

April 11, 2008 · Eri

De volta às raízes

Depois deste outro post não teve jeito… O dedo coçou e eu tive que baixar o Slackware. Lógico que não coloquei ele no nosso computador de uso corrente, mas sim dentro de uma instância de VMWare. Já falei que adoro virtualização? O que eu tinha na cabeça era o seguinte: Pelo menos desde 1999 eu não coloca as mãos no Slackware. E vale aqui abrir um longo parênteses: Comecei com Conectiva Marumbi (com uma rápida passagem anterior pelo RedHat, nem sei que versão), passei pelo Conectiva Guarani, Conectiva 4.0 e depois Slackware. A linha do tempo bate? Nem sei mais. Alguém lembra as datas de lançamento das versões? Rodei Slackware talvez por uns 6 meses, mas surgiu na época uma possibilidade de negócios em relação ao SuSE e usei essa distribuição por um bom tempo, até conhecer o Debian. Depois foi um pinga-pinga entre Debian e Kurumin (Debian em servidores e Kurumin em desktops) até eu conhecer o Ubuntu, que tenho usado desde então. Vale dizer que durante uma época por volta de 2000 eu tinha uma máquina de testes e participava de um grupo de usuários que recebia CD de tudo quanto é lado mundo e por isso tive a chance de brincar com distribuições como Caldera Linux (SCO, alguém?), Corel Linux, Turbo Linux e diversos outros já falecidos neste momento. Fecha parênteses. Ou seja, eu já fui geek de verdade. Compilava meus próprios programas do fonte, já que tanto na época do Slackware como do SuSE tinha muita coisa que só dava pra instalar via fonte. Hoje é ridiculamente simples instalar o Ubuntu, dando um duplo-clique no Live-CD e respondendo meio dúzia de perguntas, mas a coisa já foi bem diferente. E achei que valia a pena, mesmo por diversão, reviver os bons momentos do passado com o bom e velho Slackware. Me propuz a fazer o seguinte: Baixei o ISO, configurei o VMWare pra dar boot usando a imagem, coloquei a máquina virtual em full screen e decidi fingir que não tinha mais nenhum recurso à minha disposição. Afinal era isso que acontecia no passado. Uma vez iniciado o processo de instalação você estava por conta própria. Não era simples fazer uma instalação dual-boot e eu logo que comecei a usar Linux já tinha decidido por single boot. Então não tinha pra onde correr. Era pra macho. Você, o teclado e uma telinha preta. Me colocando neste cenário então parti pras cabeças. ...

February 15, 2008 · Eri

#!/bin/bash

Falei no post anterior que to ficando nerd… Acreditem em mim… Olha só que feature não documentada do Bash eu achei: $ for ((i=0;i<=5;i++)); do echo Esse eh o $i; done<br /> Esse eh o 0<br /> Esse eh o 1<br /> Esse eh o 2<br /> Esse eh o 3<br /> Esse eh o 4<br /> Esse eh o 5 Sim. É isso mesmo. Sintaxe estilo C no nosso querido bash. Não sei qual a versão mínima pra funcionar isso, mas testei até na 3.0 e funciona. ...

December 21, 2007 · Eri