Montando um servidor de aplica��es X
Piter PUNK
Em artigos anteriores, escrevi sobre o XDM e sobre como transformar
um velho 386 em um terminal X. Por�m, o X terminal n�o tem utilidade
nenhuma sem um servidor de aplica��es para X!! Com este artigo n�s fechamos o c�rculo,
montando o servidor.
1. Introdu��o
A arquitetura do X Window System, permite que um programa seja executado
em uma m�quina e visualizado em outra. Esta t�cnica � muito indicada
para montar laborat�rios, salas de aula, cybercaf�s utilizando m�quinas
com poucos recursos, e garantir para estas m�quinas todas as funcionalidades
de uma mais potente.
Neste artigo iremos mostrar algumas configura��es do xdm (X Display
Manager) outras do xfs e algumas do xfstt (Servidores de fontes para
o X). Quest�es sobre a apar�ncia da tela de login do XDM podem ser
respondidas no meu artigo:
Configurando o XDM.
Sobre como reaproveitar micros antigos como Xterminais, veja o artigo
Um 386 como X Terminal.
L� tem v�rias informa��es sobre como instalar
e configurar o Linux com X em m�quinas m�nimas.
2. Requisitos
A maior parte dos requisitos para fazer funcionar um servidor X est�o
dispon�veis na sua distribui��o. Como eu uso Slackware tanto em meus
servidores quanto nos clientes, minhas explica��es ser�o dadas com
base nesta distro. Voc� vai precisar:
- Um computador rodando Linux;
- 64MB + 32MB para cada cliente (meio exagerado, mas � melhor sobrar que faltar);
- Placa de Rede;
- xdm;
- xfs e;
- xfstt (caso queira fontes TrueType)
� poss�vel rodar com menos mem�ria do que o descrito acima, dependendo
unicamente das suas necessidades. 28MB � o quanto o StarOffice ocupa
quando � acionado, de 12 a 20MB o Netscape usa sem d�. Processamento
n�o � t�o necess�rio, j� fiz testes com um P133 suportando 4 m�quinas
e funcionou normalmente, n�o testei StarOffice e nem Netscape+Flash.
3. Instala��o
A instala��o do Linux n�o tem muitos segredos nas m�quinas mais novas,
basta inserir o CD no drive de CD-ROM e bootar por ele. Seguindo as
instru��es dos menus voc� deve ter uma m�quina instalada em pouco
tempo.
O m�nimo imprescind�vel s�o as s�ries A, AP, N e X. Mas � recomendado
voc� instalar tudo, j� que os terminais ir�o usar os programas nesta
sua m�quina, ent�o � bom que ela possua programas...
4. Configurando
Ser�o necess�rias algumas configura��es no servidor e no cliente, ser�
necess�rio fazer com que o servidor forne�a ao cliente as fontes e
os X clients. J� o cliente dever� ter indicado onde buscar os X clients
e as fontes. Se voc� utilizar o xfstt, ser� poss�vel ter fontes TrueType
em seus clientes (e no servidor).
4.1. No servidor...
Vamos dar uma r�pida passada pelos arquivos de configura��o do xdm.
Por default, eles j� est�o configurados para aceitar conex�es vindas
de qualquer computador. Alterando estes arquivos, voc� pode fazer
com que o X aceite apenas conex�es vindas de determinados IPs, usar
o Chooser, etc...
4.1.1. /etc/inittab
Pode parecer estranho, mas esta ser� a primeira altera��o. Vamos fazer
com que o xdm seja ativado no momento do boot. � muito chato ter que
ficar colocando ele para funcionar na m�o toda hora...
Ent�o, procure uma linha semelhante a esta:
id:3:initdefault:
E troque o 3 pelo 4 (no Slackware) ou pelo 5 (nos RedHat-like). Assim
voc� estar� habilitando o boot gr�fico, que ir� rodar o xdm ou algum
equivalente (gdm, kdm ou wdm).
4.1.2. /etc/rc.d/rc.4
No Slackware, o default � usar o kdm, depois o gdm e como �ltima op��o
o xdm. Como eu gosto mais do xdm, eu editei o /etc/rc.d/rc.4 e coloquei
o xdm como default -:) Uma boa id�ia, � incluir neste script a inicializa��o
do xfs. O rc.4 editado ficou assim:
#!/bin/sh
#
# rc.4 - This file is executed by init(8) when the system is
# being initalized for run level 4 (XDM)
#
# Author: Piter Punk
# based on original rc.4 from Slackware
# Original author: Fred N. van Kempen
echo "Starting up X11 session manager..."
# Chama o Servidor de Fontes
xfs &
# Chama o XDM...
/usr/X11R6/bin/xdm -nodaemon
4.1.3. /etc/X11/xdm/Xaccess
Este arquivo decide quais m�quinas poder�o acessar ao ser servidor.
A sintaxe n�o � complicada. Apenas coloque o nome das m�quinas que
poder�o acessar ao seu servidor. Por exemplo:
#
# Xaccess - Arquivo Exemplo
#
# autoriza todas as maquinas do dom�nio bluecup...
*.bluecup-microsystems.com
# autoriza a maquina este host em especial
terminal1.mynet.nom.br
# proibe a conex�o do host cracker.invader.net
!cracker.invader.net
Existem outras configura��es poss�veis. Mas, geralmente apenas com
estas informa��es � poss�vel fazer �timas regras. Lembre-se que o
* � um coringa, se voc� mant�-lo sozinho em uma linha, voc� estar�
autorizando todas as m�quinas da internet a conectarem em seu X server.
J� o ! funciona como sendo um ``n�o'', qualquer endere�o depois dele
ter� suas conex�es recusadas.
4.1.4. /etc/X11/xdm/xdm-config
Neste arquivo est�o v�rias configura��es gerais do xdm. O que nos interessa, � uma linha semelhante a esta:
DisplayManager.requestPort: 0
Esta linha, serve para indicar qual ser� a porta em que o XDM ir� aceitar as conex�es. Do jeito que est�, ela faz com que o xdm n�o escute em porta nenhuma e, portanto, n�o aceite as conex�es de nossos X terminais. Simplesmente comente a linha, colocando um ! no in�cio dela. Ficando assim:
!DisplayManager.requestPort: 0
4.2. No Cliente...
Com o servidor j� configurado, agora � a hora de arrumar o cliente.
Para falar a verdade, n�o � necess�ria configura��o nenhuma, se voc�
quiser o seu Xterminal rodando agora, basta digitar no prompt:
$ X -query ip.do.seu.servidor
Por�m, quando fazemos um Xterminal dedicado, queremos que o sistema
entre o no X automaticamente e carregue o xdm do servidor (pelo menos
eu quero). Ent�o s�o necess�rias algumas pequenas altera��es.
4.2.1. /etc/inittab
As altera��es a serem feitas no inittab s�o as mesmas que foram efetuadas
no servidor. Elas s�o feitas para que o terminal entre direto no modo
gr�fico.
4.2.2. /etc/rc.d/rc.4
Aqui ser�o feitas algumas altera��es diferentes... ao contr�rio do
servidor, onde quer�amos que o xdm fosse carregado, aqui iremos colocar
apenas o X para ser executado. Siga o exemplo:
#!/bin/sh
#
# rc.4 - Vers�o especial para um Xterminal
#
# Author: Piter Punk
XSERVER="ip.do.seu.servidor"
echo "Starting up X11..."
/usr/X11/bin/X -query $XSERVER
4.2.3. /etc/XF86Config
Esperamos que o seu terminal j� esteja com o X configurado. N�o vamos
explicar como configur�-lo nesse documento. Vamos fazer apenas uma
pequena altera��o para que o Xterminal possa usar as fontes que o
servidor est� disponibilizando.
Onde houverem umas linhas semelhantes a estas:
Section "Files"
RgbPath "/usr/X11R6/lib/X11/rgb"
FontPath "/usr/X11R6/lib/X11/fonts/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/Type1"
FontPath "/usr/X11R6/lib/X11/fonts/Speedo"
Apague todas as FontPath e coloque no lugar:
FontPath "tcp/ip.do.seu.servidor:7100"
Pronto! Se voce preferir, pode deixar alguma das outras linhas do FontPath,
do jeito que ficou (com apenas uma linha), o seu Xterminal n�o vai
utilizar nenhuma fonte local, ir� utilizar todas as do servidor.
4.3. Fontes TrueType
Depois de tudo isto funcionando, existe ainda a possibilidade de voc�
utilizar fontes TrueType em seus computadores. Isto � feito atrav�s
do xfstt. Ele deve ser instalado e as fontes devem ser colocadas no
diret�rio /usr/share/fonts/truetype.
Uma �tima id�ia, � pegar o programa chamado ``acentos-1.5'' na internet.
Este programa al�m de configurar o Slack para acentuar, coloca o xfstt
para funcionar -:).
Depois das fontes instaladas e do daemon rodando, basta adicionar esta
linha no XF86Config dos clientes (na se��o sobre fontes...)
FontPath "tcp/ip.do.seu.servidor:7101"
5. Conclus�o
Gra�as � arquitetura cliente-servidor, o X Window System, sempre esteve
anos � frente de outros sistemas de janela. Enquanto para algumas
pessoas isto � encarado como novidade, os usu�rios do mundo *nix est�o
bem acostumados � exportas suas aplica��es, e disp�em de ferramentas
facilmente configur�veis e robustas para esta fun��o.
Com este m�todo, computadores considerados obsoletos, podem executar
programas de �ltima gera��o em seus servidores. Aumentando o aproveitamento
da base instalada e diminuindo os custos de manuten��o e instala��o
(j� que os aplicativos estar�o todos no server).
Este artigo n�o pretende esgotar o assunto, sendo que existem v�rias
outras configura��es que podem ser feitas tanto no xdm, quanto no
X ou mesmo nos terminais. Qualquer sugest�o, d�vida ou cr�tica mande
e-mail para: [email protected]
|