MultiTerminais_Linux_no_Ubuntu_6.10_Edgy

Sistema MultiTerminais Linux

  • Este projeto foi trabalhado em cima do projeto original da UFPR. Segue abaixo o link do projeto original para conhecimento.

    http://www.c3sl.ufpr.br/multiterminal/howtos/howto-xephyr-pt.htm Vamos aos passos: Instale o Ubuntu 6.10 Edgy ("última versão estável"), e configure o mesmo com acesso à internet; Atualize a base de dados do Apt, "apt-get update"; Instale o pacote udev, "apt-get install udev", pacote este responsável pelo recebimento dos eventos gerados através dos teclados/mouses;

Configuração do Servidor X(XOrg) xorg.conf

  • Para um multiterminal de N terminais, o arquivo /etc/X11/xorg.conf deve ser configurado da seguinte forma: Defina um layout contendo N screen's.

    Section "ServerLayout"

    • Identifier "Layout" Screen "SCREEN 1" Screen "SCREEN N" above "SCREEN N-1"
  • EndSection

    • Obs: A disposição das telas apresentadas no layout acima não é relevante. Defina as seções das N placas de vídeo. Section "Device"
      • Identifier "PLACA VIDEO 1"
      • Driver "nv" BusID "0:10:0"

      EndSection ## Substitua o driver da placa de vídeo de acordo com o seu hardware.

      ## A opção BusId identifica qual o endereço da placa de vídeo que está sendo utilizada.

      ## Para obter o BusId de suas placas digite "lspci | grep VGA" ## Tome cuidado com os valores, pois o endereço fornecido por lspci é em Hexadecimal enquando que o X ## espera um valor em decimal. Para conversão use "echo $((0xVALOR_HEXADECIMAL))" . . . Section "Device"

      • Identifier "PLACA VIDEO N"
      • Driver "sis" BusID "1:0:0"
    • EndSection

      • Defina as seções dos N monitores. Section "Monitor"
        • Identifier "MONITOR 1" Option "DPMS"

        EndSection . . . Section "Monitor"

        • Identifier "MONITOR N" Option "DPMS"

        EndSection Defina as seções das N screen's. Section "Screen"

        EndSection . . . Section "Screen"

        EndSection

      A definição de teclado pode continuar igual à já existente em seu xorg.conf, no entanto, certifique-se de que o nome do teclado (Identifier) está de acordo com a Seção Layout (isto é, "Generic Keyboard"). O mouse você deve fazer apontar para o dispositovo /dev/input/mice:
      • Section "InputDevice"

        • Identifier "Configured Mouse 1" Driver "mouse"

          Option "CorePointer" Option "Device" "/dev/input/mice" Option "Protocol" "ImPS/2"

        EndSection Baixe os arquivos necessários: Faça o download do servidor Xephyr modificado pela UFPR (aqui); Descompacte o arquivo; Copie os seguintes arquivos descompactados "cp -r bin/ include/ share/ /usr/local" "cp -r man/* /usr/local/man/" Faça o download do script "wrapper" Xephyr.sh, responsável por carregar o servidor Xephyr. O script deve ser copiado para o diretório /usr/sbin. Faça o download do layout dos teclados aqui. Descomprima o arquivo xkb-evdev.tar.gz no diretório /etc/X11 "tar -xvzf xkb-evdev.tar.gz -C /etc/X11" Edite o arquivo evdev em /etc/X11/xkb/rules/ , vá até a linha 70 do arquivo, altere o conteúdo "pc+pc(pc104)+pc/br" para "pc(pc104)+br" Edite o arquivo gdm.conf em /etc/gdm/ , e remova todo o conteúdo que vier após a linha [servers], incluindo essa linha. salve o arquivo. Copie o arquivo /etc/gdm/gdm.conf para /etc/gdm/gdm.conf_zero Faça o download do script multiterminais.sh, script criado por mim para atribuir os eventos corretos a cada dispositivo (teclado/mouse) e copie o mesmo para /etc/init.d/ Crie um link simbólico para que o mesmo seja iniciado automaticamente "ln -s etc/init.d/multiterminais.sh /etc/rcS.d/S69multiterminais" o "S69" é para que o script seja executado antes do gdm.conf, pois o runlevel do mesmo é S70.

outro ponto importante está no scritp para associação de eventos aos seus respectivos dispositivos ( teclados/mouses).

com o comando "cat /proc/bus/input/devices" será retornado várias informações sobre os devices, incluse endereço físico e eventos, o que será importante para a gente.

no script as seguintes linhas devem ser alteradas para o correto funcionamento dos teclados e mouses usb, ou mesmo os teclados e mouses que estão ligados por conversores usb:

l_teclado2=cat devices.oia | grep "usb-0000:00:02.0-1" | cut -d: -f1 l_teclado3=cat devices.oia | grep "usb-0000:00:02.1-3" | cut -d: -f1

tipow... onde está "usb-0000:00:02.0-1" será substituído por a saída do comando "cat /proc/bus/input/devices", onde lá terá "usb-0000:00:02.0-1/input0" para o teclado e "usb-0000:00:02.0-1/input1" para o mouse...

eh clado que o "usb-0000:00:02.0-1/input1" será alterado na linha dos mouses.. logo abaixo.

l_mouse2=cat devices.oia | grep "usb-0000:00:02.1-1" | cut -d: -f1 l_mouse3=cat devices.oia | grep "usb-0000:00:02.0-3" | cut -d: -f1

  • Pronto agora é só reiniciar o computador. Obs1: Algumas placas de vídeo podem ter problemas com seus drivers, eu mesmo tive problemas com a de modelo "via", para resolver usei o driver "vesa". Obs2: Os monitores podem ficar fora de ordem, para isso basta apenas ligar o monitor na placa de vídeo que o mouse e teclado estão funcionando. Abaixo está disponível a apresentação do projeto;

    Apresentação MultiTerminais Linux. Obrigado e um grande abraço à todos. Valmar Neves - The-Root

    • www.ivsolutions.eti.br

MultiTerminais_Linux_no_Ubuntu_6.10_Edgy (last edited 2011-09-19 23:20:22 by localhost)