Archive for the ‘Dicas e truques’ Category
Problemas com ACPI no Red Hat Enterprise Linux 5.1.
É sempre bom compartilhar problemas… e soluções, é claro! Recentemente, precisei instalar um RHEL 5.1 (Red Hat Enterprise Linux) em algumas estações de trabalho HP Compaq. Logo após o boot com o DVD-ROM de instalação, a seguinte mensagem era apresentada e o sistema ficava "travado":
ACPI: Interpreter enabled
ACPI: (supports S0 S3)
ACPI: Using IOAPIC for interrupt routing
ACPI: PCI Root Bridge [PCI0] (0000:00)
Lembrei de um antigo problema que as versões mais antigas do Red Hat apresentavam para lidar corretamente com o ACPI. Então, tentei iniciar o processo de instalação da seguinte maneira:
boot: linux noapic nolapic
Sem sucesso. O sistema interrompia seu funcionamento com as mesmas mensagens. Depois de algumas outras tentativas igualmente ineficazes, encontrei a solução. Iniciei o processo de instalação com as seguintes opções e tudo funcionou perfeitamente:
boot: linux pci=nomsi,nommconf
Se, de alguma maneira, essa dica puder ajudá-lo algum dia, missão cumprida!
Script para corrigir problema de cedilha no Ubuntu 9.04.
Recentemente, postei por aqui uma maneira de resolver o problema do cedilha no Ubuntu 9.04 quando o idioma do sistema é instalado em inglês. Para facilitar a correção do problema e evitar a necessidade de edição manual de arquivos de configuração do sistema, fiz um rápido script para efetuar as correções necessárias.
Depois de baixar o script, basta executá-lo com privilégios de root em um terminal de comandos:
$ sudo <caminho onde o script foi salvo>/u904fixkbd4me.sh
Você pode obter o scritp AQUI.
Testei o script em algumas de minhas instalações e tudo parece ter funcionado bem.
Aproveitando melhor o seu histório de comandos de uma shell bash.
Nos últimos dias, navegando pela Internet, deparei-me com uma pequena mas interessante dica publicada no site da Linux Journal, sobre um pequeno e útil recurso para otimizar a utilização do histórico de comandos da shell bash, mais popular em distribuições GNU/Linux. Aproveitando a oportunidade, apenas comento, com minhas próprias palavras e em bom português o conteúdo dessa dica, acrescentando algumas outras informações.
Uma shell bash possui muitos recursos interessantes apesar de que muitos administradores não costumam utilizar nada além do básico. Dentre esses recursos, um dos que podem ajudar bastante na produtividade e no dia-a-dia é o histórico que permite com que se consulte, recupere, corrija e execute novamente comandos utilizados em momentos anteriores. Esse recurso, entretanto, vai muito além de simplesmente utilizar as setas pra cima e pra baixo do teclado para rastreá-lo.
Que tal utilizar man pages coloridas?
Ao contrário de outros sistemas operacionais onde o "help" e os manuais internos não servem pra muita coisa, sistemas GNU/Linux, da mesma maneira que os seus antecessores baseados em Unix, contêm as famosas man pages, uma espécie de manuais online que trazem informações muito úteis a respeito de comandos, arquivos de configuração e outros recursos do sistema operacional. Até mesmo administradores de sistemas GNU/Linux mais experientes costumam consultar frequentemente as man pages do sistema operacional em busca de solução para os seus problemas diários.
Apesar de úteis e com uma estrutura padronizada que facilita a leitura e a busca de informações, as man pages possuem uma formatação muito simples. Que tal ajudar um pouco a melhorar sua aparência com um pouco de cor?
Problemas com o cedilha no Ubuntu 9.04.
Recentemente, instalei o Ubuntu 9.04 em meu notebook. A qualidade dessa distro, como de costume, vem aumentando. O instalador tem ficado cada vez mais intuitivo e o ambiente bastante confortável para o usuário final. Entretanto, tenho por "mania" sempre instalar meus sistemas pessoais, primeiramente, em inglês. Como o teclado de meu notebook é no formato americado, como de costume, no momento da instalação escolho o layout US International, que viabiliza o processo de acentuação, necessário na língua portuguesa. Entretanto, pra minha surpresa, ao utilizar o sistema, a combinação das teclas ‘ + c gerava um "c com acento agudo" ao invés da por mim esperada cedilha.
Problemas com webcam Syntek no Ubuntu 9.04.
Assim que adquiri meu laptop atual, um Asus F9S, fiquei algum tempo sem poder utilizar a webcam integrada. Estava começando a ministrar um treinamento de segurança de redes com mais de 120 horas e, como o dispositivo não funcionou imediatamente após a instalação do sistema operacional, o Ubuntu Linux 7.10 na época, acabei deixando pra depois. Passadas algumas semanas, descobri um driver, ainda em desenvolvimento, o stk11xx, que a fez funcionar perfeitamente.
Aqui está a identificação da webcam Syntek:
Bus 002 Device 003: ID 174f:6a33 Syntek Web Cam – Asus F3SA, F9J, F9S
Com o Ubuntu Linux 8.04 tudo passou a funcionar “out of the box“, sem sequer necessitar da compilação do driver stk11xx. No Ubuntu Linux 8.10, uma nova surpresa: o dispositivo não funcionou após a instalação do sistema operacional. Entretanto, mesmo que essa situação fosse incômoda e representasse uma “volta no tempo”, a simples compilação do stk11xx foi suficiente para dar vida, novamente, à minha webcam.
Acabei de instalar o Ubuntu Linux 9.04, liberado no dia 23 de abril de 2009 e uma nova surpresa: o dispositivo não estava funcionando novamente logo após a instalação do sistema.
Criptografia rápida com o GPG.
Muitos sabem da importância de se utilizar dos recursos criptográficos para proteger informações críticas, entretanto, são poucos os que utilizam em suas rotinas diárias esses artifícios. Ferramentas (livres) existem muitas e um dos maiores exemplos é o próprio GPG (GNU’s PGP), presente, por padrão, na maioria das distribuições GNU/Linux.
Obviamente que, criptografia não se resume apenas a confidencialidade, que corresponde ao mecanismo de tornar restrito o acesso à alguma informação contida em um arquivo, por exemplo. Entretanto, esse é um dos seus serviços mais populares. Partindo de um exemplo muito simples e didático. Suponha que, em um arquivo texto, você guarde algumas senhas importantes para acesso a sistemas sobre sua administração. É mais do que prudente evitar que o conteúdo desse arquivo seja exposto facilmente e, nesse caso, confiar apenas nos recursos de controle de acesso do sistema de arquivo não é, certamente, uma prática muito segura.
Para essa finalidade é possível "criptografar" esse arquivo utilizando-se uma senha, simplesmente por meio do seguinte comando:
myhost$ gpg -c /home/user/passwords.txt
Em seguida, será solicitada uma senha e sua posterior confirmação. A proteção do conteúdo do seu arquivo será proporcional à complexidade da senha utilizada em seu processo de cifragem. Portanto, não escolha senhas fracas e fáceis de serem exploradas. O resultado da execução do comando anterior é a geração de um arquivo com mesmo nome daquele informado como parâmetro acrescido da extensão ".gpg". O arquivo original, a partir desse momento, pode ser descartado:
myhost$ rm /home/user/passwords.txt
Para obter o arquivo original novamente, deve-se "descriptografar" o conteúdo do arquivo /home/user/passwords.txt.gpg. Para isso, basta utilizar o seguinte comando:
myhost$ gpg -d /home/user/passwords.txt.gpg > /home/user/passwords.txt
Tão logo a senha utilizada no processo de cifragem seja inserida, o arquivo original será recuperado imediatamente. Esse mesmo recurso pode ser utilizado para "criptografar" arquivos de quaisquer formatos. Suficientemente simples para não deixar mais arquivos críticos desprotegidos em seu sistema de arquivos, não?
Vale lembrar que no exemplo apresentado utiliza-se criptografia simétrica, ou seja, tudo que é feito com uma chave (senha) é desfeito com a mesma chave. Portanto, é importante saber que se você esquecer a senha utilizada para criptografar um arquivo não será mais possível recuperar seu conteúdo.
O GPG tem muitos outros recursos interessantes, tais como a utilização de criptografia assimétrica, assinatura digital, dentre outros. Vale a pena conhecer!
Outro aquário para seu GNU/Linux…
Dessa vez, a dica não é para o terminal de comandos, entretanto, a exemplo do Steam Locomotive e do Asciiquarium, é apenas mais um item para compor a lista de inutilidades para ambientes GNU/Linux. Nos raros tempos de folga, para descontrair, procurar por tais "futilidades linuxers" é, antes de tudo, uma mania quase que incontrolável e, também, uma forma de se divertir um pouco.
Seguindo a linha "aquática". a bola da vez é o xfishtank, que transforma seu background estático em um verdadeiro aquário em movimento, por onde transitam peixes dos mais variados estilos, tamanhos e formatos, cobras marinhas, arraias, além, é claro, dos temidos tubarões. O mais interessante dessa solução é a leveza proporcionada pelo mundo marinho ao seu ambiente de trabalho. Enquanto trabalha, você acompanha a vida marinha seguir seu curso natural!

