Guia do Hardware.Net
Impresso em: 17/12/2002, 21:15:26
Impresso de: http://www.guiadohardware.net/curso/redes_guia_completo/53.asp

Cursos online :. Guia Completo de Redes

+ HOME
   :. Análises
   :. Artigos
   :. Cursos Online
       :. Hardware
       :. Redes
       :. Linux (foca)
       :. Gravação CDs
       :. Notebooks
       :. Setup
   :. Livros
      
:. Entendendo e
    Dominando o Linux 4.Ed
   :. Arquivo DDD
   :. Dicionário
   :. FAQ
   :. Notícias
   :. Dicas Linux
   :. Mini-Reviews
   :. Overclock
   :. Tutoriais

+ Publicações
   :. CD GDH
   :. CDs Mandrake
   :. CDs do Linux
   :. E-Books

+ Outros
   :. Drivers
   :. Fórum
   :. Humor
   :. Colunas
   :. Manuais
   :. Palm
   :. Quiz

+ Pesquisar no site:

+ Expediente

+ Doações

+ Comente esta
   Matéria

Dúvidas sobre
Linux?
Baixe o E-book
Entendendo e Dominando o Linux
de Carlos E. Morimoto
ou increva-se no
Curso de Linux
em SP


Invista em
conhecimento:
:.CD-ROM Guia do Hardware: Todos os e-books e uma cópia off-line de todo o site por R$ 21,00
:.Linux Mandrake 9.0 GDH, com manual em Português e aplicativos. 4 CDs por R$ 24,00
:. E-Books de Carlos E. Morimoto:
Manual de Hardware Completo 3ed.
Redes 3ed
Upgrade e Manutenção
Novas tecnologias 3Ed
Entendendo e Dominando o Linux
Dicionário Técnico de Informática. R$ 8,00

:. CDs do Linux:
Slackware 8.1 R$ 8,00
Red Hat 8.0 R$ 16,00
DemoLinux 3.0 R$ 8,00
Knoppix R$ 8,00
Peanut 9.1 R$ 8,00
FreeBSD 4.5 R$ 20,00
NetBSD 4.5 R$ 16,00
Libranet R$ 8,00
Debian 3.0 R$ 35,00
Definity R$ 8,00
E outros...

 

Dicas do dia : Receba as atualizações do Guia do Hardware todos os dias, direto no seu e-mail. Clique aqui para se inscrever.
 

Data: 29.03.2002
Tipo: Curso
Fabricante: Não se Aplica
Por: Carlos E. Morimoto

 

 Guia Completo de Redes

:. Terminais via VNC

O VNC é na verdade um programa de administração remota, mas que, rodando num servidor Linux, também desempenho bem a função de servidor de terminal. A vantagem é que ele roda em praticamente qualquer sistema operacional, incluindo naturalmente Windows e Linux. Ele é a melhor opção para usar programas Linux junto com o Windows.

O problema com o VNC é que ele transmite os dados da tela na forma de imagens, incluindo o texto das janelas. Isto é bem menos eficiente que o protocolo do Xfree, utilizado pelas opções a seguir, onde são transferidas instruções para criar as janelas, junto com seu conteúdo. Além do tráfego de dados via VNC ser maior, a utilização de processador, tanto no servidor quanto nas estações é bem maior. O VNC é recomendável apenas para estações com processadores Pentium 133 ou mais rápidos.

Se você chegou a utilizar o VNC no Windows, provavelmente ficou decepcionado com a velocidade de atualização da tela e com a possibilidade de abrir um único terminal, que mostra a mesma área de trabalho que quem estiver na frente do micro verá. Não é à toa que a versão Windows do VNC é geralmente apresentada como uma simples ferramenta de administração remota. Realmente não serve para muita coisa além disso. Para detalhes de como utilizar o VNC no Windows leia: http://www.guiadohardware.net/artigos/156-administracao_remota.asp

No Linux as coisas são um pouco diferentes. Graças à forma como o X gerencia os dados a serem mostrados no vídeo, o VNC torna-se muito mais rápido e eficiente e ganha o suporte a múltiplos terminais. Basta lembrar que o X foi originalmente desenvolvido justamente para esta função, possibilitar o uso de um terminal gráfico Unix em computadores com pouco poder de processamento, isso ainda na década de 70.

