Usando a ferramenta certa

Diz o ditado que quando a única ferramenta que você tem é um martelo todos os problemas parecem um prego. E o pior é que vira-e-mexe eu me deparo dando martelada em parafuso ou algo que o valha. Eu sou um grande fã de shell script. Acho extremamente eficiente, simples, funcional e, se você conhecer comandos e truques o suficiente consegue fazer coisas realmente impressionantes com 1 linha. Pelo menos uma vez ou duas por dia alguém vem na minha sala com algum pedido para fazer um script ad-hoc pra resolver algum problema, fazer parse de algum arquivo ou update em massa de sabe-se lá o que. Invariavelmente resolvido com um for loop, um sed ou tr ou grep (ou todos juntos) e vamos que vamos. ...

June 18, 2012 · Eri

Criando DNS dinâmicos com sua conta no DreamHost

Sou cliente do DreamHost já faz um tempo e acho o serviço deles sensacional. Uma feature que eu ainda não tinha usado é a API que eles disponibilizam para todos os clientes. Bem bacana e flexível. Como em casa eu tenho IP dinâmico e vez por outra ele muda justamente quando preciso acessar de volta resolvi aproveitar e fiz um shell script quick’n dirty pra usar esse recurso bacana. Sei que existem diversos serviços de DNS dinâmico por ai, mas preferi essa alternativa que pode ser útil pra mais alguém com uma necessidade parecida. 😉 ...

October 8, 2010 · Eri

Restingindo acesso com rbash

Como sysadmins vez por outra a gente precisa dar acesso a clientes, parceiros ou outro tipo de usuário temporário/untrusted aos servidores. Apesar de criar um jail root completo ser a melhor solução muitas vezes é mais trabalho do que o necessário e começa a entrar naquele cenário em que a segurança atrapalha a usabilidade e os negócios. Uma forma simples de conseguir uma segurança bacana é utilizar o modo restrito do bash. Com isso habilitado o shell irá desabilitar as seguintes funções: ...

December 22, 2009 · Eri

Desafio do Beakman

Lembram do Beakman? uhauhauhauha… Eu cai na seguinte situação: Tenho um número X de servidores que tem um usuário que eu posso utilizar para dar login. Existem 4 senhas possíveis para este usuário, mas eu não sei qual senha está em qual servidor, de forma que eu tenho que ir tentando até conseguir quando tento conectar no mesmo. Depois de conseguir dar login na máquina eu tenho que virar root. Eu sei que cada servidor tem uma senha de root diferente, mas sempre que eu usar a senha de usuário X a senha de root vai ser Y, senha de usuário A, senha de root B. ...

June 16, 2009 · Eri

Nested variables no Bash

Não sei ao certo como é o nome em português. Variáveis aninhadas? 😛 Me deparei com um problema assim hoje: Eu tinha uma função num script shell que recebia um parâmetro de sucesso ou erro. Eu executava algumas coisas e depois tinha que jogar uns dados no arquivo respectivo. Então inicialmente tinha setado uma variável com os paths dos caminhos: Minha função recebia o status como o primeiro argumento ($1) e por isso depois de processar eu precisaria de algo assim: ...

May 30, 2009 · Eri

Arrays associativos no Bash 4.0

O Bash 4.0 foi lançado na segunda-feira e trouxe uma nova capacidade que sempre vejo as pessoas pedindo: Arrays associativos. E funciona que é uma maravilha… Mais informações sobre as novas features aqui.

February 25, 2009 · Eri

Truques no Bash

Alguns truques para facilitar o seu dia-a-dia na linha de comando: !$ Representa a última parte do último comando executado. Exemplo: Expansão automática Expande automaticamente os valores entre chaves. Uma mão na roda para loops: Também funciona com letras: E pode ser útil em situações assim: ...

January 15, 2009 · Eri

Estou entre os maiores do shell scripting

Na foto (esquerda pra direita): Eu, Júlio Cézar Neves e Aurélio Marinho Jargas. Autores de “Programacão Shell Linux” e Shell Script Profissional. Entenderam? “Entre os maiores”? Hein? Hein? Macaco do Chongas rulez. Voltamos à programação normal.

November 5, 2008 · Eri

checkout

À medida que você precisa administrar mais e mais servidores, cada um rodando seus serviços e daemons específicos fica mais complicado saber o que está em casa máquina. Pior ainda quando você precisa que alguém com menos experiência ou conhecimento (aka suporte nível 1) verifique para você o estado do servidor. A idéia é então centralizar essa checagem num único script, simples e funcional, para facilitar a sua vida e a dos outros admins. ...

October 21, 2008 · Eri

mkfile for Linux

Eu não conhecia o mkfile do Solaris até ontem, mas foi só usar um pouco e deu pra ver que é muito mais prático e rápido do que ficar utilizando o dd no Linux. Não sei os meus 2 leitores geeks (já que meu pai, minha mãe e minha esposa – meus outros 3 leitores – não se encaixam nesta categoria), mas eu tenho que olhar o man ou o google toda vez que preciso criar um arquivo em branco com o dd. Tenho algum tipo de bloqueio com aquela sintaxe chata dele. ...

October 3, 2008 · Eri