quarta-feira, 24 de outubro de 2012

Procurando arquivos com Kfind

Há duas semanas atrás eu publiquei um artigo mostrando como procurar arquivos através do find. Agora, prá você que acha muito complicado a interface de texto, o Kfind pode ser a opção melhor.


Através de uma interface gráfica é possível pesquisar por tipo de arquivo, por tamanho, data de criação, data de modificação, dono do arquivo, programa que o criou, e até pelo conteúdo dentro do arquivo. Uma mão na roda.

Se você use o Kde, já deve conhecer o Kfind. Senão, instale-o com:

apt-get install kfind.

quinta-feira, 18 de outubro de 2012

Apostila de Shell Script

Está disponível em https://hotfile.com/dl/175732443/a39e87e/ShellScript.zip.html um conjunto de matérias da LInux Magazine sobre Shell Script.

São vários arquivos pdf em uma série muito boa escrita por Julio Cezar Neves, um mago no assunto. A série segue uma sequência parecida com a do livro que li mesmo autor e que me fez criar gosto por programação de scripts.


quarta-feira, 10 de outubro de 2012

Procurando arquivos com Find

Depois de um mes de férias, volto a escrever no blog. Agora vou falar do find, uma ferramenta muito útil para procurar arquivos pela linha de comando. Melhor que explicá-lo é ver alguns exemplos de sua utilização.

Para listar todos os ítens da pasta /home/ricardo cujo nome contenha 2012 e a extenção .txt, use:

$ find /home/ricardo -name *2012*.txt
/home/ricardo/tmp/20120101.txt
/home/ricardo/ProgramasRFB/IRPF2012/TryLock2012.txt
/home/ricardo/Documentos/Documentacao/Outros/Compensacao_2012.txt
/home/ricardo/Documentos/Documentacao/Feitos/Feitos_2012.txt

Para encontrar o ítens da pasta /home/ricardo/Documentos modificados a menos de 3 dias e a mais de 1 dia, digite:

$ find /home/ricardo/Documentos/ -mtime -3 -mtime +1
/home/ricardo/Documentos/Contas
/home/ricardo/Documentos/Contas/Cartao_Credicard_20121008.pdf
/home/ricardo/Documentos/Contas/Bateria_celular.pdf

Para listar os ítens da pasta /home/ricardo que foram acessados a menos de 2 minutos, digite:

$ find /home/ricardo/ -amin -2
/home/ricardo/.config/chromium/Local State
/home/ricardo/.mozilla/firefox/ht1sguqp.default/sessionstore.js
/home/ricardo/.purple/certificates/x509/tls_peers/api.twitter.com
/home/ricardo/.purple/blist.xml
/home/ricardo/.gconfd/saved_state

Listando arquivos (apenas arquivos, sem pastas, links simbólicos, etc) da pasta /home/ricardo que foram acessados a menos de 1 minutos:

$ find /home/ricardo -amin -1 -type f
/home/ricardo/.mozilla/firefox/ht1sguqp.default/sessionstore.js
/home/ricardo/.mozilla/firefox/ht1sguqp.default/places.sqlite
/home/ricardo/.mozilla/firefox/ht1sguqp.default/places.sqlite-journal
/home/ricardo/.mozilla/firefox/ht1sguqp.default/Cache/0FB71300d01
/home/ricardo/.mozilla/firefox/ht1sguqp.default/Cache/AD773ACBd01
/home/ricardo/.mozilla/firefox/ht1sguqp.default/Cache/0F955364d01
/home/ricardo/.mozilla/firefox/ht1sguqp.default/Cache/8F923340d01
/home/ricardo/.purple/certificates/x509/tls_peers/api.twitter.com
/home/ricardo/.purple/blist.xml
/home/ricardo/.gconfd/saved_state
/home/ricardo/.evolution/mail/local/Noticias
/home/ricardo/.evolution/mail/local/folders.db
/home/ricardo/.evolution/mail/config/state

É possível executar um comando para cada objeto encontrado (por exemplo, para compactar arquivos antigos). No exemplo abaixo, executo o comando stat em cada arquivo da pasta /home/ricardo/tmp que tenha sido criado e menos de 1 dia.