Usando uma rede de 10 megabits é possível usar uma máquina Linux remotamente com quase a mesma qualidade que teria sentado na frente dela e com uma rede de 100 megabits é quase impossível notar diferença, com o detalhe de que o cliente VNC roda numa janela do Windows (também é possível usa-lo em tela cheia), o que permite que você use a máquina Linux ao mesmo tempo que roda outros programas. Melhor ainda, como o cliente apenas mostra a imagem da tela, você pode abrir vários aplicativos na máquina Linux, sem que a máquina Windows fique lenta. Obviamente, para isso você precisará ter uma máquina Linux configurada ligada em rede com a máquina Windows.

Isto tem duas utilidades. A primeira é claro a possibilidade de ter uma workstation Linux dentro do Windows e rodar ao mesmo tempo seus aplicativos preferidos das duas plataformas. Rodar o servidor VNC não impede que alguém utilize a máquina Linux normalmente.

Instalar o VNCserver no servidor Linux é razoavelmente simples. Comece baixando o programa aqui:
http://www.downloads-guiadohardware.net/download/vnc-3.3.3r2_x86_linux_2.0.zip


Descompacte o arquivo e copie os arquivos:

vncpasswd

vncserver

Vncviewer

vncviewer

Xvnc


... de dentro da pasta que será criada para o diretório /usr/local/bin (você precisa de permissões de root para isso, use o comando kdesu konqueror para abrir o gerenciador de arquivos com privilégios de root)

Se quiser habilitar o recurso de acesso via browser, crie o diretório vnc dentro da pasta /usr/local e copie a pasta classes para dentro da pasta (o caminho ficará /usr/local/vnc/classes).

Feito isso, abra o arquivo vncserver que foi copiado e altere as linhas:

$geometry = "1024x768";

$depth = 8;


.. para a resolução e quantidade de cores que deseja usar. A resolução pode ser qualquer uma, não necessariamente uma das resoluções padrão. Se for maior que a resolução de vídeo do cliente, a janela ocupará apenas parte da tela e se for maior aparecerão barras de rolagem.

Se você quiser usar a janela do VNC junto com a barra de tarefas do Windows, como no screenshot que coloquei no início do tutorial, você deve usar uma resolução um pouco menor que a padrão. No meu caso por exemplo o cliente usa 1024x768 então usei:

$geometry = "1014x710";

$depth = 16;


Como pode notar, aproveitei para aumentar também a resolução de cores, de 8 para 16 bits. Naturalmente, ao usar 16 bits de cor a velocidade de atualização da tela cairá um pouco, mas a diferença não chega a ser muito grande, graças ao bom trabalho de compactação que o VNC faz.

É importante iniciar o VNC com a mesma profundidade de cores usada no servidor, caso contrário as cores ficarão alteradas. Não é necessário que a estação use a mesma profundidade de cores que o servidor, pois o VNC se encarrega de fazer a conversão, neste caso sem alterar as cores.

Depois de salvar o arquivo, abra um terminal e use o comando vncserver para iniciar o VNC. Da primeira vez que for executado, o programa pedirá que você defina uma senha de acesso. Pode ser qualquer coisa com 6 caracteres ou mais. A senha naturalmente serve para impedir que qualquer um possa se conectar à sua máquina, sem autorização.

Para acessar o servidor, baixe o VNC for Windows no Link abaixo:
http://www.downloads-guiadohardware.net/download/vnc-3.3.3r9_x86_win32.zip

Você pode baixar versões para outros sistemas operacionais (inclusive Windows CE e Palm) em:
http://www.uk.research.att.com/vnc/

Basta descompactar o arquivo e executar o vncviewer.exe. Forneça o endereço IP do servidor, seguido por um : e o número do terminal (ou display). Cada vez que você executa o vncserver no servidor será criado um terminal virtual diferente. O primeiro terminal recebe o número 1, o segundo 2, e assim por diante. É possível criar um número teoricamente ilimitado de terminais na mesma máquina Linux e cada um permite a conexão de um cliente diferente, respeitando naturalmente as limitações de velocidade do servidor e principalmente da rede. Para chamar o cliente VNC no Linux basta usar o comando vncviewer num terminal.


Da primeira vez que se conectar ao servidor você terá uma surpresa desagradável. O gerenciador de janelas default do VNC é o TWM, um gerenciador antigo e com poucos recursos:


