Arquivo da tag: Linux

Ndiswrapper + Ubuntu

Comprei um computador no Extra para minha filha, sobre o qual fiz um artigo. A questão é que no quarto dela ainda não tem cabo de rede e tive que recorrer a uma placa wireless que tinha aqui em casa para a qual não há driver para Linux disponível. Sem problema, o NdisWrapper resolve. Para quem não sabe NdisWrapper é um software que permite utilizar drivers de dispositivos Wireless para Windows no Linux. Funciona bem mas tem um problema. Provavelmente o seu módulo do kernel sobe muito tarde e até lá o gerenciador de conexões do Ubuntu já tentou subir a interface. Aí atravessa tudo e provavelmente você vai conseguir conectar na rede Wireless após reconfigurar tudo de novo. Muito chato.

A solução que consegui é simples e resolveu o meu problema:

1. No gerenciador de conexões de rede, deixe a rede wireless sem conectar automaticamente.

2. Edite o arquivo /etc/rc.local e inclua antes da linha exit 0 o seguinte:

sleep 15
nmcli con up id Nome_do_seu_SSID

3. Salve o arquivo e reinicie o computador.

O que acontece agora é que mesmo que o NdisWrapper demore para subir, o gerenciador de conexões de rede não vai conectar a sua rede de modo automático. Somente após 15 segundos (sleep 15) o comando nmcli con up id Nome_do_seu_SSID vai conectar a sua rede. No meu caso, uns 5 segundos depois que a interface gráfica foi totalmente carregada a rede conecta sem problemas.

Talvez no seu caso, dependendo da velocidade do seu computador, o tempo de 15 segundos pode ser muito ou pouco, teste e ajuste o tempo caso haja algum problema.

Este procedimento não funciona caso você suspenda o seu computador, neste caso a conexão de rede não volta automaticamente e você vai ter que reiniciar o computador para ter acesso à rede novamente.

Deixe seu comentário, dizendo a distribuição que usa e sua versão, caso este procedimento tenha funcionado com você.

Desafio: Qual a marca da placa de rede que estou usando? Dica 1: use a figura acima para descobrir. Dica 2: este assunto já foi abordado no Blog do Vicente anteriormente.

Como instalar o Ubuntu de dentro do Windows

Instalar Linux no seu computador nunca foi tão fácil. Mesmo assim muitos usuários ainda tem medo de fazer “besteira” e destruir seu Windows nesta empreitada.

Já faz algum tempo que existe como instalar o Ubuntu na mesma partição do Windows. Usando este método sua única preocupação será de ter pelo menos 6 GB disponível em disco. Que tal então aproveitar o lançamento do Ubuntu 11.04 e começar a usar? É muito simples, mas mesmo assim fiz um tutorial sobre o assunto.

– Baixe o Wubi.exe.

– Execute-o, será aberta uma tela igual a esta:

wubi

– Você poderá escolher o drive onde será instalado, qual o tamanho da instalação, qual o gerenciador de janelas, o idioma, o usuário e a senha. Você pode deixar todas as opções como estão e clicar em Instalar.

– Será iniciada a instalação. Se o firewall do Windows estiver habilidado, você pode receber uma mensagem igual a abaixo. Clique em Desbloquear:

firewall-windows

– Aguarde a instalação. Será baixado automaticamente o ISO do Ubuntu e depois instalado. Como a ISO tem quase 700 MB, a instalação vai demorar um tempinho…

wubi-installing

– Depois de instalado basta marcar Reiniciar Agora e clicar em Terminar.

wubi-finishing

Depois de reiniciar aparecerá um menu para você escolher se quer entrar no Windows ou no Ubuntu. Na primeira vez que o Ubuntu foi iniciado a instalação continuará. Não se preocupe nenhuma interação com o usuário é necessária. Depois disso o Ubuntu Linux 11.04 estará disponível para você testar.

Se você não quiser mais o Ubuntu instalado no seu computador, basta ir no Painel de Controle, Adicionar ou remover programas e desinstalar o Ubuntu:

adicionar-remover-programas-ubuntu

Não tem espaço no seu hd? Não tem problema, se você tem um pendrive maior de 2 GB ou mais, é possível utilizá-lo para rodar Linux.

Como você pode ver, há muitas maneiras de você experimentar o Linux, basta querer. 😉

Como mesclar um texto com uma imagem via script no Linux

Eu estava marcando no calendário em minha mesa quantos dias faltavam para um evento. Mas como não tenho muita disciplina para todos os dias ficar atualizando o calendário resolvi fazer um script para que o número de dias restantes fosse mostrado junto com a imagem de fundo do meu desktop.