$ find /home/ricardo/tmp -ctime -1 -type f -exec stat {} \;
  File: "/home/ricardo/tmp/20120101.txt"
  Size: 104       Blocks: 8          IO Block: 4096   arquivo comum
Device: 801h/2049d Inode: 655384      Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/ ricardo)   Gid: ( 1000/ ricardo)
Access: 2012-10-10 14:20:21.877216007 -0300
Modify: 2012-10-10 14:20:21.877216007 -0300
Change: 2012-10-10 14:20:21.877216007 -0300
  File: "/home/ricardo/tmp/20120101.txt~"
  Size: 62         Blocks: 8          IO Block: 4096   arquivo comum
Device: 801h/2049d Inode: 655401      Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/ ricardo)   Gid: ( 1000/ ricardo)
Access: 2012-10-10 14:20:21.877216007 -0300
Modify: 2012-10-10 14:20:21.877216007 -0300
Change: 2012-10-10 14:20:21.877216007 -0300

Para mover esses mesmos arquivos para a pasta /tmp, use:

$ find /home/ricardo/tmp -ctime -1 -type f -exec mv {} /tmp \;

O comando mv será executado para cada arquivo encontrado, e o {} será substituído pelo nome do arquivo no comando em questão.

Para apagar os arquivos criado a mais de 1 mes na área pública do servidor, digite:

$ find /home/temporario -ctime +31 -type f -exec rm -f {} \;

ou

$ find /home/temporario -ctime +31 -type f -delete

Também é possível encontrar os arquivos que possuem o atributo suid. No exemplo abaixo, listamos os arquivos da pasta /bin e executamos um ls -l em cada um.

$ find /bin -perm /+s -exec ls -l {} \;
-rwsr-xr-x 1 root root 31360 Out 14  2010 /bin/ping
-rwsr-xr-x 1 root root 47304 Jan 25  2011 /bin/umount
-rwsr-xr-x 1 root root 35252 Out 14  2010 /bin/ping6
-rwsr-xr-x 1 root root 29152 Fev 15  2011 /bin/su
-rwsr-xr-x 1 root root 68316 Jan 25  2011 /bin/mount

Para mais detalhes sobre o find, use o man.

$ man find

É bem provável que o comando find já faça parte de todas as distribuições Linux.

quarta-feira, 29 de agosto de 2012

HOWTOs e FAQs Linux no formato ASCII


"O pacote doc-linux-text fornece os atuais HOWTOs e FAQs Linux no formato ASCII. O pacote doc-linux-html fornece os mesmos documentos no formato HTML.

O número da versão reflete o mês no qual o doc-linux-text foi criado.

Todos os arquivos estão disponíveis no endereço http://www.tldp.org/ (com versões em ASCII, DVI, HTML, postscript e SGML)."

Essa é a descrição do pacote doc-linux-text. Uma ótima ajuda para quem administra sistemas Linux. Pode ser instalado vi aapt-get.

sexta-feira, 24 de agosto de 2012

Entendendo TCP/IP Parte 3 - Resolução de nomes

Vejo muitos técnicos em informática com dificuldades para entender o conceito de resolução de nomes DNS, endereços NetBIOS, e as ferramentas usadas para administração e manutenção nessa área. Por isso resolvi divulgar novamente um artigo que escrevi sobre esse assunto há pouco mais de um ano.



quarta-feira, 22 de agosto de 2012

Hping3, mais do que somente ping

Se você costuma testar a estabilidade da rede usando o ping, experimente o hping3.

Com o hping3 você pode controlar melhor o uso do ping. Uma opção que costumo usar faz com que centemas de pacotes icmp sejam enviados para o alvo em um segundo. Muito bom para testar a estabilidade da rede, ou para testar o quanto uma máquina aguenta de requisições.

Por exemplo, o comando:

# hping3 -i u1000 8.8.8.8 -c 100 -1

envia 1000 pacotes (-c 1000) icmp (-1) para o alvo (8.8.8.8), cada pacote com um intervalo de 1000 microsegundos (-i u1000). Em outras palavras, 1000 "pings" a cada segundo. O resultado do comando está resumido abaixo.


