+ Responder ao Tópico



  1. #1
    Sempre na luta Avatar de jacksonezidio
    Ingresso
    Jun 2008
    Localização
    São Paulo - SP
    Posts
    208
    Posts de Blog
    1

    Post Acessando servidor TS utilizando uma estação Linux

    Acessando servidor TS utilizando estação Linux

    Passo a passo para instalação do Tiny Core Linux para uso com Rdesktop

    Site oficial do Sistema operacional -> http://www.tinycorelinux.com

    O problema
    Recentemente tive a necessidade de implementar uma solução de acesso à um servidor Windows Server 2003 via TS utilizando estações clientes com Linux, o problema é que o tipo de estação é antiga, IBM com 128MB de memória. A solução foi o Tiny Core Linux, que possui incríveis 10MB de tamanho e vem com servidor gráfico X-vesa e gerenciador de janelas JWM.

    O funcionamento nessa estação precisou ser da seguinte forma:
    O usuário liga o micro, o micro inicializa automaticamente com login automático e já abre direto com a tela do TS em modo tela cheia, e quando o usuário faz logoff ou fecha a tela, automaticamente o micro desliga.

    Observação: No exemplo utilizo o hda como HD em uso pois se trata do disco Master da IDE Primária do micro, troque se for necessário.

    Imagino que você tenha conhecimentos básicos em Linux para seguir esse tutorial.


    Instalando o sistema
    Dê o boot pelo cd com o hd já conectado.

    Abra o gerenciador de aplicativos e instale o cfdisk, logo após instale o grub.

    Abra um terminal.

    Liste as partições
    fdisk -l ou cat /proc/partitions

    Abra o cfdisk para criar as partições corretas:
    cfdisk /dev/hda (troque hda pelo hd correto)

    Crie 02 partições:
    particao 01 -> ext2 - bootavel
    particao 02 -> swap

    write para escrever no disco e quit para salvar.

    Formate a partição criada:
    mkfs.ext2 /dev/hda1
    rebuildfstab

    Monte a partição:
    mount /mnt/hda1

    Crie os seguintes diretórios:
    mkdir -p /mnt/hda1/boot/grub

    Monte o CDROM:
    mount /dev/cdrom /mnt/cdrom

    Copie os arquivos do diretório /boot do cdrom para o /boot do hda1:
    cp -p /mnt/cdrom/boot/* /mnt/hda1/boot/


    Crie o diretório tce na raiz do hda1:
    mkdir -p /mnt/hda1/tce

    Crie o arquivo mydata.tgz:
    touch /mnt/hda1/tce/mydata.tgz


    Instalando o grub

    Copie os arquivos do grub para o hda1:
    cp -p /usr/lib/grub/i386-pc/* /mnt/hda1/boot/grub

    Edite o arquivo menu.lst do diretorio /mnt/hda1/boot/grub/
    vi /mnt/hda1/boot/grub/menu.lst

    Deixe assim:
    default 0
    timeout 10
    title TinyCore
    kernel /boot/bzImage quiet home=/dev/hda1
    initrd /boot/tinycore.gz


    Execute os seguintes comandos para gravar o gerenciador de inicialização:
    grub
    root (hd0,0)
    setup (hd0)
    quit


    Desmonte o disco:
    umount /mnt/cdrom
    eject /dev/cdrom

    Reinicie o micro:
    reboot
    grub


    -----------------------------------------------------------------------------------------------------------------------------------

    Algumas observações importantes
    O sistema mesmo quando instalado no HD trabalha como se fosse um livecd, carregando todo o sistema para a memória ram.
    Dois diretórios podem ser usados direto do hd, não sendo carregador para a ram, são: /home e /opt.
    Para habilitar isso é necessário editar a 4º linha do arquivo "menu.lst" do grub, que fica no diretório /boot/grub/.
    Ficando assim:
    kernel /boot/bzImage quiet home=/dev/hda1 opt=/dev/hda1


    Não carregando o /home e o /opt, você pode fazer alterações que as mesmas serão efetivas, se esses diretórios forem carregados na memória ram tudo que for salvo durante o uso será perdido com o reboot do micro.

    O sistema vem por default com o dhcp cliente ativo, se você não tem um servidor dhcp na sua rede é necessário configurar a interface de rede que pode ser configurada através do painel de controle ou via linha de comando.
    Após configurada a interface, é necessário instalar o rdesktop. Abra o gerenciador de aplicativos e instale-o.
    O rdesktop é instalado no diretório /usr/local/bin, esse diretório já está incluso na variável de ambiente PATH e você pode chamar o rdesktop simplesmente digitando "rdesktop" no terminal.

    Para que o rdesktop seja chamado logo na abertura da interface gráfica é necessário editar o arquivo .profile do usuário (usuário tc por padrão e com login automatico) e adicionar na última linha a chamada à um shell script que inicializará o TS.
    Na última linha insira:
    rdesktop.sh

    Crie esse shell script:
    touch rdesktop.sh

    Edite o arquivo:
    vi rdesktop.sh.

    Adicione o seguinte conteúdo:
    #!/bin/sh
    rdesktop -a 16 -u USUARIO -d DOMINIO -f 189.xxx.xxx.xxx
    sudo halt

    Troque USUARIO pelo usuario padrão que aparecerá na tela de login;
    Troque DOMINIO pelo domínio padrão que aparecerá na tela de login;
    No final coloque o ip do servidor TS.
    O parâmetro -a 16 especifica a cor em 16 bits;
    O parâmetro -f define tela cheia.

    Você pode configurar ip estático editando o arquivo bootlocal.sh, ficando mais ou menos assim:
    ifconfig eth0 192.168.0.100 netmask 255.255.255.0 up
    route del default
    route add default gw 192.168.0.1
    echo "
    nameserver 192.168.0.1
    nameserver 8.8.8.8" > /etc/resolv.conf

    Dessa forma toda vez que o sistema inicializar, ele executará esse script que irá configurar sua interface de rede, esse script pode ser usado para inicializar qualquer coisa.

    Clonagem de HD
    Eu não poderia deixar para trás a explicação da clonagem de hd's, no meu caso eu tive que preparar dois micros com esse sistema, então eu preparei um e o outro eu só fiz um clone.
    Você instala o hd secundário e clona a imagem do primeiro para o segundo, independente se o primeiro hd tem 10GB e o segundo tem 50GB.
    Se no hd primário que já tem o Tiny Core possui uma partição de 9GB e outra partição swap de 1GB, ele irá escrever no hd secundário essas mesmas partições, deixando o restante como espaço livre não-alocado.

    Com os dois hd's instalados, imaginando que o principal é o /dev/hda e o secundário é o /dev/hdc:
    dd if=/dev/hda of=/dev/hdc

    Espero que seja útil para alguém.
    Abraço!
    Última edição por jacksonezidio; 14-11-2010 às 05:58.