Basicamente o que o código faz é calcular a diferença em dias entre hoje e a data marcada e criar um novo arquivo mesclando uma imagem com o texto.

atualizafundo.sh
#!/bin/bash
data="05/01/11" #data no formato mm/dd/yy
imagemfundo=/home/user/images/wallpaper.jpg
imagemsaida=/home/user/images/imagem_cont.jpg
###############################
agora=$(date +%d/%m/%y)
diashoje=$(date +%j)
diasdata=$(date -d$data +%j)
diasdif=$((10#$diasdata-10#$diashoje))
convert $imagemfundo -fill white -stroke black 
-pointsize 450 -gravity NorthEast -draw 
"text 50,100 '$diasdif' " -pointsize 175 
-draw "text 100,475 'dias'" $imagemsaida
gconftool-2 --type string --set 
/desktop/gnome/background/picture_filename $imagemsaida

A escrita do texto na imagem é feita com o comando convert (pacote imagemagick) que pode ser modificado conforme o seu gosto.

O comando gconftool-2 coloca a imagem gerada como papel de parede.
Abaixo segue um exemplo do resultado do script, executado no Ubuntu 10.04.

Para que o fundo seja atualizado a cada logon o script pode ser adicionado aos Aplicativos de Sessão, no menu Sistema -> Preferências.

Como colocar qualquer Live CD Linux em um pendrive

Existem vários tutoriais na internet de como colocar a distribuição Linux X ou Y em um pendrive. Mas que tal unificar tudo em um único procedimento? É o que se propõe a fazer o Universal USB Installer. Basta baixar o software, baixar a distribuição desejada, plugar o seu pendrive e pronto! Todos aqueles passos chatos que mudam de distribuição para distribuição são substituídos por um único software. Por quê não pensaram nisso antes?

como instalar o ubuntu em um pendrive, como instalar o fedora em um pendrive, como instalar o linux em um pendrive, linux, pendrive, fácil

Quer saber como? Acesse Universal USB Installer

Leia Mais

Como instalar o Ubuntu de dentro do Windows

Instale o Fedora baixando somente 1 CD

Como instalar o Gentoo Linux

Dicas para filesystems Linux

No linux quando é criado um file system 5% do espaço some. Veja:

df -h /disk0
Filesystem               Size   Used    Avail      Use%     Mounted on
/dev/dm-0             178G  129M    169G       1%            /disk0

Um filesystem de 178GB gasta 129M para controles, journaling e outras coisinhas. Mas só sobraram 169GB. Cadê o resto?

Por padrão, ao formatar um filesystem, 5% da área é reservada para o root. Recurso muito útil para filesystem usados pelo sistema, tais como /, /var e /usr, mas um grande desperdício para discos de banco de dados por exemplo.

Aqui vão algumas dicas:

1. Para formatar um filesystem alterando o percentual reservado:

mkfs.ext3 -m<percentual> <dispositivo>

exemplo:
mkfs.ext3 -m0 /dev/hda1

2. Para alterar o percentual reservado em um filesystem ativo use o comando:

tune2fs -m<percentual> <dispositivo>

exemplo:
tune2fs -m2 /dev/hda1

3. Um filesystem é checado automaticamente após o reboot a cada 6 meses  ou 35 montagens. As vezes isso não é bom pois se o tamanho do filesystem for muito grande isso pode demorar e atrapalhar um simples reboot. Se quiser que um filesystem nunca seja verificado após o reboot use o comando:

tune2fs -c<montagens>  -i<intervalo em dias> <dispositivo>

exemplo (montagens=0 e intervalo em dias=0 desabilita a verificação automática):
tune2fs -c0 -i0 /dev/hda1

Obs.: Após uma reboot inesperado de um servidor sempre é bom passar fsck nos filesystems e essa opção desabilita o fsck automático.

4. Para ver informações de um filesystem use o comando:

dumpe2fs -h <dispositivo>

exemplo:
dumpe2fs -h /dev/hda1

Campos interessantes deste comando:

Filesystem volume name: disk4                                              (e2label)
Filesystem state: clean
Block count: 26714112
Reserved block count: 0          (Res. block cnt / Block cnt = % reserved)
Block size: 4096
Filesystem created: Fri Feb 4 10:57:19 2011
Last mount time: Fri Feb 4 10:58:07 2011
Last write time: Fri Feb 4 11:17:47 2011
Mount count: 1
Maximum mount count: 34                                                (tune2fs -c)
Last checked: Fri Feb 4 10:57:19 2011
Check interval: 15552000 (6 months)                                 (tune2fs -i)
Next check after: Wed Aug 3 10:57:19 2011

5. Saber o tipo de filesystem (ext2, ext3, riser, …):

df -T

Você não precisa esperar pelo ChromeOS

O ChromeOS promete revolucionar a maneira como encaramos os computadores. Se realmente ele se tornar tão popular quanto promete, vai fazer a Microsoft se mexer e provavelmente vai enterrar de uma vez o Yahoo!. A promessa é que ele seja lançado em meados deste ano e não estará disponível para instalar em qualquer computador. Será vendido embutido em notebooks com acesso a rede 3G nos Estados Unidos.

Mas que tal você poder experimentar um WebOS (sistema operacional focado ao acesso à Internet) agora? Se você não vê a hora, experimente o Jolicloud. Você consegue instalá-lo dentro do próprio Windows sem precisar reparticionar o HD da mesma maneira que o Ubuntu usando Wubi. Depois é só rebootar seu computador e escolher Jolicloud no menu de inicialização.

O boot é bem rápido e você está com o desktop disponível em menos de 1 minuto. O browser padrão é o Chrome, mas pode instalar também o Opera e o Firefox. É possível instalar também vários aplicativos e jogos de maneira intuitiva clicando no botão +. As atualizações são automáticas e os desenvolvedores prometem que você sempre terá a última versão do Jolicloud instalada no seu computador.

Dei uma olhada por cima e descobri que o Jolicloud é uma customização do Ubuntu. Você pode inclusive abrir uma console texto e logar como root. Internamente o Jolicloud está muito mais para uma distribuição Linux normal do que um WebOS. Diferente do ChromeOS que tem uma customização bem mais extensa.

Outra promessa do Jolicloud é ressuscitar computadores que hoje estão lentos demais para serem utilizados (apesar de eu não ter encontrado no site quais são os requisitos mínimos de memória e CPU). Para isso bastaria baixar o ISO e instalar por cima do sistema operacional original destes computadores. Como a versão do Ubuntu está com um kernel bem atual, acho difícil que uma máquina com menos de 256 ou 512 MB de RAM rode com performance aceitável. Se sua intenção for reaproveitar computadores com 256 ou 512 de MB de RAM o canal é instalar o Lubuntu.

Há suporte a dispositivos removíveis como cartões de memória e pendrives. Quando instalado pelo Windows é possível acessar o drive C:. Além disso é possível acessar arquivos de discos virtuais como o Dropbox e o Zumo. No caso do Dropbox é possível instalar o cliente para Linux (não cheguei a testar).

Há também um plugin para o Chrome que emula o Jolicloud. É interessante para ter uma ideia de como é a interface mas não acho que tenha uma utilidade prática.

Ficou curioso? Acesse Jolicloud.com e baixe o instalador para Windows. Dê preferência a versão de download por Torrent que é muito mais rápida que o download direto do site.

Obrigado ao colega blogueiro Marcos Damaceno pela dica.

É possível desbloquear o PlayStation 3?

O Wii e Xbox 360 não aguentaram muito e foram desbloqueados pouquíssimo tempo depois de lançados. O Playstation 3 por sua vez demorou bastante.

A primeira iniciativa bem sucedida foi do hacker George Hotz que, usando Linux instalado no console, conseguiu explorar uma vulnerabilidade que permitia, entre outras coisas, rodar jogos piratas no PS3. A resposta da Sony foi curta e grossa: Desabilitar a função OtherOS que permitia instalar Linux. Depois de um tempo o hacker desistiu de continuar tentando.

Lá por Agosto de 2010 foi lançado o primeiro “dongle”, tipo de dispositivo USB, que prometia o desbloqueio o PS3. Custava 170 dólares australianos e deve ter causado frio na espinha dos japoneses da Sony.

Hoje você consegue comprar no Focal price ou Dealextreme estes dongles por cerca de 15 dólares. Pagando com Paypal e com frete grátis. A grande vantagem destes tipos de dispositivos é que são atualizáveis. Caso a Sony mude o firmware, os desenvolvedores podem tentar contornar os bloqueios para que o mesmo continue funcionando. Mas eventualmente a Sony pode conseguir tapar definitivamente os furos e o dispositivo parar de funcionar para sempre.

Será que vale a pena comprar? Provavelmente sim, mas ainda não tive coragem de encomendar um. Você já comprou? Então deixe seu testemunho nos comentários!

Outros Artigos

Como desbloquear Wii?

Como instalar o Homebrew Channel no seu Wii

Mapeando unidades de rede automaticamente no Linux

No Linux o mapeamento (ou montagem de compartilhamentos Windows) pode ser feito com o comando:

mount -t cifs //srv/compart /ponto-de-mont -o "username=domíniousuário"

O problema deste comando é que somente funciona com permissão o root. Isso pode ser resolvido facilmente dando permissão ao usuário executar a montagem com sudo, mas não é nem o jeito mais seguro, nem o mais prático.

Na primeira vez que eu montei o quebra-cabeças para logar no Linux com uma credencial de domínio, usei uma alternativa interessante chamada pam_mount. Este software intercepta a senha que o usuário digita via SSH, GDM ou outro método de logon e a utiliza para montar as unidades que estão configuradas em um arquivo de configuração. Funciona, mas era um pé no saco fazer funcionar e não é flexível.

No artigo Linux, BSD, AIX, Solaris, Mac OS e HP-UX logando em domínio Windows expliquei como é fácil adicionar os mais variados sistemas operacionais em um domínio Windows utilizado o Likewise. Estes dias descobri que há outro benefício:  mapear automaticamente as unidades de rede de servidores Windows. Isso porque o Likewise solicita um ticket Kerberos para o AD.

Um software que utilizar este ticket é o gvfs-mount.  Ele utiliza fuse e por isso não precisa de permissão de root além de utilizar o ticket requisitado pelo Likewise para montar os compartilhamentos sem pedir senha. Por exemplo: Se você tentar montar um diretório Windows da rede com um usuário local do Linux, você receberá um retorno parecido com o abaixo. Nele você deverá informar o usuário, senha e domínio para poder realizar a operação.

gvfs-mount smb://servidor/compartilhamento
Senha requerida para compartilhar compartilhamento em servidor
User [vicente]:
Domain [DOMÍNIO]:
Password:

Agora, se você estiver logado no Linux com um usuário de domínio Windows, rodando o mesmo comando, o mapeamento será feito sem nenhum prompt. O legal de montar com o comando gvfs-mount é que ele já coloca um atalho no desktop do usuário facilitando o acesso ao diretório. Veja como fica:

Isso abre várias possibilidades interessantes que explorarei nos próximos artigos.

Configurações úteis para usar o Likewise

No artigo anterior: Linux, BSD, AIX, Solaris, Mac OS e HP-UX logando em domínio Windows expliquei como é fácil adicionar os mais variados sistemas operacionais em um domínio Windows. Agora vou mostrar algumas configurações úteis no Likewise, o software que provê esta facilidade.

Antes de continuar algumas coisas precisam ser explicadas:

1) O Likewise é instalado por padrão no diretório /opt/likewise

2) Os binários do likewise ficam no diretório /opt/likewise/bin e não ficam no path do sistema operacional.