# hping3 -i u1000 8.8.8.8 -c 1000 -1
HPING 8.8.8.8 (eth0 8.8.8.8): icmp mode set, 28 headers + 0 data bytes
len=46 ip=8.8.8.8 ttl=57 id=36829 icmp_seq=0 rtt=7.3 ms
len=46 ip=8.8.8.8 ttl=57 id=36830 icmp_seq=1 rtt=6.3 ms
len=46 ip=8.8.8.8 ttl=57 id=36832 icmp_seq=3 rtt=4.9 ms
len=46 ip=8.8.8.8 ttl=57 id=36831 icmp_seq=2 rtt=5.9 ms
len=46 ip=8.8.8.8 ttl=57 id=36834 icmp_seq=4 rtt=6.0 ms
len=46 ip=8.8.8.8 ttl=57 id=36833 icmp_seq=5 rtt=5.5 ms
len=46 ip=8.8.8.8 ttl=57 id=36835 icmp_seq=6 rtt=4.5 ms
len=46 ip=8.8.8.8 ttl=57 id=36836 icmp_seq=7 rtt=4.1 ms
(...)
len=46 ip=8.8.8.8 ttl=57 id=37804 icmp_seq=994 rtt=5.4 ms
len=46 ip=8.8.8.8 ttl=57 id=37805 icmp_seq=995 rtt=4.7 ms
len=46 ip=8.8.8.8 ttl=57 id=37806 icmp_seq=996 rtt=4.8 ms
len=46 ip=8.8.8.8 ttl=57 id=37807 icmp_seq=997 rtt=4.1 ms
len=46 ip=8.8.8.8 ttl=57 id=37808 icmp_seq=998 rtt=6.7 ms
len=46 ip=8.8.8.8 ttl=57 id=37809 icmp_seq=999 rtt=6.3 ms

--- 8.8.8.8 hping statistic ---
1000 packets transmitted, 978 packets received, 3% packet loss
round-trip min/avg/max = 1.9/5.8/1002.6 ms

#

Na minha máquina esse comando demorou 2 segundos, com 0,3% de perda. Uma ótima marca.

O hping3 pode ser instalado via apt-get.

quinta-feira, 16 de agosto de 2012

Jogo do milhão com perguntas da LPI

Quem está pensando em tirar uma certificação LPI - Linux Professional Institute - o site http://www.fuctura.com.br/jogolpi tem uma ajuda legal: o Jogo do Milhão com perguntas que caem na prova.


Ele funciona da mesma forma que o da tv, inclusive com a própria voz do Silvio Santos.

Para acessar o jogo é necessário se cadastrar no site.


Uma ótima maneira de estudar para a LPI e se divertir ao mesmo tempo.

sexta-feira, 10 de agosto de 2012

Como gerar números aleatórios em script bash

Uma forma simples de gerar números aleatório em script bash é usando a função RANDOM.

echo $((RANDOM))

Você pode especificar um intervalo. Vamos supor que você queira um número entre 0 e 100.

echo $((RANDOM % 101))

No caso eu coloquei 101, que é o limite superior, excluindo o próprio 101.

Você também pode definir um intervalo onde o limite inferior seja diferente de zero. Por exemplo, um número entre 80 e 100, inclusive.