Para mudar isso, abra o diretório .vnc, que será criado dentro do seu diretório de usuário (/home/nome_do_usuario/.vnc) da primeira vez que rodar o vncserver e edite o arquivo xtartup. Lembre-se que todos os diretórios cujo nome começa com . são ocultos, não se esqueça de marcar a opção mostrar todos os arquivos no gerenciador de arquivos.

Basta substituir o twm na última linha pelo nome da interface gráfica que gostaria de utilizar. A minha preferida nesse caso é o blackbox, que por ser leve e não utilizar imagens nem ícones nos menus é a que oferece um melhor desempenho via rede, ao mesmo tempo em que permite abrir muitos terminais, sem acabar com a memória RAM do servidor. Na falta do blackbox você pode usar qualquer outra interface que tenha instalada.

O arquivo ficará assim:

#!/bin/sh

xrdb $HOME/.Xresources

xsetroot -solid grey

xterm -geometry 80+24+10+10 -ls -title "$VNCDESKTOP Desktop" &

blackbox &


Como disse, você pode utilizar qualquer interface gráfica que tenha instalada na máquina, bastando substituir o blackbox pelo comando adequado. Alguns exemplos são:

startkde : para abrir o KDE (em algumas distribuições o comando é apenas kde)

gnome-session : usar o Gnome

afterstep : usar o afterstep

wmaker : Window Maker


E assim por diante.

Para que a alteração surta efeito, feche o terminal virtual que havia sido criado com o comando vncserver -kill :1 e chame novamente o vncserver. O mesmo comando pode ser usado sempre que você desejar fechar os terminais virtuais criados.

Você pode inclusive criar vários terminais com diferentes resoluções e diferentes interfaces gráficas. Para isso, basta alterar a resolução de tela no /usr/local/bin/vncserver, alterar a interface gráfica no xstartup e digitar novamente o comando vncserver depois de cada alteração.

Uma opção mais prática para abrir vários terminais com resoluções e profundidade de cores diferentes é usar o comando vncserver com os parâmetros -depth e -geometry como em:

vncserver -depth 16 -geometry 1014x710


É um pouco longo, mas muito mais prático que editar os dois arquivos de configuração a cada mudança. Assim você poderá ter o terminal 1 com 1024x768 e KDE, o terminal 2 com 800x600 e BlackBox e assim por diante.


:. Rodar aplicativos a partir do servidor

Se os terminais rodarem Linux, não faz sentido usar o VNC, já que o próprio Xfree possui recursos mais eficientes para rodar aplicativos remotamente. Com poucos comandos você pode abrir qualquer aplicativo instalado no servidor, ou mesmo abrir toda a interface gráfica. Para isto, basta contatar o servidor usando o SSH ou Telnet.

Antes de mais nada, você precisa configurar o cliente para aceitar as conexões, o que é feito através do comando xhost endereço_IP_do_servidor. Se por exemplo o servidor usa o endereço 10.0.01 e a estação usa o 10.0.0.12, o comando ficaria assim:

xhost 10.0.0.1


Se não estiver preocupado com a segurança, você pode usar o comando xhost + para aceitar conexões de qualquer PC.

Depois, acesse o servidor via Telnet, com o comando telnet 192.168.0.1 (logo a seguir veremos as vantagens de fazer o mesmo via SSH, mas uma coisa de cada vez).

Depois de fazer o login, use o comando:

aplicativo -display 192.168.0.2:0.0 &


Como por exemplo:

konqueror -display 192.168.0.2:0.0 &


Além de ser usado nos terminais, este recurso também pode ser utilizado sempre que você precisar de um aplicativo que não está instalado na sua máquina de trabalho, mas existe em alguma outra máquina da rede.

Para não precisar escrever toda vez o aplicativo -display 192.168.0.74:0.0 você pode criar aliases, editando o arquivo .bashrc encontrado dentro do diretório do usuário usado (ex: /home/morimoto/.bashrc).

Adicione linhas como:

alias konqueror486=konqueror -display 192.168.0.72:0.0 &


Veja as propriedades dos atalhos do KDE para ver os comandos para inicializar cada aplicativo via linha de comando.


« Voltar .: | :. Rodando aplicativos via SSH »

 

© 1999 - 2002 :. Todos os direitos reservados :. Guia do Hardware.Net
http://www.guiadohardware.net/