Criando um script para ativar a rede wireless no linux…
Hoje em dia, quase todas as distribuições incluem utilitários para configurar a rede wireless. O Ubuntu, por exemplo, inclui o network-manager, o Kubuntu inclui o knetworkmanager (uma variação dele), o OpenSuSE inclui opções dentro do Yast e assim por diante. Isso faz com que, na maioria dos casos, configurar a rede wireless seja bastante simples.
Apesar disso, existem sempre casos em que os utilitários de configuração não funcionam como deveriam, casos onde você está usando alguma distribuição onde eles não estão disponíveis ou simplesmente casos em que você resolveu colocar a mão na massa e fazer as coisas manualmente.
Nesta dica vamos ver como criar um script de conexão, para acesso a redes wireless com encriptação via WPA, que inclui funções para detectar erros comuns e pode ser executado durante o boot, automatizando a ativação da rede. Ela inclui também dicas diversas sobre shell script.
Para usá-lo é necessário que a placa wireless tenha sido detectada pelo sistema e o pacote “wpasupplicant” (necessário para conectar a redes com encriptação WPA) esteja instalado.
O primeiro passo é criar o arquivo de configuração do wpa_supplicant (note que o comando é diferente do nome do pacote), que contém o ESSID e a chave de autenticação da rede onde ele deve se conectar. Para isso, use o comando:
Como em:
O (criado automaticamente) arquivo ficará assim:
ssid=”casa”
#psk=”12345678″
psk=bedc07580f71c85d6e0029f3663bab5cbe0720cc84bf94eb7c20722208b7f004
}
Como você pode ver, a terceira linha contém a passphrase da rede em modo texto, o que não é nada bom do ponto de vista da segurança. Apesar disso, ele não é necessária (tanto que está comentada) pois a linha seguinte contém um hash, que é suficiente para que a conexão seja efetuada. É sempre recomendável que você edite o arquivo e apague a terceira linha, deixando apenas o hash.
Com isso, precisamos apenas ativar o wpa_supplicant, usando o comando:
O “eth1” no comando indica a interface de rede, e naturalmente deve ser alterado conforme necessário. O “wext” é o driver (interno do wpa_supplicant) que será usado. Atualmente, o wext é usado em quase todos os casos, inclusive no caso de placas configuradas através do ndiswrapper. A única exceção fica por conta das placas com chipset Atheros, onde você deve substituir o “wext” por “madwifi”.
Se a conexão for bem-sucedida, você terá (depois de uma rápida sucessão de mensagens), algo como:
CTRL-EVENT-CONNECTED – Connection to 00:50:50:81:81:01 completed (auth)
EAPOL: External notification – portValid=1
EAPOL: External notification – EAP success=1
EAPOL: SUPP_PAE entering state AUTHENTICATING
EAPOL: SUPP_BE entering state SUCCESS
EAP: EAP entering state DISABLED
EAPOL: SUPP_PAE entering state AUTHENTICATED
EAPOL: SUPP_BE entering state IDLE
EAPOL: startWhen –> 0
Estas mensagens indicam que ele se conectou ao ponto de acesso com o endereço MAC “00:50:50:81:81:01” e que a conexão está disponível para transmitir dados.
Para confirmar, rode o comando “iwconfig” que mostrará algo como:
lo no wireless extensions.
eth0 no wireless extensions.
eth1 IEEE 802.11g ESSID:”casa”Mode:Managed Frequency:2.447 GHz Access Point: 00:50:50:81:81:01
Bit Rate=54 Mb/s Tx-Power:32 dBm
RTS thr=2347 B Fragment thr=2346 B
Encryption key:
Security mode:restricted
Power Management:off
Link Quality:65/100 Signal level:-54 dBm Noise level:-96 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
Isso significa que ele se conectou com sucesso ao ponto de acesso. Falta agora apenas fazer a configuração manual da rede, o que pode ser feito usando os comandos “ifconfig” e “route”. Note que estou usando os comandos manuais, pois a idéia é justamente que possamos transformá-los em um script mais tarde.
# route del default
# route add default gw 192.168.1.1 dev eth1
# echo ‘nameserver 208.67.222.222’ > /etc/resolv.conf
Nesses 4 comandos eu configurei a rede, especificando o endereço IP e a máscara, removi a rota padrão (só para garantir, já que em um micro com duas placas de rede é normal que a primeira fique como rota padrão e você não consiga navegar através da segunda), configurei o gateway padrão da rede, colocando a rota padrão na interface wireless (eth1) e aproveitei para colocar o endereço do DNS no arquivo /etc/resolv.conf.
Com isso, a rede estaria configurada. Vamos então à criação do script.
Como a idéia é que ele seja executado durante o boot, vamos colocá-lo na pasta /etc/init.d”, onde ficam os scripts de configuração do sistema. Vou chamá-lo de “/etc/init.d/wireless“.
Vamos começar “limpando a casa”, para ter certeza de que o script encontrará um ambiente previsível. Estes passos são opcionais e você pode incluir outros comandos que achar necessários:
/etc/dbus-1/event.d/??NetworkManagerDispatcher stop
/etc/dbus-1/event.d/??NetworkManager stop
# Fecha outras instâncias ativas do wpa_supplicant
killall wpa_supplicant
# Desativa a interface de rede cabeada
ifconfig eth0 down
Desativa o cliente dhcp
killall dhclient3
O network-manager, usado no Ubuntu “sabota” a configuração manual, por isso é necessário desativá-lo usando os dois comandos. No caso do Kubuntu, é necessário também desativar o knetworkmanager dentro do ambiente gráfico, desmarcando o início automático nas configurações do programa.
Um problema comum em scripts de configuração da rede é que pode acontecer da interface de rede mudar ao reiniciar o sistema ou ao instalar uma nova placa de rede. Se o script espera que a placa wireless seja a “eth1” e a muda para “eth2”, o script deixa de funcionar.
Podemos tornar o script mais inteligente, detectando sozinho qual é a interface da rede wireless. Isso é simples, pois o sistema guarda a informação no arquivo “/proc/net/wireless”. Veja só:
face | tus | link level noise | nwid crypt frag retry misc | beacon | 21
eth1: 0000 65 202 160 0 0 0 0 0 0
Podemos filtrar a informação, ficando apenas com o device da placa de rede e atribuí-lo a uma variável que poderemos usar mais adiante no script, usando o pipe, o tail e o cut, veja só:
placa=`cat /proc/net/wireless | tail -n 1 | cut -f 1 -d “:” | cut -c 3-`
A variável “placa” passa a conter o “eth1”, que é o device atual da placa de rede. Com isso, o script se adapta automaticamente a mudanças.
Falta agora adicionar as linhas que configuram a rede. Note que fiz uma pequena mudança no comando do wpa_supplicant, substituindo o “-d” por “-B”. Isso faz com que ele rode em modo daemon, sem travar o terminal. Sem isso o script não funcionaria, pois o comando do wpa_supplicant pararia a execução do script, não deixando que os comandos seguintes fossem executados.
wpa_supplicant -i $placa -c /etc/wpa_supplicant.conf -B -D wext
ifconfig $placa 192.168.1.65 netmask 255.255.255.0 up
route del default
route add default gw 192.168.1.1 dev $placa
echo “nameserver 208.67.222.222” > /etc/resolv.conf
O script completo ficaria:
# script para configurar a rede wireless
# Desativa o network-manager do Ubuntu/Kubuntu
/etc/dbus-1/event.d/??NetworkManagerDispatcher stop
/etc/dbus-1/event.d/??NetworkManager stop
# Fecha outras instâncias ativas do wpa_supplicant
killall wpa_supplicant
# Desativa a interface de rede cabeada
ifconfig eth0 down
# Desativa o cliente dhcp
killall dhclient3
# Descobre qual é o device da placa wireless
placa=`cat /proc/net/wireless | tail -n 1 | cut -f 1 -d “:” | cut -c 3-`
# Configura a rede
wpa_supplicant -i $placa -c /etc/wpa_supplicant.conf -B -D wext
ifconfig $placa 192.168.1.65 netmask 255.255.255.0 up
route del default
route add default gw 192.168.1.1 dev $placa
echo “nameserver 208.67.222.222” > /etc/resolv.conf
Você poderia também torná-lo mais elegante, declarando os parâmetros da rede no início do script:
# script para configurar a rede wireless
endip=”192.168.1.65″
masc=”255.255.255.0″
gtw=”192.168.1.1″
enddns=”208.67.222.222″
# Desativa o network-manager do Ubuntu/Kubuntu
/etc/dbus-1/event.d/??NetworkManagerDispatcher stop
/etc/dbus-1/event.d/??NetworkManager stop
# Fecha outras instâncias ativas do wpa_supplicant
killall wpa_supplicant
# Desativa a interface de rede cabeada
ifconfig eth0 down
# Desativa o cliente dhcp
killall dhclient3
# Descobre qual é o device da placa wireless
placa=`cat /proc/net/wireless | tail -n 1 | cut -f 1 -d “:” | cut -c 3-`
# Configura a rede
wpa_supplicant -i $placa -c /etc/wpa_supplicant.conf -B -D wext
ifconfig $placa $endip netmask $masc up
route del default
route add default gw $gtw dev $placa
echo “nameserver $enddns” > /etc/resolv.conf
Ao terminar, transforme o arquivo em executável e crie um link para ele dentro da pasta “/etc/rc5.d”, de forma que ele seja executado durante o boot:
# cd /etc/rc5.d
# ln -s ../init.d/wireless S99wireless
Se preferir, você pode também adicionar o comando “/etc/init.d/wireless” em algum dos arquivos de inicialização, como o “/etc/rc.local”, de forma que ele seja executado diretamente. Vai do que achar mais prático de acordo com a situação.
Terminado, é só reiniciar o micro e testar. 🙂
Este script “base” pode ser adaptado de acordo com a necessidade, incluindo outros comandos que você precise executar para ativar a placa de rede (ou ativar o transmissor ou para resolver problemas diversos).
Por exemplo, em um Acer 5043, preciso rodar os dois comandos abaixo para ativar o transmissor da placa wireless, caso contrário a placa simplesmente não transmite dados:
# echo “enabled : 1” > /proc/acpi/acer/wireless
Em outro (com uma placa Atheros) notei um problema estranho onde a placa é detectada apenas às vezes ao ativar o módulo. Às vezes é necessário carregar e descarregar o módulo várias vezes antes da rede ser detectada. Resolvi o problema na base da “força bruta” usando esse função, que continua carregando e descarregando os módulos até que a placa seja ativada e o device apareça no arquivo /proc/net/wireless:
while [ -z “$atheros” ]; do
/sbin/modprobe -r ath_pci
/sbin/modprobe -r ath_hal
sleep 3
/sbin/modprobe ath_hal
/sbin/modprobe ath_pci
atheros=`cat /proc/net/wireless | grep ath0`
done
Em ambos os casos, os comandos poderiam ser adicionados no início do script, de forma que a rede fosse ativada antes dos demais comandos, como em:
# script para configurar a rede wireless
endip=”192.168.1.65″
masc=”255.255.255.0″
gtw=”192.168.1.1″
enddns=”208.67.222.222″
atheros=`cat /proc/net/wireless | grep ath0`
while [ -z “$atheros” ]; do
/sbin/modprobe -r ath_pci
/sbin/modprobe -r ath_hal
sleep 3
/sbin/modprobe ath_hal
/sbin/modprobe ath_pci
atheros=`cat /proc/net/wireless | grep ath0`
done
# Desativa o network-manager do Ubuntu/Kubuntu
/etc/dbus-1/event.d/??NetworkManagerDispatcher stop
/etc/dbus-1/event.d/??NetworkManager stop
# Fecha outras instâncias ativas do wpa_supplicant
killall wpa_supplicant
# Desativa a interface de rede cabeada
ifconfig eth0 down
# Desativa o cliente dhcp
killall dhclient3
# Descobre qual é o device da placa wireless
placa=`cat /proc/net/wireless | tail -n 1 | cut -f 1 -d “:” | cut -c 3-`
# Configura a rede
wpa_supplicant -i $placa -c /etc/wpa_supplicant.conf -B -D wext
ifconfig $placa $endip netmask $masc up
route del default
route add default gw $gtw dev $placa
echo “nameserver $enddns” > /etc/resolv.conf
Naturalmente, escrever o script do zero pode ser bem mais complicado do que simplesmente configurar a rede usando as ferramentas disponíveis, mas agora que você tem um modelo pronto, pode usá-lo de forma bastante prática, simplesmente substituindo as informações que forem diferentes em cada situação. Esta é a beleza dos scripts de configuração: eles podem ser escritos uma vez e depois usados indefinidamente, com pequenas alterações.
Link´s Ubuntu…
Links Ubuntu
Internacional
Ubuntu
Ubuntu Forum
Wiki Ubuntu
Ubuntu Fridge
Ubuntu Brainstorm
Shipt Ubuntu
Ubuntu One
Spreadubuntu
http://spreadubuntu.neomenlo.org
Full Circle Magazine
Ubuntu Podcast
Fresh Ubuntu
Help Ubuntu
Ubuntu Mailing Lists
Packages Ubuntu
Ubuntu news
Ubuntu User
http://ubuntucounter.geekosophical.net/index.php
Unofficial Ubuntu Starter Guide
http://ubuntuguide.org/wiki/Ubuntu:Jaunty
Ubuntu Gamers Arena
Ubuntu Developers:
Official Ubuntu Documentation
Ubuntu clips
Screencasts Ubuntu
Shop Ubuntu
Canonical
Shop Canonical
Launchpad
Ubuntu Guide 9.04
http://ubuntuguide.org/wiki/Ubuntu:Jaunty
Ubuntu tweak
Ubuntu on a Playstation 3
Portable Ubuntu
http://portableubuntu.demonccc.cloudius.com.ar/
Ubuntu Tutorials
Ubuntu Artwork
Ubuntu Live Stats
Ditros Based
Ubuntu Studio
Xubuntu
Kubuntu
Edubuntu
Ubuntu Netbook Remix
http://www.canonical.com/projects/ubuntu/unr
Gobuntu
http://www.ubuntu.com/products/whatisubuntu/gobuntu
Nacional
Ubuntu BR
Planeta ubuntubrasil
http://planeta.ubuntubrasil.org
Wiki Ubuntu
Listas de Discussão do Ubuntu Linux
http://wiki.ubuntu-br.org/Listas
Fórum Ubuntu Linux – PT
Ubuntu games
Blog Ubuntugames
Ubuntu São Paulo
Calendário do Ubuntu 10.04 Lucid Lynx…
Como dito o Jaunty ainda nem havia saído e já havia o calendário do Karmic, e agora já há um calendário para o lançamento do Ubuntu 10.04 Lucid Lynx que será a versão LTS que terá suporte em desktop de 3 anos e de 5 na versão servidor, isso acontece com a versão LTS, nas outras versões o suporte é de 18 meses.
Ubuntu 10.04 calendário de lançamento
3 de Dezembro, 2009 – Alpha 1
7 de Janeiro, 2010 – Alpha 2
4 de Fevereiro, 2010 – Alpha 3
4 de Março, 2010 – Beta1
1 de Abril, 2010 – Beta2
15 de Abril, 2010 – Versão candidata
29 de Abril, 2010 – Ubuntu 10.04 LTS
Fonte, aqui.
Notas de lançamento do GNOME 2.28…
O GNOME 2.28 é a última versão do Ambiente GNOME: um popular ambiente de trabalho multiplataforma para seu computador. O foco do GNOME é a facilidade de uso, estabilidade, internacionalização de primeira classe e suporte à acessibilidade. O GNOME é livre e de código aberto e fornece todas as ferramentas comuns que usuários esperam de um ambiente moderno de computador, como e-mail, software colaborativo, navegador web, gerenciamento de arquivos, multimídia e jogos. Além disso, o GNOME proporciona uma plataforma flexível e poderosa para desenvolvedores de software, tanto para desktop como para aplicativos móveis.
O Projeto GNOME foca em usuários e a usabilidade continua no GNOME 2.28 com suas centenas de correções de bug e melhorias pedidas por usuários. O número de melhorias concluídas torna impossível listar todas as alterações e melhorias feitas, mas estas notas tentam destacar algumas das melhorias mais interessantes e orientadas a usuários neste lançamento.
- Esqueça dos fios
- Gerencie melhor o seu tempo melhor
- Mensageiro Instantâneo Empathy
- Navegador Web Epiphany
- Melhoras no reprodutor de mídia
- Sorria para a câmera
- Anote nos seus PDFs
- Fade In e Out
- Mas espere, tem mais…
Esqueça dos fios
O GNOME 2.28 inclui o primeiro lançamento do módulo GNOME Bluetooth para ajudar usuários a gerenciarem seus dispositivos Bluetooth. O GNOME Bluetooth tem suporte a centenas de dispositivos Bluetooth, incluindo mouses, teclados e fones de ouvido com microfone. O GNOME Bluetooth inclui integração com o PulseAudio para fones de ouvido com e sem microfone.
O GNOME Bluetooth também inclui suporte para acesso a internet através de seu telefone celular. Após parear seu celular com o GNOME Bluetooth, o Network Manager incluirá uma entrada para que o seu celular acesse a internet.
Gerencie melhor o seu tempo melhor
O miniaplicativo Gerenciador de Tempo, que o ajuda a gerenciar o seu tempo e as suas tarefas, inclui uma série de novas melhorias.
Existe agora uma tela de visão geral que mescla a categoria e os gráficos de período para apresentar uma visão geral mais limpa ao usuário. Cores também são usadas pela primeira vez, tornando mais fácil ver a proporção de tempo utilizado para completar tarefas.
Outras atualizações de recursos incluem um suporte melhorado de autocompletar, tornando possível atualizar o tempo de início a qualquer momento, suporte melhorado para trabalhadores que trabalham até a madrugada e a habilidade para adicionar tarefas que já foram completadas. Finalmente, a funcionalidade de exportar teve algumas melhorias, incluindo a habilidade de filtrar atividades por categoria e data antes da exportação e novos tipos de exportação: iCal para importar no Evolution, Google Calendar e outros clientes, XML e TSV (valores separados por tabulação) que funcionam bem com planilhas.
Mensageiro Instantâneo Empathy
O mensageiro instantâneo e aplicativo de comunicação do GNOME, o Empathy, feito usando o framework de comunicações Telepathy, ganhou vários novos recursos para ajudar os usuários a se comunicar.
A lista de contatos foi melhorada de várias maneiras. Você pode definir seu status diretamente digitando este como texto, ou fazê-lo a partir de um status predefinido. Reorganizar seus contatos ficou mais fácil: em vez de copiá-los você agora pode arrastar e soltar para movê-los. Existe agora um menu de visualização, tornando rápido o acesso a ordenação de contatos, a visão de contatos desconectados e a alteração das preferências de sua lista de contatos.
Navegador Web Epiphany
O navegador Web do GNOME, Epiphany, trocou o Gecko pelo Webkit como seu motor de renderização. Enquanto esta mudança deve ser imperceptível para usuários, com exceção de algumas melhorias de performance, a longo prazo a mudança para o Webkit terá benefícios significativos para usuários do Epiphany. Esta mudança também corrige uma série de bugs antigos devido ao antigo backend baseado no Gecko. Você está convidado a testar essa nova versão para confirmar se os problemas antigos foram solucionados.
Um bug que os usuários podem encontrar no Epiphany devido à mudança para o WebKit, é não poder salvar logins e senhas em formulários. Este bug será corrigido durante o ciclo de desenvolvimento do 2.30.
Melhoras no reprodutor de mídia
A reprodução de DVD no Reprodutor de Mídia do GNOME foi melhorada com a habilidade de navegar em menus de DVD e retornar a reprodução da última posição. O plug-in do YouTube tem também algumas melhorias de velocidade.
Sorria para a câmera
O Cheese, um aplicativo para foto e vídeo da webcam, apresenta muitas melhorias. O Cheese tem uma interface de usuário atualizada, e tem um modo “Explosão” que permite tirar múltiplas fotos de uma vez. Você pode escolher o número de fotos que o Cheese irá tirar e o intervalo de tempo entre as fotos. O Cheese também tem suporte a habilidade de manualmente tirar fotos com a Webcam usando o botão “Capturar”.
A interface de usuário do Cheese também foi otimizada para telas menores, como netbooks, movendo a barra de miniaturas para a direita. A captura de tela abaixo mostra o Cheese no seu novo modo amplo otimizado para Netbook usando o modo de explosão.
Anote nos seus PDFs
O visualizador de documentos Evince adicionou a habilidade de editar e salvar anotações de texto que tem uma janela de contexto associada. Evince também recupera documentos que estavam sendo visualizados depois de travar.
O Evince também foi portado e está disponível para plataformas Microsoft Windows®.
Fade In e Out
O Controle de Volume GNOME adicionou a possibilidade de controlar o subwoofer e o canal fade. Uma outra novidade é que quando as definições são alteradas, elas são aplicadas instantaneamente.
Mas espere, tem mais…
Assim como as grandes mudanças, há também várias pequenas adições e ajustes que aparecem em todo lançamento do GNOME.
- Os menus e botões do GNOME foram padronizados em todos os aplicativos para não mostrar ícones por padrão. Itens de menu com objetos dinâmicos, incluindo aplicativos, arquivos ou marcadores e dispositivos são exceções e podem mostrar um ícone. Esta mudança irá padronizar a aparência de menus e apresentar uma interface mais limpa para usuários.
- O Tomboy Notas moveu a localização de notas salvas e arquivos de configuração para seguir as especificações do Freedesktop.org.
- O Gerenciador de Energia do GNOME agora tem suporte a notebooks com múltiplas baterias e adicionou suporte à redução de rotação para discos do DeviceKit.
- O arquivo do GTK+ e o backend de suporte a impressão lpr agora tem suporte a múltiplas páginas por folha.
- O Gedit também foi portado para o Mac OS® X.
- A renderização de texto também foi melhorada no Pango utilizando um novo motor OpenType, que consome menos memória e tem um suporte melhorado para fontes quebradas.
- Graças a melhorias no VTE, os usuários do Terminal do GNOME perceberão que muito menos memória está sendo consumida.
- Brasero, o gravador de CD/DVD do GNOME, agora tem suporte à gravação de dados em múltiplos discos e ganhou uma exibição gráfica que mostra o espaço utilizado em discos antes de gravar.
O que há de novo em acessibilidade
O GNOME tem uma intensa paixão por fazer software disponível para todos, incluindo aqueles usuários e desenvolvedores com deficiência que podem ter dificuldade em usar o computador. Para ajudar, o GNOME criou o Projeto de Acessibilidade GNOME e um framework de acessibilidade que hoje é padrão em ambientes de trabalho livres.
GNOME 2.28 continua seu progresso das credenciais de acessibilidades já existentes com muitas melhorias.
Limpeza de Plataforma
Grandes esforços foram prometidos para remover modulos obsoletos e funcionalidades no caminho para o GNOME 3.0.
No GNOME 2.28, não haverá mais aplicativos que dependam do esound, libgnomevfs, libgnomeprint ou libgnomeprintui.
Outras melhorias da plataforma do GNOME no GNOME 2.28 incluem:
- A dependência do libart_lgpl foi removida de dois módulos (eog e gtkhtml).
- A dependência do libbonobo(ui) foi removida de cinco módulos (gnome-control-center, gcalctool, gnome-media, gtkhtml e accerciser).
- A dependência do libglade foi removida de 28 módulos (accerciser, alacarte, gnome-control-center, dasher, empathy, gcalctool, gnome-games, gnome-netstatus, gnome-nettool, gnome-mag, gnome-menus, gnome-panel, gnome-power-manager, gnome-screensaver, gnome-session, gnome-settings-daemon, gnome-system-tools, gnome-utils, gtkhtml, hamster-applet, libgnomekbd, orca, pessulus, seahorse, vino, vinagre, yelp e zenity).
- A dependência do libgnome foi removida de 14 módulos (anjuta, gnome-control-center, dasher, evolution-webcal, gconf, gdl, gdm, gnome-desktop, gnome-media, gnome-system-tools, gok, gtkhtml, vino e yelp).
- A dependência do libgnomecanvas foi removida de três módulos (anjuta, gtkhtml e zenity).
- A dependência do libgnomeprint(ui) foi removida de um módulo (gnome-games).
- A dependência do libgnomeui foi removida de 16 módulos (anjuta, gnome-control-center, dasher, deskbar-applet, gnome-mag, gnome-media, gnome-settings-daemon, gnome-system-tools, gnome-utils, gok, gtkhtml, hamster-applet, nautilus, orca, vino e yelp).
- A dependência do libgnomevfs foi removida de três módulos (dasher, gnome-mag e gnome-utils).
- Muitos módulos agora proporcionam uma saída mais limpa e melhor quando compilados utilizando AM_SILENT_RULES ou Shave. Para mais informações veja http://live.gnome.org/GnomeGoals/NicerBuilds.
- Alguns módulos começaram a usar o GIntrospection – veja http://live.gnome.org/GnomeGoals/AddGObjectIntrospectionSupport para mais detalhes.
Vários aplicativos também removeram o uso de símbolos obsoletos do GTK+ e do GLib e adotaram a nova política de apenas incluir cabeçalhos de nível superior do GTK+ e do GLib.
Expectativas para o GNOME 2.30
O desenvolvimento não para com o GNOME 2.28. O trabalho já começou no GNOME 2.30, que será lançado exatamente seis meses após o 2.28.
A decisão final se o GNOME 2.30 (que será lançado em março de 2010) ou o GNOME 2.32 (previsto para setembro de 2010) será o GNOME 3.0 será tomada em meados de novembro de 2009. Esta decisão será baseada no progresso dos aplicativos GNOME novos e atuais, bibliotecas e seu impacto em acessibilidade, estabilidade e usabilidade.
O GNOME 2.30 continuará fornecendo a plataforma de ambiente de trabalho como sempre o fez, e vai também, potencialmente, apresentar uma nova interface no GNOME Shell e o Diário de Atividades GNOME que o ajudará a navegar e encontrar arquivos facilmente no seu computador. Para desenvolvedores, o GNOME 2.30 abandona algumas bibliotecas antigas.
Uma primeira versão do GNOME Shell está disponível no 2.28 e pode ser baixada. O GNOME Shell apresenta uma inovação na nova interface de usuário, usando o poder de um ambiente de trabalho com composite. O GNOME Shell torna mais fácil adicionar novas áreas de trabalho, iniciar aplicativos usados com mais frequência e acessar seus arquivos e documentos mais usados.
Fonte: http://library.gnome.org/misc/release-notes/2.28/index.html.pt_BR
Bootando Linux com disquete e pendrive (sem cdrom)…
Olá amigos! Vi esses dias um pessoal penando (pra variar rsrs) com máquina que não boota pela USB, mas que também não dispõe de outras mídias removíveis se não o velho disquete de 1.44″.
Bom, pra instalar Linux não dá mais para usar disquetes, isso é um fato. Mas hoje existem os pendrives, de alta capacidade, a custo baixíssimo (lembro que em 2001-2002 um pendrive de 128MB custava uns US$ 500) e distribuições que se instalam a partir deles (hum… Ubuntu diz alguma coisa??? rsrs).
Para resolver a questão de instalar um Linux em uma dessas máquinas deficientes, precisamos de:
1) Um disquete e seu respectivo leitor;
2) Um pendrive bootável com o Ubuntu ou Puppy Linux (ou alguma outra, http://www.pendrivelinux.com é pródiga em soluções)
3) O arquivo wakepup2, criado para bootar o Puppy Linux.
O procedimento é simples: criado o pendrive bootável (o que pode ser feito de modo manual ou automatizado — o Puppy é bem completo neste aspecto, assim como Ubuntu) é necessário criar o disquete de boot com a imagem “WKPUP202.IMG” contida no pacote. Via Linux é fácil, rodando:
# dd if=WKPUP202.IMG of=/dev/fd0 bs=1440k
Depois é só reiniciar a máquina pelo disquete com o pendrive Puppy espetado na USB. Depois é usar ou mandar instalar no HD. As opções do disquete estão em inglês, mas não precisa ser gênio, é só escolher onde estiver alguma opção escrita “USB”.
Obs.: Para Ubuntu:
1) Antes de mexer com disquete, no Ubuntu 8.10, rode “modprobe floppy”
2) É necessário criar um arquivo vazio chamado “USBFLASH” no “/” (raiz) do pendrive e este deverá obrigatoriamente estar formatado em FAT16 ou FAT32 (nada de ext2 ou 3, pois é o DOS quem vai ler!)
3) Editar o A:\autoexec.bat para que conste na linha 85 o seguinte:
Agora é só cruzar os dedinhos e ligar tudo rsrs. Boa diversão!
Baixe o disquete PUPUNTU 0.1 na minha página:
Ele está preparado para iniciar tanto pendrives com Ubuntu quanto com Puppy Linux. Não precisa editar nada, é só lançar no disquete.
Backtrack 4 – Oscanner…
Por: Mauro Risonho de Paula Assumpção A.K.A firebits
OScanner é um framework de avaliação para Oracle desenvolvido em Java. Tem um plugin baseado em arquitetura e vem com um par de plugins que fazem atualmente:
Enumeração do Sid
Testes de senhas (comum e dicionário)
Enumerar versão Oracle
Enumerar os regras de conta
Enumerar privilégios de conta
Enumerar os hashes conta
Enumerar informações de auditoria
Enumerar as diretivas de senha
Enumerar as database links
Os resultados são apresentados em uma árvore gráfica em Java.
Info:
oscanner – cqure.net
Localização:
/pentest/cisco/oscanner
Sintaxe:
$ ./oscanner.sh
Oracle Scanner 1.0.6 by patrik@cqure.net
————————————–
OracleScanner -s <ip> -r <repfile> [options]
-s <servername>
-f <serverlist>
-P <portnr>
-v be verbose
Montando um Debian Etch – Para técnicos…
Visão geral sobre o que sera feito
Seguinte, vamos montar um Debian Gnu/Linux versão Etch (4) para técnicos, montaremos uma versão LEVE do sistema com as seguintes características:
Kernel – 2.6
Ambiente gráfico – xorg
Gerenciador de Janelas – XFCE 4
Browser – Firefox
E-mail – Thunderbird
Mensageiro – GAIM
Outras ferramentas:
IPCALC
IPTRAF
Se você já tem uma imagem ISO da versão stable muito bem, pode usá-la, se não tem baixe a versão NETINSTALL, porém você precisa ter uma conexão com internet durante o processo de instalação.
Eis o link para a versão netinst versão eth (4.0 r0 i386):
http://cdimage.debian.org/…/iso-cd/debian-40r0-i386-netinst.iso
Se mesmo assim quiser, pode baixar o CD 1 de instalação através deste link:
http://cdimage.debian.org/…/iso-cd/debian-40r0-i386-CD-1.iso
Após gravar o CD, vamos a instalação do sistema…
Instalando o sistema MÍNIMO
Na tela de boot, digite:
# installgui
Para iniciar o instalador gráfico, siga normalmente os passos até chegar em:
PARTICIONAMENTO DE DISCO
Selecione o particionamento MANUAL e vamos montar nosso layout.
Um bom layout de particionamento é fundamental para melhorar o desempenho do sistema. Estou considerando que esta máquina executará exclusivamente o sistema operacional Debian, assim utilizaremos as 4 partições como primárias. Caso você possua outro sistema no HD, terá que fazer com partições estendidas, mas já não terá a mesma performance.
Como não sei o tamanho do HD que você estará utilizando, vou supor que é um de 40GB, que atualmente é o mais comum. Se você possui outro HD de outro tamanho, fica a seu critério definir as partições.
Chega de lero lero, vamos ver:
Partição número 1
BOOTÁVEL!!!
Tamanho: 2GB
Ponto de montagem: /
Sistema de arquivos: XFS
Partição número 2
Tamanho: 1GB
Sistema de arquivos: swap
Partição número 3
Tamanho: 8GB
Ponto de montagem: /usr
Sistema de arquivos: XFS
Partição número 4
Tamanho: O que estiver sobrando de espaço…
Ponto de montagem: /home
Sistema de arquivos: XFS
Observações:
1) Colocando a partição de swap entre as partições / e /usr você otimiza a utilizacão da cabeça de leitura e gravação do disco.
2) Foi utilizado o sistema de arquivos XFS pois possui uma performance muito boa, veja este artigo (em inglês):
http://linuxgazette.net/102/piszcz.html
3) Criando uma partição / pequena, você ganha performance na checagem na hora do boot. Foi usado 2GB porque o /var ficará montado sobre a / e o apt às vezes baixa muita informação, 2GB é suficiente para a utilizacão normal do sistema e para o cache do apt.
OK, salve o particionamento e deixe somente a opção sistema básico selecionada! Assim será instalado somente um sistema em MODO TEXTO.
Prossiga com a instalação normalmente, quando for concluída, vamos terminar de implementar nosso sistema.
Instalando e configurando o restante do sistema
Bom, se você já instalou o sistema mínimo e reiniciou o computador, será apresentada a tela de login. Logue-se como root e mãos a obra.
Primeiro, configurar o apt:
Faca com que o seu arquivo /etc/apt/sources.list contenha APENAS estas duas linhas:
deb http://linorg.usp.br/debian/ etch main
deb http://security.debian.org/ etch/updates main
A vantagem de utilizar o linorg.usp.br é porque é muito mais rápido que os mirrors internacionais.
Agora vamos atualizar o apt:
# apt-get update
E instalar o xorg:
# apt-get install xorg xdm
Nota: Como estamos querendo desempenho, vamos preferir o XDM em detrimento ao GDM ou KDM.
Após o download, digite o comando abaixo para ver se o X já está instalado:
# X
Você poderá sair do X pressionando juntamente CTRL+ALT+BACKSPACE.
Nota a respeito da configuração do X:
Por padrão o driver de vídeo será vesa, edite o arquivo /etc/X11/xorg.conf, vá até a seção DEVICE e troque a linha “Driver” para o driver correto. No meu caso o driver é i810.
Driver “vesa”
para:
Driver “i810”
Se você não souber qual é o seu driver de vídeo, utilize o comando abaixo, mas você terá que reconfigurar todo o X:
# dpkg-reconfigure xserver-xorg
Instalando o XFCE
Vamos agora instalar o XFCE 4, que é leve, prático e bem amigável.
# apt-get install xfce4
Aguarde o download, para testar, entre com o comando:
# /etc/init.d/xdm start
Isto chamará o xdm, você deve então digitar o nome de usuário e a senha criados durante a instalação, se tudo estiver ok, o XFCE será aberto.
Agora, instalar os programas adicionais:
# apt-get install firefox mozilla-firefox-locale-pt-br
Isto já vai instalar o Firefox com o idioma pt-br (português do Brasil).
# apt-get install thunderbird thunderbird-locale-pt-br spamassassin
Com isso iremos instalar o Thunderbird em português e o spamassassin, que é um filtro antispam.
Ativar o spamassassin é simples, basta editar o arquivo /etc/default/spamassassin e mudar de 0 para 1 a seguinte linha:
# Change to one to enable spamd
ENABLED=0
para:
# Change to one to enable spamd
ENABLED=1
E restartar o serviço:
# /etc/init.d/spamassassim restart
Agora, dentro do Thunderbird, clique em FERRAMENTAS / CONFIGURAR ANTI-SPAM.
Na janela que abrir você terá de configurar cada conta de e-mail independentemente. Selecione a primeira conta de e-mail e marque a OPÇÃO “CONFIAR EM CABEÇALHOS DE SPAM DEFINIDOS PELO:” e selecione SPAMASSASSIN.
Dentro de tratamento, proceda assim:
Marque a OPÇÃO “MOVER MENSAGENS RECEBIDAS E CLASSIFICADAS COMO SPAM PARA:”.
Marque PASTA SPAM da conta PASTAS LOCAIS, ou selecione outra pasta, isso fará com que os e-mails marcados como spam sejam movidos para outra pasta.
Se quiser, marque a opção EXCLUIR DA PASTA OS SPAMS COM MAIS DE XX DIAS. Coloque a quantidade de dias que quiser. Eu sempre deixo o default 14.
Faça este procedimento para cada e-mail cadastrado.
Software adicional
Agora é só ir instalando pelo apt os programas que você precisar, por exemplo:
# apt-get install iptraf
# apt-get install ipcalc
Etc.
Pronto, você já tem um Debian Etch configurado para internet, estável e leve.
Bing usado pra medir velocidade de conexão…
O Bing é um software usado para medir à conexão de determinado link entre dois computadores. Escrito por Pierre Beyssac e licenciado pela GPL, este software é muito eficaz na hora de medir o peso de determinana conexão.
Para entender melhor a função do mesmo, imagime que em sua casa ou na empresa na qual você possa ser um colaborador, umas das ferramentas de comunicação ou de transporte de arquivos pesados é uma pratica de prioridade O. Empresas de publicidade e propaganda, que utilizam em grande escala o tranporte de imagens com uma resolução de estremo tamanho, gif’s animados, arquivos de mp3 etc. Com crecente fuxo de sua rede as conexões de 100Mb/s acabam não trabalhando com a com a mesma proporção e o que valerá é a capacidade de conexão de um ponto ao outro. (Host_A <==> Host_B). Ficamos as veze s imagimando qual é o motivo de determinadas variasões inesplicaveis em nossa rede na hora de uma tranferencia de determinado conteudo.
O Bing utiliza o protocolo ICMP naturalmente, emitindo um pacote ICMP com pedido de resposta e analisa a mudança resultante do RTT. Variando um pouco o RTT, o Bing faz medidas de cada múltiplo que está sendo medido.O envio de pacote pelo Bing só é possível por que ele utiliza o icmp_dev, onde o sistema de exploração não e o único permitidos para fazer envio de pacote, naturalmente usaria sockets primários para essa finalidade mas o Winsock não suporta os soquetes primários. (no caso do windows)
Instalando o bing em sistemas de Unix e derivados
O Bing é um programa bem conhecido no mundo open source e muitos administradores de redes o utilizam para seus fins. Um dos objetivos da comunidade de software livre em geral é facilitar a vida dos usuários para que os mesmos não passem parte de seu tempo compilando pacotes, por isso as distribuições de ponta já incluem um vasto “cardapio” de programas em seu mirror. Com o Bing não é diferente. Ele está bem enraizado em vários mirrors. Para instalar o Bing, iremos mostrar duas formas convencionais que já sabemos. A primeira compilando o pacotes e outra através do mirror padrão.
Para fazer o download do arquivo tar.gz entre na seguinte url http://www.boutell.com/lsm/lsmbyid.cgi/002078vv.
A forma de instalação é simples, entre no diretório em que foi feito o download e descompacte o arquivo e de os seguintes comandos:
# make
# make install
Em meras oportunidades de instalar o Bing atravez dos mirros, vale lembrar a distro que está usando no momento, seja ela derivada do Debian ou Red Hat.
#apt-get intall bing, para os derivados do debian
# urpmi bing, para os derivados do Red Hat
Após instalado, podemos agora ver algumas de suas utilidades e seu funcionamento. Em muitos casos não são usados todos os seus parâmetros, mas isso não significa que os Bing não seja poderoso. Existem casos que administradores de redes possuem um conjunto de ferramentas especificas para realizar sua tarefas diárias, onde se aplica-se o seguinte ditado popula “cada caso, é um caso”.
Iniciando então o uso do software, experimente dar o seguinte comando para testar a velocidade de sua conexão.
bing ip_maquina_local ip_gateway
# bing 192.168.0.168 192.168.0.1
Em seguida de ctrl+c para que ele possa retornar a estatística, o qual na saída padrão exibirá todos os resultados de sua pesquisa. No final dos resultados estará apresentando o valor, ou seja o tamanho do link.
host bandwidth ms
warning: rtt big 192.168.0.168 0.013ms <>
192.168.0.1 21.787Mbps 0.121
Esse procedimento é o mais correto para medir a conexão, pois ela mede a conexão real entre dois hosts, ao contrário de alguns metodos que algumas pessoas usam. É possível também determinarmos o tamanho do pacote enviado dando o seguinte comando:
# bing -S 1000 192.168.0.168 192.168.0.1
Cuidado! Não aumente muito o tamanho do pacote porque isto podia provocar a fragmentação/remontagem do IP sobre a ligação para medir o *or* nas ligações intermediárias, ao qual acima as medidas tomadas. Se você permanece abaixo de 1400 bytes, você está seguro (exceto no SLIP lig onde você não deve ultrapassar 1000).
Com a opção -v podemos também verificar tamanho de bytes que são disparados para fazer o pedido de resposta, entendendo que ele joga dois valores para que possa se fazer a leitura precisa, disparando 72 bytes e 136 bytes.
Existe casos em que a medição não será precisa no caso de algumas conexões discadas por exemplo devido a limitação do hardware.
Em casos de ligações saturadas o bing trabalha medindo rtts, onde na hora da medida haverá um atraso minimo na hora de fazer a leitura do pacote. Conexões IP/X25 faz à capsulagem em pacotes pequenos, por isso é muito difícil saber a capacidade “exata” porque o consumo geral pelo pacote do IP não são fixas e não variam com o tamanho de pacote. Entretanto, um Bing inteligente poderia encontrar o tamanho encapsulating lentamente aumentando o tamanho de pacote e detectando etapas no RTT.
Sabendo as perdas do pacote em host 1 e em host 2, é ser possível computar a perda entre os mesmos.
O Bing tem o poder de calcular determinadas perdas, mas vale resaltar que essas perdas são desŕesiveis, em relão ao resultado obitido na saída padrão.
Está é uma das diversas ferramentas que o mundo de código aberto pode lhes apresentar.
Iniciando mais um Terminal Gráfico no Linux…
Para fazer isso, a partir de um terminal em modo texto, logamos e executamos o comando:
startx — :X
Onde X é o número do terminal que iremos utilizar, no caso:
startx — :2 –> Control + Alt + F8
startx — :3 –> Control + Alt + F9
startx — :4 –> Control + Alt + F10
startx — :5 –> Control + Alt + F11
startx — :6 –> Control + Alt + F12
Instalando e configurando o PostgreSQL 8.3 no Ubuntu 9.04…
No meu ambiente de desenvolvimento, eu sempre utilizo dois bancos: o Postgres e o DB2. Basicamente devido ao fato de minha instalação de DB2 ser pesada pois tenho várias configurações de Data Warehouse e um banco muito carregado, o que torna o banco mais pesado para meu simples desktop. Então, para debugar meus softwares, vou com meu postgres levinho mesmo.
Minha idéia aqui é mostrar como instalar e configurar o PostgreSQL 8.3 no Ubuntu 9.04. As configurações são as mesmas para a instalação em Windows, a única diferença obvia é que você irá ter que ir ao site do postgres e baixar o Installer do Windows.
Vamos lá, iniciamos a instalação com o comando:
$ sudo apt-get install postgresql-8.3 postgresql-client-8.3
Recomendo também instalar o pgAdmin, que é uma ferramenta para administrar o postgres:
$ sudo apt-get install pgadmin3 pgadmin3-data
Algo que aconteceu comigo na migração para o Ubuntu 8.04, foi que tive que remover o Postgres 8.2 (apt-get purge postgresql-8.2) para conseguir iniciar o 8.3 corretamente. Se você concluir meus passos aqui e mesmo assim não conseguir conectar no Postgres, recebendo algum erro, provavelmente terá que dar o purge. (talvez com mais tempo de pesquisa eu poderia descobrir qual era o problema… se alguem passar por isso me diga please).
O próximo passo é setar uma senha para o usuário postgres com os seguintes comandos:
sudo su postgres -c psql postgres
ALTER USER postgres WITH PASSWORD ‘password’;
\q
O primeiro comando chama o utilitário psql com o usuário postgres e conecta no postgres especificamente no database postgres.
O segundo comando altera a senha do usuário postgres.
O terceiro comando finaliza o psql.
Note que a palavra password deve ser substituida pela password que você desejar.
Feito a instalação e mudança de senha do usuário postgres, você estará apto a desenvolver um trabalho no seu computador conectando normalmente ao postgres, porém, se a idéia é disponibilizar o acesso ao banco para receber conexões de outras máquinas, você vai ter que alterar dois arquivos para isso. Para isso, vá para o diretório /etc/postgres/8.3/main
Edite o arquivo postgresql.conf
Na linha listen_addresses, troque o localhost por *, ficando a linha assim:
listen_addresses = ‘*’
Dessa forma seu postgres vai “escutar” não só conexoes provenientes da sua própria máquina.
A próxima configuração no mesmo arquivo é habilitar a encriptação de passwords, para fazer isso descomente a linha abaixo simplesmente removendo o # da frente dela:
password_encryption = on
Finalmente a próxima configuração é no arquivo pg_hba.conf. Neste arquivo você consegue restringir o acesso ao seu banco de dados por IP. Normalmente queremos liberar o acesso para todos os IPs em uma faixa, no meu exeplo, quero liberar para todas as máquinas da rede 10.5.2.*, então eu adiciono a seguinte linha no meu pg_hba.conf:
host all all 10.5.2.0 255.255.0.0 md5
Feito isso, basta reiniciar o postgres com o comando:
sudo /etc/init.d/postgresql-8.3 restart
Enjoy!
Escrito por: Juliano Martins – São Paulo, Brazil