echo $((RANDOM % 21 + 80)

Ou seja, o primeiro número é o total de números do intervalo. O segundo número é o limite inferior.

Outro exemplo, gerar um número aleatório que seja -1, 0 ou 1.

echo $((RANDOM % 2 - 1))

Um último exemplo: que tal gerar números aleatórios para a Mega Sena?

for i in `seq 6` 
do
     echo $((RANDOM % 60 + 1))
done

quinta-feira, 9 de agosto de 2012

Resumo dos 100 artigos publicados

Este é um índice dos artigos publicados até agora.

Os artigos foram divididos em dois grupos. O primeiro voltado para profissionais de informática, e o segundo para os demais.

Profissionais de informática
  • Infraestrutura
    • Dhcp
    • IPCalc - Cálcula enredeços e máscaras de rede
    • Ipv6
    • Lessfs - Sistema de arquivos com deduplicação
    • Ltsp - Linux Terminal Service Project
    • Moosefs - Sistema de arquivos distribuído
    • Ocomon - Sistema de chamados
  • Inventário

Demais usuários
  •   Emulação
    • Pw3270 - Acesso ao Mainframe







terça-feira, 31 de julho de 2012

Dificuldades para calcular sub-redes? Use IPCalc.

Quem administra uma rede de computadores de vêz em quando se vê as voltas com endereçamentos de rede, máscaras de sub-rede e roteamentos. Principalmente quando rede um bloco de endreços válidos e a operadora diz algo assim:

Rede: 200.136.27.0/25
Gateway: 200.136.27.1

e seu chefe diz: Precisamos dividir isso em 8 sub-redes. Então você, administrador de rede, precisa calcular onde cada rede comaça e onde termina, quais os endereços de rede e broadcast, quantos hosts cabem em cada sub-rede, etc.

Para facilitar isso foi criado o IPCalc. No Debian ele pode ser instalado via apt-get.

Para resolver o caso acima, basta chamar o ipcalc que ele de mostra as configurações e limites de cada sub-rede. Digite:


ipcalc 200.136.27.0/25 28
Address:   200.136.27.0         11001000.10001000.00011011.0 0000000
Netmask:   255.255.255.128 = 25 11111111.11111111.11111111.1 0000000
Wildcard:  0.0.0.127            00000000.00000000.00000000.0 1111111
=>
Network:   200.136.27.0/25      11001000.10001000.00011011.0 0000000
HostMin:   200.136.27.1         11001000.10001000.00011011.0 0000001
HostMax:   200.136.27.126       11001000.10001000.00011011.0 1111110
Broadcast: 200.136.27.127       11001000.10001000.00011011.0 1111111
Hosts/Net: 126                   Class C


Subnets after transition from /25 to /28


Netmask:   255.255.255.240 = 28 11111111.11111111.11111111.1111 0000
Wildcard:  0.0.0.15             00000000.00000000.00000000.0000 1111


 1.
Network:   200.136.27.0/28      11001000.10001000.00011011.0000 0000
HostMin:   200.136.27.1         11001000.10001000.00011011.0000 0001
HostMax:   200.136.27.14        11001000.10001000.00011011.0000 1110
Broadcast: 200.136.27.15        11001000.10001000.00011011.0000 1111
Hosts/Net: 14                    Class C


 2.
Network:   200.136.27.16/28     11001000.10001000.00011011.0001 0000
HostMin:   200.136.27.17        11001000.10001000.00011011.0001 0001
HostMax:   200.136.27.30        11001000.10001000.00011011.0001 1110
Broadcast: 200.136.27.31        11001000.10001000.00011011.0001 1111
Hosts/Net: 14                    Class C


 3.
Network:   200.136.27.32/28     11001000.10001000.00011011.0010 0000
HostMin:   200.136.27.33        11001000.10001000.00011011.0010 0001
HostMax:   200.136.27.46        11001000.10001000.00011011.0010 1110
Broadcast: 200.136.27.47        11001000.10001000.00011011.0010 1111
Hosts/Net: 14                    Class C


 4.
Network:   200.136.27.48/28     11001000.10001000.00011011.0011 0000
HostMin:   200.136.27.49        11001000.10001000.00011011.0011 0001
HostMax:   200.136.27.62        11001000.10001000.00011011.0011 1110
Broadcast: 200.136.27.63        11001000.10001000.00011011.0011 1111
Hosts/Net: 14                    Class C


 5.
Network:   200.136.27.64/28     11001000.10001000.00011011.0100 0000
HostMin:   200.136.27.65        11001000.10001000.00011011.0100 0001
HostMax:   200.136.27.78        11001000.10001000.00011011.0100 1110
Broadcast: 200.136.27.79        11001000.10001000.00011011.0100 1111
Hosts/Net: 14                    Class C


 6.
Network:   200.136.27.80/28     11001000.10001000.00011011.0101 0000
HostMin:   200.136.27.81        11001000.10001000.00011011.0101 0001
HostMax:   200.136.27.94        11001000.10001000.00011011.0101 1110
Broadcast: 200.136.27.95        11001000.10001000.00011011.0101 1111
Hosts/Net: 14                    Class C


 7.
Network:   200.136.27.96/28     11001000.10001000.00011011.0110 0000
HostMin:   200.136.27.97        11001000.10001000.00011011.0110 0001
HostMax:   200.136.27.110       11001000.10001000.00011011.0110 1110
Broadcast: 200.136.27.111       11001000.10001000.00011011.0110 1111
Hosts/Net: 14                    Class C


 8.
Network:   200.136.27.112/28    11001000.10001000.00011011.0111 0000
HostMin:   200.136.27.113       11001000.10001000.00011011.0111 0001
HostMax:   200.136.27.126       11001000.10001000.00011011.0111 1110
Broadcast: 200.136.27.127       11001000.10001000.00011011.0111 1111
Hosts/Net: 14                    Class C




Subnets:   8
Hosts:     112

Uma mão na roda! 8 sub-redes com 14 hosts cada, totalizando 112 hosts, com máscara de rede 255.255.255.240.

Se quiser algo mais bonitinho, o ipcalc também instala um aplicativo web que pode ser acessado em http://ip-do-equipamento/cgi-bin/ipcalc.


segunda-feira, 30 de julho de 2012

Quem lembra do Donkey Kong?

Muito antes de PS3 DS, Nintendo PSI, dos games para Smartphone, e até do Game Boy, um console fez muito sucesso nos anos 80.


Com uma ou duas telas, como o da imagem acima, esse console chegou a ser proibido na escla onde eu estudei. Simples, mas viciante, o pessoal colecionava e trocava uns com os outros.

Você que viveu nos gloriosos anos 80 e quer matar a saudade, ou você que quer conhecer esse console, acesse http://www.jogos10.com/jogos/kong-game-and-watch_5959.php e jogue.


sexta-feira, 27 de julho de 2012

Inslate várias distros em um pendrive com Multisystem

Com o Multisystem, você pode instalar várias distros no mesmo drive usb. Ele vem com uma interace gráfica e configura até o boot loader.

A edição 90 da Linux Magazine falou sobre ele.

Abaixo alguns prints.

Tela inicial

Bootloader do Windows


Dando o boot pelo Qemu (pode ser pelo VirtualBox)

Para instalar o Multisystem, primeiramente inclua o repositório no arquivo /etc/apat/sources.list, colocando as linhas abaixo dentro do arquivo

# Multisystem
deb http://liveusb.info/multisystem/depot all main nonfree contrib

Em seguida, atualize a lista de pacotes.

apt-get update

e finalmente instale o Multisystem.

apt-get install multisystem



quinta-feira, 26 de julho de 2012

Documentação do LibreOffice em Português do Brasil

No site https://wiki.documentfoundation.org/Documentation/pt-br/Guia_do_Iniciante é possível baixar a documentação oficial do LibreOffice em português do Brasil.

Apesar de ser dito que é para iniciantes, a documentação está bem completa e amigável. Vale a pena conferir.


terça-feira, 24 de julho de 2012

Urlsnarf gera log de acesso a sites

Ontem falei sobre o Dsniff, um sniffer voltado para descoberta de senhas. E comentei que ele possui outras aplicações interessantes. O Urlsnarf é uma delas.

O Urlsnarf analisa o tráfego da rede e gera log de navegação no estilo do Squid. Essa log pode ser analisada com qualquer ferramenta que trate logs desse tipo, como o Sarg ou o Webanaliser.

O Urlsnarf pode trabalhar coletando dados diretamente na Interface, ou então lendo um arquivo gerado pelo Tcpdump. Abaixo um exemplo do comando com a saída em formato de log.

$urlsnarf -p tmp/dsniff2 
200.136.27.146 - - [24/Jul/2012:10:23:42 -0300] "GET http://imagemjc.uol.com.br/imagem/bg_barra_parceiro.jpg HTTP/1.1" - - "http://natelinha.uol.com.br/noticias/2012/07/22/avenida-carminha-e-max-comemoram-o-fim-de-nina-em-casa-de-swing-144646.php" "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11"


200.136.27.146 - - [24/Jul/2012:10:24:00 -0300] "POST http://netguest-email-1.netguestdns.com.br/Services/svcRealTimeService.asmx/GetUpdates HTTP/1.1" - - "http://netguest-email-1.netguestdns.com.br/Default.aspx" "Mozilla/5.0 (Windows NT 6.1; rv:5.0.1) Gecko/20100101 Firefox/5.0.1"


200.136.27.146 - - [24/Jul/2012:10:24:18 -0300] "GET http://www.lojaphotos.com.br/produto/2224970/FOTOGRAFIA-DE-CASAMENTO HTTP/1.1" - - "http://www.google.com.br/url?sa=t&rct=j&q=livro%20fotografia%20de%20casamento&source=web&cd=1&ved=0CHIQFjAA&url=http%3A%2F%2Fwww.lojaphotos.com.br%2Fproduto%2F2224970%2FFOTOGRAFIA-DE-CASAMENTO&ei=BFwNUOiUNIGe8gSAvpi2Cg&usg=AFQjCNHHbVzwORGWaEjyQSbSjsk-cDLm2A" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0) Gecko/20100101 Firefox/4.0"