O jeito mais fácil de configurar é utilizar o /opt/likewise/bin/lsregshell que nada mais é que um editor de registro modo texto. Digitando help no seu prompt de comando, você poderá ver quais são os comandos disponíveis.

Para facilitar, estou abaixo segue algumas configurações que eu executei no meu ambiente que podem ser úteis para você também. Se você quiser utilizar no seu ambiente, basta copiar, editar conforme suas necessidades e colar no prompt de comando do /opt/likewise/bin/lsregshell

cd HKEY_THIS_MACHINEServiceslsassParametersProvidersActiveDirectory
set_value AssumeDefaultDomain 1
set_value RequireMembershipOf dominiogrupo1 dominiodomain^admins
set_value LoginShellTemplate /bin/bash
cd ..Local
set_value LoginShellTemplate /bin/bash
cd ....RPCServerssamr
set_value LoginShellTemplate /bin/bash
quit

Na linha 2 o valor AssumeDefaultDomain configurado com 1, dispensa o uso do prefixo dominio\ antes de cada usuário logar.

Na linha 3 o valor RequireMembershipOf configurado com um grupo de domínio, faz como que somente os usuários que estejam neste grupo possam logar. Apesar de servir primariamente para grupos, se você colocar usuários de domínio neste valor, também funciona.

