企鵝,蘋果,遊戲及其他藥物
Posts tagged debian
Introdução à linha de comando – parte 6
Jul 22nd
Introdução à linha de comando – parte 6 from liquuid on Vimeo.
Uma introdução superficial ao sistema de pacotes deb, usado no debian,ubuntu e outras milhões de distros do governo federal
Só vou me desculpar pelo #flame que fiz durante a gravação … O apt se comportou mal durante a gravação, se esse vídeo for incoveniente para para muitos, edito o vídeo
Instalando e usando multiplas distros ao mesmo tempo
Jul 13th
O problema :
Antigamente ter um hardware apple rodando linux era trivial, tirando o modem todo o resto subia sem qualquer dificuldade. Com a troca de arquitetura de PPC para i386 é provavel que os developers tenham abandonado o linux pois apesar do hardware do mac ser muito parecido com o dos PCs, quase nada vem funcionando “de graça” …
O Fedora que tinha um suporte fantástico aos macs PPC não presta para macs-intel e fiquei na mão … Depois de perder um tempão com o Archlinux , não quis arriscar com o gentoo, apelei e coloquei opensuse … wow, funcionou quase tudo de primeira, e decidi manter a distro pelo seu ótimo suporte ao meu hardware.
Mas como o mundo é injusto , tive que instalar programas e bibliotecas exotéricas , que exigem versões velhas de outras bibliotecas mais extravagantes ainda, e como essas coisas são desenvolvidas em debian e para debian, naturalmente sequer compilavam no opensuse. Quando quase estava instalando debian na máquina meu debianita favorito @kov reforçou uma idéia que eu já tinha descartado, a do chroot.
Chroot significa change root , ou seja ele altera o diretório “/” de uma instância do shell, isso permite que eu mude meu shell de distribuição sem ter que rebootar a máquina. Melhor que isso, em paralelo, e quantas forem necessárias… O comando é simples :
chroot /dir /bin/bash
Onde “/dir” é o diretório onde eu tenho minha distro alternativa …
Para resolver meu problema, precisava de um debian no meu opensuse, fiz o seguinte …
A solução :
Primeiro precisei instalar uma distro, como não uso debian (ou demais variantes) não tenho acesso ao debootstrap, ferramenta usada para criar subdistros debian … Pra não ter que instalar a distro em uma partição física da máquina, peguei um template de distro desses usados em máquinas virtuais , no caso os do openvz, clicando aqui . Baixei um tar do debian lenny i386 com uns 200 mb mais ou menos.
Feito isso, criei um diretório chamado /opt/debian, e descompactei a mini distro debian lá dentro usando tar -xzvpf , note que o “p” nesse comando é importante para criar os links, sockets, e manter as permissões.
Assim basta usar o comando chroot /opt/debian /bin/bash para entrar em sua sub-distro, pronto né ? Não ! Tem uns pequenos detalhes pra resolver.
Internet e rede
Para que seu sistema alternativo tenha acesso à rede e internet você deve criar/editar o arquivo (dentro do ambiente chrooted) /etc/resolv.conf , por exemplo :
nameserver 4.2.2.1
nameserver 4.2.2.2
Com isso você já pode fazer um apt-get update/upgrade
Suporte ao hardware
Até aqui, a distro alternativa não tem acesso aos devices do sistema principal, como partições , cameras , pendrives etc… Para habilitar esses recursos saia do ambiente chrooted (Control + d) e use esses dois comandos simples :
mount -o bind /proc /opt/debian/proc
mount -o bind /dev /opt/debian/dev
Com isso o debian alternativo terá acesso ao hardware da mesma forma que a distro principal, inclusive com poder de formatar e destruir tudo ![]()
Suporte ao X
Suporte ao X não se faz apenas com /dev e o /proc habilitados, tem que liberar o acesso ao Xserver à partir do cliente X (ou seja de um terminal qualquer do seu usuário normal) com o comando xhost + . Como root (da distro principal) você deve “montar” a partição /tmp dentro do ambiente chroot :
mount -o bind /tmp /opt/debian/tmp
Agora o debian alternativo tem acesso ao soquete do X . Falta só dentro do chroot executar export DISPLAY=:0.0 agora tudo que vc abrir à partir do chroot vai abrir no X normal da sua distro principal =)
Para facilitar minha vida , criei 2 scripts que automatizam esse processo para mim, com apenas dois comando entro no meu chroot e começo a usar como num terminal comum. Se alguém quiser eu disponibilizo.
Acessando o VirtualBox de fora
Mar 18th
VirtualBox é um emulador de PCs,e assim como o VMware é capaz de criar máquinas virtuais que permitem rodar N sistemas operacionais ao mesmo tempo. A diferença entre os dois é que o VirtualBox é livre (possui versão paga) , e o vmware é totalmente fechado e caro. Ok, podem me chamar de traidor do movimento, mas o VMware comanda, em todos os sentidos ele é melhor que o VirtualBox, por isso sou beta tester e não pago por ele
O grande problema do VirtualBox é a dificuldade de se fazer coisas simples, como configurar uma Bridge entre o sistema real e o virtual, enquanto no vmware ou parallels tudo é ridiculamente simples, no virtualbox chega quase a ser um parto, duvida ?
O sistema usado para os testes foi o debian lenny , segue a instalação dos pacotes de bridge, estou assumindo que o seu virtualbox já está rolando :
apt-get install bridge-utils iproute iptables
Use os seguintes comando no terminal para ativar o bridge :
# Configurando a interface virtual Tap1
tunctl -t tap1 -u
ip link set up dev tap1
No campo
# Criando a ponte
brctl addbr br0
brctl addif br0 tap1
Finalmente arrumando os IPs:
# set the IP address and routing
ip link set up dev br0
ip addr add 10.1.1.1/24 dev br0
ip route add 10.1.1.0/24 dev br0
O IP 10.1.1.1 é o ip do Host que a máquina virtual vai usar como gateway, ou seja, sua máquina virtual vai ter que usar um ip da mesma rede do gateway.
Agora o mais divertido, configurando o iptables para rotear uma porta da máquina virtual para a máquina real :
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -i eth0 -p tcp -d xxx.xxx.xxx.xxx --dport 8080 -j DNAT --to 10.1.1.2:8080
iptables -A FORWARD -i eth0 -p tcp -d xxx.xxx.xxx.xxx --dport 8080 -j ACCEPT
No lugar de xxx.xxx.xx.xxx.xxx use o IP da sua máquina real. Agora a porta 8080 da máquina virtual é acessível de fora, ou seja da porta 8080 máquina real
Pra finalizar, você deve configurar o seu VirtualBox para usar uma Host Interface nas configurações de rede, o Device a ser usado deve ser a tap1, e mais uma coxisse que deve ser corrigida, as permissões dos devices que o VirtualBox usa :
chmod 666 /dev/vboxdrv /dev/net/tun
Sem isso nada vai funcionar, alias o programa vai dar um erro -3100, mensagem nada intuitiva.
Na boa, VirtualBox é um programa muito mal acabado, sua interface aparentemente simples esconde verdadeiras armadilhas para um usuário comum ou alguém com pouco tempo livre para pesquisar em fóruns por soluções. Eu gastei umas duas horas lendo a documentação oficial em PDF e só perdi meu tempo. Apesar de tudo ele tem um desempenho decente, mas como disse, não é um software pronto, e com concorrentes como vmware e parallels sua viabilidade economica está correndo perigo.
E viva o qemu !!!

Últimos comentários