186.201.143.61 - - [24/Jul/2012:10:24:36 -0300] "GET http://midia.cmais.com.br/assets/image/image-3-b/8b9649ac13bdaf482c4250be7244064b9fda41d8.jpg HTTP/1.1" - - "http://cmais.com.br/jornalismo" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)"

Você pode ter um relatório de acessos a web sem ter necessariamente um proxy, como o Squid. Veja abaixo um exemplo de como essa log pode ficar depois de passar pelo Sarg.


segunda-feira, 23 de julho de 2012

Descubra as senhas da rede com Dsniff

Venho aqui falar de um programa um pouco polêmico, o Dsniff. Ele é um sniffer de rede voltado para descobrir senhas.

Para mostrar como ele funciona, vou contar o que fiz uma vêz para sacanear os espertinhos que ficavam tentando acessar a minha rede sem fio. Geralmente, as pessoas colocam a roteador sem fio entre o micro e o link de Internet. Assim, toda a casa, ou empresa, pode acessar a Internet. Em casa eu fiz uma pequena modificação. Coloquei duas placas de rede no meu desktop, e coloquei-o entre o roteador e a Internet. Ou seja: Internet -->> Desktop -->> Roteador wireless. Dessa forma, quem se conectasse ao meu roteador para acessar a Internet, passaria pelo meu desktop. E no meu desktop eu instalei o Dsniff. Algumas horas depois eu tinha várias combinações de sites/usuários/senha. Abaixo, um exemplo da saída do sniffer (as senhas foram mudadas por questões óbvias). 