Nas linhas 4, 6 e 8 o valor LoginShellTemplate configura o shell padrão para o usuário. O valor padrão é /bin/sh. No Ubuntu isso aponta para o /bin/dash que é um horror. Para quem usa AIX o shell padrão é o ksh, que é um horror elevada a quarta potência.

O quit no final fecha o lwregshell.

Para validar imediatamente as alterações, execute os comandos:

/opt/likewise/bin/lw-refresh-configuration
/opt/likewise/bin/lw-ad-cache --delete-all

Alguma outra sugestão? Deixe o seu comentário.

Como ativar compressão em sistemas de arquivos no Linux

Imagine que você precise fazer um “export” de um banco de dados de 100 GB e você tem só 50 GB livres no seu servidor. Você pode facilmente criar o export direto para um arquivo .gz. É rápido e fácil. Mas imagine agora que seu banco de dados corrompeu e você precisa restaurar os dados. Até onde eu sei você vai precisar baixar o export inteiro e não vai ter espaço para isso porque o banco não consegue ler o export de dentro do arquivo .gz. (Se alguém souber como, me avise que eu atualizo este artigo). A alternativa neste caso seria baixar o backup em outro servidor, montar via NFS no servidor de destino e ter o custo da rede para fazer o import novamente.

Outro exemplo: Você tem um servidor de arquivos com dados raramente consultados (planilhas, arquivos de texto, etc) e eles ocupam muito espaço. A alternativa de novo é zipar os arquivos, mas não é muito prático descompactar quando for utilizar os arquivos novamente.

