8 de set de 2014

Estudo FGV - Software Livre


5 de set de 2014

Dicas bash

Ao usar linhas de comando, muitos sysadmins não dão a mínima para shell's coloridos, mas pode ser interessante se você tem tempo livre para colorir seu terminal. Abaixo, as principais configurações, considerando o bash como shell padrão em um sistema com Debian.

Primeiro, dica para colorir saídas de 'man pagens'. Altere o seu ~/.bashrc com as seguintes linhas:
#begin blinking

export LESS_TERMCAP_mb=#39;\E[01;31m'

# begin bold 

export LESS_TERMCAP_md=#39;\E[01;33m' 

# end mode 

export LESS_TERMCAP_me=#39;\E[0m' 

# begin standout-mode - info box 

export LESS_TERMCAP_so=#39;\E[01;41;37m' 

# end standout-mode 

export LESS_TERMCAP_se=#39;\E[0m' 

# begin underline 

export LESS_TERMCAP_us=#39;\E[01;32m' 

# end underline 

export LESS_TERMCAP_ue=#39;\E[0m' 


Feito isso recarregue seu bashrc com o comando source e teste abrindo uma man page.

Colorindo saídas do grep:
alias grep='grep --colour=auto' 
Alterando a variável PS1 do usuário root, destacando e colorindo para outros usuários do sistema. Esta variável pode estar comentada no seu /etc/bash.bashrc:
#
if ${use_color} ; then

        if type -P dircolors & >> /dev/null ; then
                if [[ -f ~/.dir_colors ]] ; then
                        eval $(dircolors -b ~/.dir_colors)
                elif [[ -f /etc/DIR_COLORS ]] ; then
                        eval $(dircolors -b /etc/DIR_COLORS)
                fi
        fi

        if [[ ${EUID} == 0 ]] ; then
                PS1='${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\] '
        else
                PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[01;34m\] \w \$\[\033[00m\] '
        fi
else
        if [[ ${EUID} == 0 ]] ; then
                # show root@ when we don't have colors
                PS1='\u@\h \W \$ '
        else
                PS1='\u@\h \w \$ '
        fi
fi      

Ajustando tamanho do arquivo de históricos:
HISTFILESIZE=4000
HISTSIZE=4000
HISTCONTROL=ignoredups
export HISTFILESIZE
export HISTSIZE
export HISTCONTROL
Impedindo a remoção acidental por redirecionamentos de saida, tipo >, >&, e >>.
set noclobber
Desligando beep
set bell-style none
Fechando o shell por tempo de inatividade
export TMOUT=10000
Ajustando comandos rm, cp e mv para pedir confirmação ao manipular arquivos:
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
Exemplo de .bashrc pode ser obtido em  http://tldp.org/LDP/abs/html/sample-bashrc.html
Referências: man bash, /usr/share/doc/bash/examples

4 de set de 2014

uprecords

Perguntaram: como checar o  "uptime" do sistema e como saber o record da máquina! Pergunta simples, resposta simples. Em sistemas GNU/Linux sempre existe mais de um modo, para diferentes usos. Se não tiver um modo que lhe agrade, você pode criar um! Seja criativo;

Então o uptime da máquina,  pode ser checado pelos comandos: "uptime", "top", "htop", "w" e o uprecords, sendo que pelo último, temos o uptime e o record, tudo no mesmo comando:

uprecords
Como o uprecords não faz parte do pacote coreutils, então precisa ser instalado. Em ambiente Debian, instale o pacote uprecords-cgi:

aptitude install uprecords-cgi


Encontrei também a dica (1)  abaixo que recebe os parâmetros do uptime e mosta em dias e minutos:

uptime | \
sed s/^.*up// | \
awk -F, '{ if ( $3 ~ /user/ ) { print $1 $2 } else { print $1 }}' | \
sed -e 's/:/\ hours\ /' -e 's/ min//' -e 's/$/\ minutes/' | \
sed 's/^ *//'
Referências:
man uptime
man top
man htop
man w
man uprecords
(1)  http://www.cyberciti.biz/faq/server-uptime-command-to-find-out-how-long-the-system-has-been-running/

3 de set de 2014

Explorando arquivos com vim

Uma das ferramentas que ajudam na curva de aprendizado em ambiente GNU/Linux e Unix é o editor de textos vi ou vim, também conhecido como "ferramenta para configuração universal", já que auxilia o administrador do sistema a editar arquivos de configuração do sistema  operacional. Sendo portanto uma ferramente eficiente para manipulação de arquivos textos, nada como a utilização também para nevegar em diretórios e Exp(lorar) seus arquivos, permitindo total controle sobre eles, como se estivesse usando comandos do shell.
Confira alguns comandos que permitem a manipulação de arquivos através do vi/vim:

:Exp(lore)                         file explorer (note: capital E)
:Sex(plore)                       file explorer in split window
:ls                                     list of buffers
:cd ..                                move to parent directory
:args                                 list of files
:lcd %:p:h                         change to directory of current file
:autocmd BufEnter *   lcd %:p:h    change to directory of current file automatically
\be                                   buffer explorer list of buffers
\bs                                   buffer explorer (split window)

vim no modo :Exp


2 de set de 2014

6º Fórum de Tecnologia em Software Livre e 10º Software Freedom Day

Faltam poucos dias para o 6º FTSL e 10º SFD. É isso mesmo, dois eventos juntos tratando de tecnologias baseadas em Software Livre e troca de experiências com as comunidades, universidades e publico em geral, através de palestras, painéis/mesas-redonda e oficinas/minicursos.

Este evento é o maior e mais relevante em termos de Software Livre de Curitiba e Região, realizado anualmente, promovido pelo SERPRO, pelos seus funcionários da regional Curitiba, por professores, funcionários técnico-administrativos e estudantes da UTFPR e por membros da Comunidade Curitiba Livre


Local, data e sites:

O 6º FTSL acontecerá nos dias 18 e 19 de setembro de 2014 das 09h00min às 21h00min e o 10º SFD no dia 20 de setembro de 2014 das 09h00min às 18h00min.

Os dois eventos serão realizado nas dependências físicas do campus central da Universidade Tecnológica Federal do Paraná – UTFPR, sito a Av. Sete de Setembro, 3165 - Rebouças, em Curitiba – PR.

O site oficial do 6º FTSL é: http://www.ftsl.org.br e do 10º SFD é http://sfd.curitibalivre.org.br.

Inscrições gratuitas com certificado de participação.

Confira a relação de minicursos cuja inscrições estão abertas até dia 10/09: http://www.ftsl.org.br/minicursos 

8 de mai de 2014

I'm alive!

Sempre converso com meus servidores e estabeleço uma mão dupla nesta comunicação; leio log's sempre que preciso e procuro automatizar alguns resultados importantes dos processamentos que estas máquinas fazem, normalmente durante a madrugada. Recentemente ao ler um artigo da Linux Journal, descobri uma forma bem simples de ser avisado quando um servidor foi reiniciado, ou simplesmente inicializado (boot up);

A dica é simples (e inteligente) e se dá via e-mail, colocando a seguinte entrada no arquivo rc.local do servidor (/etc/rc.local):

echo "I'm alive!" | mail -s "I'm Alive, backup 200.x.x.x. !" sysadmin@exemplo.com.br

Você vai precisar que o sistema de e-mail esteja operante e o programa mail instalado (aptitude install bsd-mailx) considerando que esteja usando GNU/Debian;

Não é necessário reiniciar sua máquina para ver se funcionou, simplesmente execute:

/etc/rc.local
ou
source /etc/rc.local

O rc.local é executado sempre no nível multi-usuário e pode ser ou estar desabilitado através da mudança das permissões de excecução.


17 de abr de 2014

Flisol 2014



FLISOL - Festival Latino-americano de Instalação de Software Livre é um evento cujo propósito é promover o uso de software livre e a integração de comunidades de usuários de software livre em todos os países da América Latina. O evento acontece desde 2005 e seu e principal objetivo é promover o uso de software livre, apresentando sua filosofia, seu alcance, avanços e desenvolvimento ao público em geral.

Para executá-lo, serão realizados, simultaneamente, eventos em cidades diferentes em que especialistas irão instalar, de maneira gratuita e totalmente legal, software livre nos computadores das pessoas interessadas que comparecerem.

O evento, também conhecido como “Install Fest”, consiste em um grande encontro de pessoas com conhecimento em software livre e outras que querem conhecer mais sobre o assunto. Os visitantes deverão levar seus computadores ou notebooks para que voluntários ajudem a instalar o sistema operacional. Durante o período das instalações, são promovidas palestras de introdução (algumas filosóficas, outras técnicas), palestras sobre softwares específicos, palestras de grupos de usuários existentes, etc.

Dentre os softwares que serão instalados, estão distribuições de GNU/Linux e BSD, assim como programas livres para outras plataformas, como Microsoft Windows e MacOS.

O FLISOL 2014 em Curitiba será realizado no Campus da Pontifícia Universidade Católica do Paraná - PUCPR.
No Campus, você deve se dirigir para o 1o. andar do bloco azul (bloco 2) que fica entre o bloco amarelo e o bloco verde.

Veja o mapa do Campus.

A PUCPR está localizada na Rua Imaculada Conceição, 1155 - Prado Velho.

Programação de Palestras e Oficinas


Durante todo o horário de funcionamento do FLISOL em Curitiba estará acontecendo o Install Fest no hall de entrada do Bloco Azul, no 1o. andar. Basta o visitante chegar e pedir ajuda a um dos instaladores.
Paralelamente ao Install Fest acontecerão:
  • Palestras principais no Auditório Tristão de Ataíde no Bloco Amarelo
  • Palestras básicas na Sala 25 no Bloco Azul
  • Oficinas nos laboratórios do Bloco Azul

Consulte a programação completa no link abaixo:

Referências:

Outras cidades realizando FLISOL no Brasil:


4 de abr de 2014

Modificando o cursor no vim

Se sua rotina de trabalho incluir análise de arquivos texto, como layouts fixos, arquivos xml ou mesmo arquivos de log, uma boa alternativa para o vim é setar cursorline, que apresentará uma linha indicando a linha do cursor. Alternativamente, sete também cursorcolumn para ver a coluna do cursor; Para numerar as linhas, use set nu, finalmente, para linhas longas utilize set nowrap para apresentar linhas continuamente, sem a quebra na tela.

:set cursorline
:set cursorcolumn
:set nu
:set nocursorline
:set nocursorcolumn
:set nonu
:set nowrap

17 de mar de 2014

Sequências com vim / shell

Gerar uma sequência numéria pode ajudar em muitos casos, como por exemplo, gerar uma lista de números ip; com o Vim isto fica fácil de resolver por exemplo, suponha que necessita gerar uma lista do ip 192.168.1.0 até 192.168.1.254, então o comando para obter o resultado ficaria:

:for i in range(1,254) | .put ='192.168.1.'.i  | endfor

Uma sequência numérica normal também pode ser obtida usando a função put:

:put =range(30,40)

Pode se usar valores negativos:

:put =range(-30,-40)

Gerar uma sequência no shell, por exemplo de 1 a 10

for ((i=1;i<=10;i++));do echo $i;done
for i in $(seq 10); do echo $i;done




13 de fev de 2014

Wiki como ferramenta de colaboração ...

2012, ano que o mundo não acabou apesar das promessas de ir para um "mundo novo", algums pessoas foram sim para o "Novo Mundo" e de  ônibus. Brincadeiras a parte, realmente foi um ano dificil inclusive para este que lhes escreve, com desáfios em todas as areas da vida. Mesmo assim, conclui um curso de especialização e o resultado está disponível para quem tiver interesse. Considere que é um TCC e não uma tese de mestrado ou doutourado. Espero que seja útil.