ricardo@desktop:~$ dsniff -i eth0
-----------------
07/23/12 10:08:12 tcp funda-def2dd7a4.xxxx.inet.36972 -> mail.xxxxxx.110 (pop3)
USER ricardoolonca
PASS fa0ed3b2b

-----------------
07/23/12 11:03:08 tcp mail-lb0-f151.google.com.55747 -> xxxxxxxx (pop3)
USER sanpa
PASS 57de89511

-----------------
07/23/12 11:03:36 tcp mail-vb0-f20.google.com.42230 -> xxxxxxxx (pop3)
USER renatareno
PASS c11143764

-----------------
07/23/12 11:04:00 tcp mail-ob0-f164.google.com.43490 -> xxxxxxxx (pop3)
USER lygiajesus
PASS a9caf8b8b

ricardo@desktop:~$

Com as senhas em mão deu para me divertir um pouco! 

Deixando a ética de lado, pense melhor antes de usar uma rede sem fio aberta, ou qualquer outra rede que você não confia, como as de lan house, escolas, lanchonetes, etc. Alguém pode estar usando um aplicativo semelhante a esse. Sempre use protocolos seguros.

Para instalar o aplicativo, que contém ainda outras ferramentas interessantes, basta digitar o famoso apt-get install dsniff.

sexta-feira, 20 de julho de 2012