Apesar de ser um aplicativo antigo e estar disponível nos repositórios default de muitas distribuições GNU/Linux, o xfishtank, entretanto, é pouco conhecido até mesmo para usuários GNU/Linux mais antigos. E, como não poderia ser diferente, sua instalação é bastante simples, principalmente em distros que possuem um bom gerenciador de pacotes. No Ubuntu, por exemplo, a instalação resume-se ao seguinte comando:
$ sudo apt-get install xfishtank
Um (ascii)aquário no seu terminal…
É uma prática que me acompanha há anos: aproveitar meu pouco tempo livre para procurar por "inutilidades engraçadas e divertidas". Fã confesso da linha de comandos e defensor do poder de um bom terminal como uma ferramenta poderosa para o dia-a-dia de qualquer administrador de sistemas Unix ou qualquer outro tipo de profissional que necessite interações mais avançadas com esse tipo de sistema operacional, dediquei parte desse período de decanso para, exatamente, encontrar "futilidades" voltadas o terminal que possui, frequentemente, fama de "carrancudo" e "pouco divertido".

Tema de um post recente aqui do meu site, o "sl" (Steam Locomotive) provê uma forma, no mínimo engraçada, para lidar com um dos erros mais comuns dentre aqueles que utilizam o terminal de comandos: trocar as letras do popular comando "ls" por "sl", foi. Nesse caso, ao invés de receber um frio "comando não encontrado" (ou "command not found" nos sistemas instalados em inglês), uma locomotiva em formato texto atravessa sua janela de comandos.
O período de busca ainda me permitiu conhecer o Asciiquarium, um verdadeiro aquário dinâmico que exibe a vida marinha em seu terminal. Peixes dos mais variados formatos e tamanhos, baleias e barcos fazem parte do cenário. E, como não poderia deixar de ser, regido pelas leis naturais, até o tubarão faz uma aparição repentina, devorando os peixes menores que encontra pela frente… De vez em quando, um barco a velas também passa pela superfície, alheio a toda a movimentação marinha submersa nos mares dos caracteres.
Quer instalar o Asciiquarium? Dá uma olhada no restante do post, então…
Cuidado com o “ls”!

Não é raro, principalmente para aqueles que tem certa habilidade com o teclado, digitar comandos no terminal de um sistema GNU/Linux trocando ou invertendo as letras. Atire a primeira pedra aquele que interage com o sistema do pinguim diariamente e nunca cometeu esse tipo de erro. Comandos com nome pequeno são as maiores vítimas desses enganos e nessa lista o "ls", seja pela frequência com que é utilizado, seja pelo seu nome composto de apenas duas letras, certamente disputa as primeiras colocações.
De tão comum é o engano em trocar o "ls" por "sl" que o último acabou se tornando um pacote de software de verdade somente para fazer com que algo diferente de um "command not found" apareça em seu terminal quando você cometer o engano de trocar as letras do comando "ls". Nesse caso, uma vez instalado o pacote "sl" (Steam Locomotive), todas as vezes que o clássico erro acontecer, uma locomotiva, desenhada apenas com caracteres, atravessa todo o seu terminal!
Em sistemas baseados no sistema de gerenciamento de pacotes APT (Debian GNU/Linux, Ubuntu Linux, etc), basta executar o seguinte comando (como super-usuário) para instalar o sl:
# apt-get -y install sl
Útil? Nem tanto. Ao menos é divertido…