No Windows Server 200X, existe a compactação do NTFS, nativa. Basta ir em propriedades, Avançados, Compactar…

E no Linux? Eu já li alguma coisa sobre compactação usando Reiser4, mas nunca vi funcionar. E ainda por cima Reiserfs depois que o Hans Reiser foi preso por matar a mulher, tem um futuro ameaçado.

Felizmente eu achei uma solução elegante utilizando o Fusecompress. Como o próprio nome diz, o Fusecompress usa Fuse que é um componente do Linux que permite montar dispositivos sem precisar de direitos de root. Além do Fusecompress, existem dezenas de implementações que utilizando Fuse para montar desde ISOs até partições NTFS.

O legal do Fusecompress é poder utilizar qualquer partição já criada, independente do sistema de arquivos utilizado. Basta você apontar um diretório que será utilizado como respositório para um ponto de montagem qualquer. Por exemplo: para montar o diretório /origem no /destino, basta executar o comando:

fusecompress /origem /destino

Se você executar um df -h aparecerá o seguinte retorno.

/dev/sda3             170G  108G   63G  64% /
fusecompress          170G  108G   63G  64% /destino

Como você pode ver no exemplo acima, o disco /destino é o mesmo do /. Não é necessário utilizar nenhum partição específica para isso. Agora você pode usar o /destino para “jogar” os arquivos que deseja armazenar de forma compactada. Para testar eu copiei um export de Oracle de 30 GB para o diretório /destino. Dando um ls, é possível comparar o /origem (que efetivamente está armazenado do disco) com o /destino (que é acessável utilizando o fusecompress). Neste caso a taxa de compressão é de pouco mais de 6 para 1. Nada mal. Para ver a diferença entre o tamanho real do arquivo e o tamanho em disco basta executar o comando:

ls -lha  /origem/arquivo /destino/arquivo

O retorno será parecido com o abaixo:

-rw-r--r-- 1 vicente vicente 4.8 GB Jun 29 11:25 export
-rw-r--r-- 1 vicente vicente 30 GB  Jun 29 11:25 export

Note que o arquivo é armazenado em disco no /origem e lá aparece com 4.8 GB.  Ser você for abrir este arquivo sem montar com o fusecompress só achará cobras e lagartos. Agora se você montar no /destino poderá acessar o arquivo do mesmo jeito que acessaria um arquivo não compactado. Note que é uma compactação bem razoável que vem com um custo de performance grande com uso intensivo de CPU e uma demora bem maior para realizar a criação ou cópia deste arquivo para o /destino. Para copiar do /destino no entanto a demora não é tão grande. Por padrão é utilizado o formato ZLIB para compactação. É possível utilizar os formatos LZO (rápido, mas usa muita memória. Em um teste que eu fiz, faltou memória em uma máquina com 2 GB de RAM e a operação foi abortada), BZ2 (compacta muito mas é muito lerdo) e LZMA (que não testei). Caso queira testar estas opções, basta executar man fusecompress e ver quais são os parâmetros.

Caso precise desmontar o volume comprimido basta utilizar o comando:

fusemount -u /destino

Com certeza esta é uma opção interessante para quem precisa guardar dados muito volumosos e não tem espaço suficiente. Mas não custa avisar: se for utilizar o fusecompress em produção, você vai precisar testar e ter certeza que vai funcionar com segurança para o seu ambiente. Os testes que eu fiz foram em ambiente de teste e eu não dou nenhuma garantia de funcionamento. Lembre-se que não adianta xingar a minha mãe, ela nem gosta de Linux…