Quer saber como era a Internet a 12 anos atrás?

Se você tem interesse em saber como eram os sites no começo da Internet (ou tem nostalgia daquela época)  dê uma olhada no site http://archive.org/web/web.php. Ele mantém um históricos das páginas de Internet ao longo dos anos. Você pode ver como a página nasceu e como foi se transformando ao longo do tempo.

Abaixo alguns exemplos:


Google em 1999


Folha de S. Paulo em 2002


E a melhor (pelo menos para mim!). Minha página que nem existe mais em 2006!!!



segunda-feira, 16 de julho de 2012

Analise o hardware com Lshw

Uma forma simples de verificar o hardware do computador no Linux é usando o lspci, principalente com a opção -v. Mas essa listagem é apenas texto.

Se você quiser algo mais fácil para analisar o teu hardware, use o lshw. Chamando-o com a opção -html, rodando como root, ele gera um arquivo html contendo a configuração do hardware analisado.

# lshw -html > hw.html

ele irá gerar algo como o print abaixo.


Se você prefere algo gráfico, experimente o lshw-gtk.


Os dois programa podem ser instalado via apt-get.

sexta-feira, 13 de julho de 2012

Monitore seus processos com Htop

Em todas as distribuições Linux há um utilitário muito conhecido e bastante usado chamado Top que permite monitorar, mudar a prioridade, congelar, continuar e matar processos. Mas o Htop possui mais recursos.


Apertando a tecla F2 você pode personalizar a tela para mostrar os dados de várias maneiras, como gráficos de barra (como na imagem acima), valores ou leds, bem como configurar quais informações serão mostradas. 

É possível pesquisar por um processo específico, bem como mostrar os processo em cascata, onde fica evidente os processos pai e filhos. Para alterar a prioridade de um processo basta ir até ele com as setas do teclado e clicar em "+" para aumentar o nice (mais lento) e "-" para diminuir o nice (menos lento). Lembre-se  que para diminuir o valor de nice é necessário ter permissões de root.

Vejam como ficou a minha tela personalizada.


Para instalar o Htop, basta usar o apt-get

# apt-get install htop

Para executá-lo, digite

# htop

quinta-feira, 5 de julho de 2012

Incremente seus scripts bash com Dialog

Se você costuma criar scripts bash, experimente usar o Dialog para exibir mensagens na tela. Ele permite a criação de telas do tipo ncurses, facilitando o entendimento e tornando o script mais amigável.


O site http://aurelio.net/shell/dialog/ tem uma documentação completa do sistema.

Abaixo, disponibilizo o trecho da tela acima.

versao=`VBoxManage -v`
while true
do
  menu_principal=$( dialog --stdout \
    --title "Administração do VirtualBox versão $versao" \
    --menu "Opções: " \
    0 0 0 \
    VMs 'Administrar as máquinas virtuais' \
    Discos 'Administraçãos dos discos e imagens de cd e dvd' \
    Servidor 'Administração do servidor' \
    Ajuda 'Breve explicação sobre os menus acima')
  case $menu_principal in
    "VMs")
        listar
      ;;
    "Discos")
discos
;;
    "Servidor")
servidor
;;
    "Ajuda")
        ajuda
      ;;
    *)
rm $$.*.tmp > /dev/null 2>/dev/null 
break
;;
  esac
done

terça-feira, 3 de julho de 2012

Google Earth. Melhor que o Google Maps

O Google Maps, junto com o Google Street, foi uma revolução. Se você precisa ir a um lugar novo, um cliente por exemplo, em outra cidade, você consegue saber exatamente como é o local, os pontos de referência, etc. Traçar rotas, calcular a distância, ver pontos de referência. Eu não saio de casa sem antes consultar o Google Maps.

Bem, não saia... Agora uso o Google Earth. Ele é uma aplicação para desktop e contém tudo o que o Google Maps possui, e muito mais. Veja o vídeo abaixo.




Para instalá-lo, acesse https://www.google.com/intl/pt-BR/earth/index.html.