ct

    SaMBa 3.x - Tudo o que você precisa saber

    Artigos

    Este artigo visa abranger as dúvidas mais comuns de usuários já experientes vindos do SaMBa 2.x, ou até mesmo novatos no SaMBa 3.0. Nele são abordados diversos temas pertinentes ao assunto, desde a instalação até exemplos práticos.Tiago Cruz
    24/01/2005


    Changelog

    - 20/01/2005
    Documento escrito, "revisado", "htmlizado" e "uppado" totalmente às pressas em algumas horas :)

    -21/01/2005
    Corrigidos muitos erros de português.
    Notei que, no phpnuke, para sair uma barra invertida, no código html é necessário inserir duas barras...
    Pequena atualização na seção de 'Instalação' e 'Anti-vírus'

    Introdução

    Este documento visa abranger as dúvidas mais comuns de usuários já experientes vindos do SaMBa 2.x, ou até mesmo novatos no SaMBa 3.0.

    Veja bem: Novatos no servidor SaMBa, mas pressupõe-se que você tenha algum conhecimento em servidores linux, que saiba iniciar e parar serviços, editar arquivos de configuração e etc.

    Estou usando o Conectiva 10 e o Kurumin 3.0 no artigo, adapte os comandos caso seja necessário.


    Instalação

    Não complique, procure binários no CD de instalação de sua distribuição ou use uma ferramenta para baixar a versão mais nova dos sites da mesma. No Conectiva, o comando ficaria (depois do bom e velho 'apt-get update')

    # apt-get install task-profile-sambaserver

    Esse 'task', no Conectiva Linux, é um meta-pacote que inclui:
    [root@gateway root]# rpm -qa | grep samba
    samba-winbind-3.0.10-72731U10_7cl
    samba-server-3.0.10-72731U10_7cl
    samba-doc-3.0.10-72731U10_7cl
    samba-swat-3.0.10-72731U10_7cl
    samba-vfs-3.0.10-72731U10_7cl
    samba-vscan-clamav-3.0.10-72731U10_7cl
    samba-testprogs-3.0.10-72731U10_7cl
    samba-common-3.0.10-72731U10_7cl
    samba-clients-3.0.10-72731U10_7cl

    Claro que você pode instalar um a um, via apt, yast ou urpmi em sua distribuição.

    No Kurumin, o comando para pegar a versão 3.0 do SaMBa ficaria:

    # apt-get install samba -t unstable


    Configuração

    Você até pode usar ferramentas genéricas como o webmin ou o swat, ou ainda, ferramentas próprias de sua distribuição como o Mandrake Control Center ou o YaST do SuSE, mas, de toda forma, ajustes finos devem ser feito diretamente no .conf do danado.

    Concentre-se então no arquivo que geralmente fica em /etc/samba/smb.conf

    No Conectiva, o padrão dele é ótimo, vem com ótimos "hacks" que se tornaram indispensáveis hoje em dia ao invés daquele enorme arquivo default do samba que quase ninguém lê :)

    Ainda no Conectiva 10, você tem a opção de dar um 'reload' no serviço, ao invés de dar um 'restart' que nada mais é um 'stop + start', ou seja, você pode fuçar no arquivo sem o medo de escutar reclamação dos usuários dizendo que a rede está caindo! :)

    Nas seções seguintes, vou abordar as configurações mais usadas e problemas mais freqüentes. No final, exemplos funcionais do mesmo.


    Migrando do SaMBa 2.x

    O SaMBa 3.x está bem melhor do que seu antecessor, sem sombra de dúvidas. Leia essa nota:

    "O projeto Samba anunciou o lançamento da versão 3.0 oficial de seu sistema, cuja principal novidade em relação à série 2.x é o suporte a ActiveDirectory. Isto significa que ele pode se integrar a redes gerenciadas pela família Windows 2000, identificando-se como um servidor membro e autenticando usuários usando LDAP/Kerberos. Outras novidades, incluindo o suporte a unicode, nova autenticação, o surgimento do comando net (similar ao que existe no Windows) e muito mais você encontra no anúncio de lançamento."

    Contudo, você pode ter problemas com os caracteres, anti-vírus, lixeira e outras coisas no novo SaMBa, no qual irei tentar passar algumas dicas rápidas, porém precisas (como uma espadada do Ninja TuxKiller :)

    Os artigos anteriores sobre o SaMBa 2.x continuam disponíveis para consulta, e provavelmente você precisará consultar algum deles


    Arrumando os caracteres

    Ainda bem que agora temos suporte ao Unicode e não precisamos arrancar a força o UTF do sistema para que os caracteres fiquem normais, como era feio anteriormente.

    Faça um teste: Pelo windão, crie um arquivo chamado 'çççããã' e veja no Linux como ele ficou. Agora pense na possibilidade de tentar recuperar um backup do mesmo via linha de comando. Meio difícil, né?

    A forma de dizer para o SaMBa que nós somos da Ilha de Vera Cruz e falamos Tupiniquim mudou do SaMBa 2.x para o 3.x, agora é usado:
    unix charset = iso8859-1
    display charset = cp850

    Isso, logicamente levando em consideração que suas estações Windows também falem Português! Caso tenha dúvidas verifique o autoexec.bat da estação, lá no meio daquela tranqueiralhada vai ter o tal o 850.


    Lixeira

    A lixeira também mudou uma série de coisas. Mas ela continua sendo um módulo VFS (Virtual File System).

    Insira o bloco abaixo no seu [global] para fazer efeito em todos os compartilhamentos, ou apenas em um específico.
    recycle:exclude = *.tmp *.temp *.o *.obj ~$*
    recycle:keeptree = True
    recycle:touch = True
    recycle:versions = True
    recycle:noversions = .doc|.xls|.ppt
    recycle:repository = .recycle
    recycle:maxsize = 10000000
    vfs objects = recycle

    Aprenda mais sobre os tais VFS aqui: http://info.ccone.at/INFO/Samba/VFS.html

    Se tudo der certo, depois do 'reload' no SaMBa, o arquivo apagado via Windows irá parar em, por exemplo, f:\.recycle


    Manutenção da Lixeira

    Se sua lixeira estiver funcionando corretamente, em pouco tempo ela vai lotar até acabar o espaço em seu servidor :) Para evitar isso, agende no seu crontab:
    00 18 * * 1-5 find /dados/.recycle/ -type f -mtime 15 -exec rm -rf {} \;

    Cuidado com o comando, que apagará os arquivos que estão na lixeira há mais de 15 dias, de segunda a sexta às 18:00!


    Anti-vírus

    Esse é outro cara que mudou, e, como a prima Lixeira, ainda é um módulo VFS.

    No Conectiva 10 com o pacote 'clamav' e 'samba-vscan-clamav' instalados e o serviço 'clamd' rodando, insira as linhas abaixo na seção [global] para que o danado atue em todos os compartilhamentos ou insira apenas onde você queira que anti-vírus funcione.
    vfs object = vscan-clamav
    vscan-clamav:config-file = /etc/samba/vscan-clamav.conf
    Vale-se notar que o ClamAV não tem permissão de entrar no diretório $HOME dos usuários ;)

    Dê uma afinada no seu 'vscan-clamav.conf' e tome cuidado com a perda de desempenho, principalmente com arquivos grandes em rede 10/10 :)

    A opção 'verbose file logging' pode ser inicialmente definida para yes, para você acompanhar em /var/log/messages o que está acontecendo no seu servidor.

    Recomendo que defina a opção 'max file size' para '10000000' que é algo próximo a 10 MB, senão o windão pode parecer travado quando o usuário tentar abrir aquele Service Pack de 200 MB que está no servidor, e fora que a sua CPU vai ficar um tempinho com 100% de utilização.

    Recomendo também que a opção 'infected file action' seja definida para 'quarantine' (o diretório padrão é /var/lib/samba/quarantine)

    Para testar, use o Eicar especialmente desenvolvido para essa finalidade.

    Se não funcionar com o reload, apele para o restart (do samba e do clamd).

    Se for usá-lo em conjunto com a lixeira, faça uma única vez:
    vfs object = recycle, vscan-clamav


    Segurança!

    Esse, na minha opinião, foi uma grade mancada "dos caras" do SaMBa, na minha opinião.

    Ao levantar o SaMBa em um gateway (com duas placas de rede), é conveniente que somente a rede interna tenha acesso aos arquivos, concorda? Isso era feito com a linha:
    interfaces = eth1

    Mas, sei lá porque cargas d'agua, agora também é necessário que a linha abaixo ativada (por padrão ele é 'no')
    bind interfaces only = Yes

    Aí sim, você restringe o acesso apenas ao pessoal da eth1 (caso essa seja sua LAN). Mas, você pode ter problemas caso use autenticação do SQUID integrada com o SaMBa. Aí a autenticação começa a falhar, mesmo liberando o 'lo' (loopback) junto a eth1.

    Você terá que resolver a nível de firewall mesmo. Use-o também se quiser redundância :)
    iptables -A INPUT -p tcp -i eth0 --dport 137:139 -j ACCEPT
    iptables -A INPUT -p udp -i eth0 --dport 137:139 -j ACCEPT
    iptables -A INPUT -p tcp -i eth1 --dport 137:139 -j REJECT
    iptables -A INPUT -p udp -i eth1 --dport 137:139 -j REJECT


    Impressora

    No Conectiva 10, os "hacks" necessários funcionam que é uma beleza! Testei com uma HP 1200 e foi tudo ok! Certifique-se primeiro, que a impressora imprime localmente (dã...) antes de tentar colocá-la no SaMBa (parece óbvio, mas tem cara um por ae....)

    No [global]:
    printcap name = cups
    load printers = yes
    printing = cups

    Nos [share's]:
    [print$]
    path = /var/lib/samba/drivers
    guest ok = yes
    browseable = yes
    read only = yes
    write list = root

    [printers]
    comment = All Printers
    path = /var/spool/samba
    browseable = no
    # Defina 'public = yes' para permitir que o usuário 'convidado' a imprimir
    guest ok = no
    writable = no
    printable = yes
    printer admin = root


     
    Bloqueando extensões

    Isso continua igual, e é bem legal fazê-lo :)
    veto files = /*.mp3/*.wmv/*.wma/*.ogg/


     
    Resolvendo problemas

    Meu professor de Integradas, na universidade, mandava a gente conversar com o exercício... agora eu entendo o que ele quis dizer, e digo a vocês: Conversem com o SaMBa!!!! :)

    Caso algo dê errado, corra seu terminal para /var/log/samba e veja os arquivos alterados recentemente. Olhe minuciosamente cada detalhe, se necessário, delete todos e de um 'reload' no SaMBa para ver de novo qual é o problema. Eu costumo fazer assim:

    # cd /var/log/samba
    # ll -tr

    Assim, os arquivos que foram alterados por último aparecem em baixo. Use o 'tail' para acompanhar em tempo real o que está acontecendo:

    # tail -f log.smbd
    (aperte crtl+c para fechá-lo)

    Caso necessário, delete tudo de novo, aumente no smb.conf o 'debug level' para '=3' (ou mais ainda!), reload no samba e veja de novo o que ocorre. Caso não entenda nada, olhe de novo. Repita esse passo até entender algo!!!! (heheheh)

    Claro, consultem também o oráculo (google.com) copiando e colando trechos do log... Vai na fé (isso dizia meu professor de Prolog) que você consegue resolver o pepino ;)

     
    Exemplo prático 1: Compartilhando arquivos

    Um pequeno estudo de caso para ilustrar essa ocasião:

    Em lindo dia, chovendo pra caramba e um baita trânsito em São Paulo, um cliente me acorda no buzão dizendo que o Windão 2000 dele travou as quatro rodas e o bicho não liga mais. Depois de uma longa viajem até o local, realmente, o windão tava ruim das pernas, nem em modo de segurança ele entrava! (ahhhh, que novidade!!!) =)

    O W2k (vou chamá-lo dessa forma a partir de agora) apenas compartilhava uma pasta com uma galera, sem permissão nem restrição nenhuma... e ele era também os servidor do Norton Corporate da galera.

    Então fiz o seguinte: Levantei o SaMBa no meu servidor de Internet e e-mail que tinha ao lado rodando Kurumin, joguei os arquivos para lá usando um Live-CD antigo também do Kurumin, deixei o mesmo NetBIOS do defunto, startei o SamBa, a galera acordou e voltou a trabalhar sem saber de nada... hehehhe... enquanto isso, mais uma vez, eu cometi o "seppuku" (suicídio dos samurais :), iniciado pelo comando 'fdisk', logo depois 'format c:' que vocês devem bem conhecer...

    A parte que interessa, é a seguinte:

    Depois de instalado no Kurumin, o instalador faz algumas perguntas, como por exemplo se deseja senhas criptografadas. Responda que SIM caso trabalhe com algum Windows superior ao 95 (provavelmente sim!!!)

    Abrindo o smb.conf dele, deixei como mostra o setup abaixo, e vou comentando melhor ao longo do artigo as principais opções.

    ##########################################
    # Arquivo de configuração do SaMBa
    # Por Tiago Cruz - http://linuxrapido.org
    # Em 05/01/2005
    ##########################################
    [global]
        # Grupo, nome do servidor e comentário
        # que aparece no ambiente de rede
            workgroup = GRUPO
            netbios name = SERVIDOR
            netbios aliases = SERVIDOR
            server string = Backup dos Vendas

        # Acentuação
        unix charset = iso8859-1
            display charset = cp850

        # Tenho duas placas de rede, a eth0 é internet
            interfaces = eth1
            bind interfaces only = Yes

        # Aqui! Somente compartilha!
            security = SHARE

        # Nem esquenta com o restante por enquanto...
        obey pam restrictions = Yes
            passdb backend = smbpasswd, guest
            passwd program = /usr/bin/passwd %u
            passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n .
            syslog = 0
            log file = /var/log/samba/log.%m
            max log size = 1000
            socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
            dns proxy = No
            panic action = /usr/share/samba/panic-action %d
            invalid users = root
            include = /etc/samba/dhcp.conf

    # 'dados' é o nome que o pessoal estava acostumado a procurar no ambiente
    # de rede (\\servidor\dados)
    [dados]
            comment = Dados do pessoal
            path = /dados
            force user = nobody
            force group = nobody
            force create mode = 0777
            force directory mode = 0777
            guest only = Yes

    Alguns detalhes importantes:

    Bom, precisei criar a pasta /dados e dar permissão para todos nela:

    # mkdir /dados # chown nobody.nobody /dados -R # chmod 777 /dados -R

    Verifique também se o usuário 'nobody' existe em seu sistema, e veja que, os arquivos criados dentro do servidor serão acessíveis para todos os usuários devidos devido ao '777'

    Veja que tomei o cuidado de deixar o mesmo nome que o servidor tinha e o mesmo nome do compartilhamento!

    Nota aos desatentos: Tudo isso foi feito sem nenhum boot no servidor de internet e e-mail =)

    Umas horas depois, depois de tudo ok com o W2k de volta ao ar, com o Nortão instalado, parei de novo os usuários e troquei o "netbios name" do SaMBa para que ele não se batesse com o Wk2 (acredite: é bem mais fácil trocar o do samba! Se o windão tiver Active Directoy então....), voltei os arquivos e mais um dia com o final feliz! :)

    Nota: O windão teve que continuar lá devido ao Nortão Corporate >:(

     
    Exemplo prático 2: PDC da rede

    Nesse outro cenário, agora vamos montar um cara que será o PDC (Personal Digital Cellular? Não!!! Primary Domain Controller!) da rede, validando usuário e senha, rodando script de logon, sincronizando horário com as estações velhas sem baterias na BIOS :), restrição de acesso e tudo mais!! :)

    O .conf pode ficar mais ou menos assim:

    #####################################
    # Arquivo de configuração do SaMBa
    # Por Tiago Cruz e Bruno
    # Configurado para SHARE em 05/12/04
    # Configurado para PDC em 07/01/05


    [global]
        # Grupo, nome e comentário
        workgroup = EMPRESA
        netbios name = SERVER
        server string = Servidor de Dados

        # Arquivo de log
        log file = /var/log/samba/%m.log
        # Tamanho maximo do mesmo
        max log size = 50
        # Nivel de detalhamento dos logs
        debug level = 2

        # Aqui eu alterei o 'security = SHARE' para o abaixo
        security = USER

        # Necessário para Windows >= 98
        encrypt passwords = yes

        # Senha criptografada :)
        smb passwd file = /etc/samba/smbpasswd
        username map = /etc/samba/smbusers

        # Isso tem a ver com o desempenho do servidor
        socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192

        # Essa linha é a fodona que coloca estações 2k para sambar!
        add machine script = /usr/sbin/adduser -n -r -g machines -c "Samba machine" -d /dev/null -s /bin/false %u
        passdb backend = smbpasswd

        # Somente para a LAN
        interfaces = eth0
        bind interfaces only = yes

        # Acentos pt_BR
        unix charset = iso8859-1
        display charset = cp850

        # Opcoes para PDC da rede
        domain logons = Yes
        os level = 100
        preferred master = Yes
        domain master = Yes

        # Arquivo de lote que sera executado no logon
        logon script = todos.bat

        # Para não criar profile so server
        logon path =

            idmap uid = 16777216-33554431
            idmap gid = 16777216-33554431
            template shell = /bin/false
            winbind use default domain = no

    [homes]
        comment = Diretorio do Usuario
        browseable = no
        writable = yes

    [netlogon]
        comment = Network Logon Service
        path = /home/netlogon
        guest ok = yes
        write list = tiago, bruno, roger


    [dados]
        comment = Drive de dados do Servidor
        path = /dados/empresa
        writable = yes

    Nessa configuração do [dados], diferente da anteior, o que o usuário criar dentro do servidor vai ser dele, obedecendo o 'umask' do seu servidor Linux. No Kurumin, ele é 022 o que significa que o diretório criado pelo mesmo terá permissão '744' ou seja: 'usuário=rwx, grupo=rx, outros=rx'

    Logo, outros usuários não modificação suas pastas ou seus arquivos! Só para lembrar: read = 4, write = 2 e execute = 1. Detalhes no 'man chmod' :)

    Outras pontos importantes a comentar:

    'add machine script': Essa linha já vem no Conectiva 10, facilitando coisa de 300% o processo de colocar uma máquina com 2000 ou XP na rede pois ela cria a conta de máquina "automagicamente". Não acredita? De uma lida na seção "Colocando o WinXP na rede" do meu artigo "Samba como PDC da rede".

    'logon script': Arquivo de lote que as estações irão executar ao logar no PDC. Pode-se usar variáveis, como por exemplo %m ou %u para separar os scripts por usuários ou por maquinas (não necessariamente nessa mesma ordem, detalhes na documentação :)

    A pasta /home/netlogon deverá ser criada, e o arquivo 'todos.bat' lá deverá existir, ** criado a partir de uma estação windows** para manter a quebra de linhas, ou convertido posteriormente com o utilitário 'unix2dos'. Um exemplo do todos.bat:
    @echo off
    net use F: \\server\share
    net use h: /home
    net time \\server /set /yes
    regedit /s f:\caminho\arquivo.reg

    Veja que você pode mapear o diretório HOME do usuário, sincronizar a data com o servidor, e até mesmo forçar a leitura de um arquivo de registro!!! Legal né? Se você colocar um 'deltree /y c:*.*' deve funcionar também, heheheh 8-)

    'os level': Aumente esse número para que o SaMBa seja realmente o PDC da rede. Acompanhe nos log's, e verá que a cada inicialização ele procura por quem é mais poderoso do que ele, e, como no Highlander (só pode haver um :) ele detona o cara e assume o posto de soberano. Acha que eu estou louco? Então olhe você mesmo nos log's... Abaixe esse número para deixar uma estção Windows ganhar... hehehe

    'logon path': Deixe-o em branco se quiser evitar em em todo login/ logoff a estação windows 2k/XP copie todo o seu perfil para o servidor (demora um bocado....)

    Bom, agora que temos o PDC, precisamos... de usuários para logar nele!!!

     
    Adicionando/ Removendo usuários

    Continua a mesma coisa: Necessário usuário cadastrado e válido no Linux e no SaMBa.

    # useradd tuxkiller
    # passwd tuxkiller
    # smbpasswd -a tuxkiller

    Note que esse usuário não terá uma shell válida, sendo impossibilitado de fazer logon via ssh/ ftp!

    O que mudou efetivamente, é que o stdin do smbpasswd mudou. "O que quer dizer isso", você pergunta.

    Antes, um simples:

    # smbpasswd -a login senha

    Era capaz de cadastrar um fulano no SaMBa sem ter que digitar e confirmar a senha dele. Imagine esse processo x100 usuários, que legal vai ser para você, responsável pela migração...

    Agora, no SaMBa 3.x tive que bolar algo assim:

    # ( echo senha ; echo senha ) | smbpasswd -s -a login

    "Para que isso??" você me pergunta! Para automatizar em um script, uai!

    Eu achei, muito tempo atrás, um script na NET que adicionava e removia usuários no Linux, dei uma mexida no script e agora ele faz o serviço completo: Adiciona no Linux e no SaMBa, digitando uma única vez. Tem até uma cara mais amigável para o usuário final, tanto é que eu configurei o sudo em um conectiva para que um usuário mortal pudesse fazer o serviço sem a minha intervenção!

    Para saber mais sobre o sudo, consulte esse outro artigo nosso: Controle o acesso a Internet e diminua sua conta de telefone =)

    Segue o danado logo abaixo. O 'changelog' dele não está aí a toa, é para ler e configurar como é solicitado.

    Como em toda GPL, só peço que mantenha os créditos e caso faça alguma modificação interessante no código, que mande-o de volta para mim. Assim eu atualizo aqui e todo mundo fica feliz ;)

    #!/bin/bash
    #######################################################
    # Funcionamento básico escrito por leof - www.leofc.tk
    # Adicionado recursos para o SaMBa por
    # Tiago Cruz - tiagocruz@linuxrapido.org
    # Adicionar/Remover usuários no Linux e no SaMBa
    # Versão 0.1 criada em 10/10/2003
    # -----------------------------------------------------
    # Versão 0.2 em 13/10/2003 por Tiago Cruz
    # Senha do usuário criada junto com a o SaMBa, mas
    # necessita do pacote libgii
    # -----------------------------------------------------
    # Versão 0.3 em 18/01/05 por Tiago Cruz
    # Adicionar com o visudo (pacote sudo) para um usuário
    # mortal poder criar e deletar o povo :)
    # usuario ALL=(ALL) NOPASSWD: /usr/sbin/useradd
    # usuario ALL=(ALL) NOPASSWD: /usr/sbin/userdel
    # usuario ALL=(ALL) NOPASSWD: /usr/bin/smbpasswd
    # usuario ALL=(ALL) NOPASSWD: /usr/bin/passwd
    #######################################################

    Principal() {
        clear
        dir="Diretório: `pwd`"
        kernel="Kernel: `uname -r`"
        arquitetura="Arquitetura: `uname -m`"
        echo "+-------------------------------------------------+"
        echo "| Utilies for LinuX |"
        echo "+-------------------------------------------------+"
        echo "| Adicionar/ Remover usuários no SaMBa e no Linux |"
        echo "+-------------------------------------------------+"
        echo "| Escrito por: |"
        echo "| Tiago Cruz - www.linuxrapido.org |"
        echo "+-------------------------------------------------+"
        echo
        echo $dir
        echo $kernel
        echo $arquitetura
        echo
        echo "Opções:"
        echo "1. Adicionar um usuário"
        echo "2. Deletar um usuário"
        echo "3. Sair"
        echo -n "Entre com a opção desejada => "
        read opcao
        echo
        case $opcao in
            1) Adicionar ;;
            2) Deletar ;;
            3) exit ;;
            *) "Opção desconhecida." ; echo ; Principal ;;
        esac
    }
    Adicionar() {
        echo -n "Entre com o login do usuário: "
        read login
        echo -n "Entre com o nome completo do usuário: "
        read nome
        #echo -n "Entre com o depto do usuário: "
        #read depto
        echo -n "Entre com a senha do usuário: "
        stty -echo
        read senha
        stty echo
        echo
        echo "Mensagens do sistema: "
        echo
        sudo /usr/sbin/useradd $login -c "$nome" -s /bin/false; echo "$senha" | sudo /usr/bin/passwd $login --stdin
        echo
        ( echo $senha ; echo $senha ) | sudo smbpasswd -s -a $login
        #smbpasswd -a $login $senha
        echo
        echo "Pressione qualquer tecla para continuar..."
        read msg
        Principal
    }
    Deletar() {
        echo -n "Entre com o login do usuário a deletar: "
        read login
        echo
        echo "Mensagens do sistema: "
        echo
        sudo /usr/bin/smbpasswd -x $login
        echo
        sudo /usr/sbin/userdel $login
        echo
        echo "Pressione qualquer tecla para continuar..."
        read msg
        Principal
    }
    Principal


     
    Estação 9x/Me

    Recomendo fortemente que começe por aqui que é bem mais fácil! Basta alterar a estação para fazer parte de um domínio, reiniciar e etc... fique esperto nos log's para entender o que está acontecendo. Depois que estiver tudo ok, passe para as NT-like.

     
    Estação 2000/XP

    Elas são chatas, mas basta seguir as dicas do Edinho em SaMBa como PDC: Enfrentando Problemas e Aplicando Soluções! que não tem erro. Como disse antes, o processo melhorou muito e não é mais necessário editar o registro do windão, graças ao SaMBa :)

    Resumidamente, não acesse o servidor antes de ingressar em domínio, senão o XP vai reclamar que não pode fazer duas conexões com o mesmo usuário no mesmo servidor, algo assim. Para contornar isso, reinicie a máquina ou mande um 'net session /d' no XP e tente de novo.

    O root deverá estar cadastrado no SaMBa (smbpasswd -a root)

    Lembre-se que o novo usuário vai "perder" os e-mails, ícones, papel de parede e outras coisas, porque será criado um novo usuário no windão. Portanto, trate de backupear essas coisas em um local acessível para posterior importação.


    Usuário administrador

    Nos NT-like (NT, 2000, XP e 2003) você irá perceber que seu usuário é um mísero mortal e que nada pode fazer no sistema. Talvez você precise instalar algum programa, então precisará tornar seu usuário um administrador na máquina NT-like.

    Para isso, o --d@niel-- postou umas dicas muito interessantes que se resume em:

    1.   Criar um grupo de administradores

      # groupadd god

      Depois, via webmin ou alguma ferramenta de administração de usuários como o kuser, ou diretamente no arquivo de grupos, adicione os usuários que serão administradores. Exemplo de uma entrada no /etc/group:

      god:x:1001:tiago,tuxkiller

    2.   Mapeie o grupo "Domain Admins" do Samba para o seu grupo

      # net groupmap modify ntgroup="Domain Admins" unixgroup=god

      Isto associará o grupo "Domain Admins" (Administradores do Domínio) ao grupo "god" (troque pelo que você definiu no passo 1). Verifique se a saída do 'net groupmap list' possui algo semelhante a:

      Domain Admins (S-1-5-21-1518627310-3038261392-4081985781-512) -> god

      E verifique se esse "Domain Admins" não está duplicado. Se estiver, delete e faça de novo senão vai dar uma confusão tremenda :-)

    Se precisar de mais ajuda, consulte o documento Group Mapping MS Windows and UNIX.

     
    Considerações finais

    Espero que este documento ajude alguém como vem me ajudado, afinal, é uma ótima coletânea de quase 1 ano acumulando dicas e resolvendo problemas nessa nova versão do software.

    Caso você tenha alguma contribuição para fazer ao este documento, alguma melhoria, correção de português (deve ter vários...), elogio ou algo do tipo, por favor, sinta-se a vontade em me mandar um e-mail (tiagocruz AT linuxrapido.org)

    Agora, caso você tenha alguma dúvida, por favor, não me mande e-mail em particular, e sim, poste no fórum para que outras pessoas ajudem a resolvê-la também.

    Infelizmente não posso me recordar todos que me ajudaram, de uma forma ou outra, a elaborar este documento, mas indico cegamente o FAQ do meu amigo ZAGO que muita coisa daqui saiu de lá. Também indico como leitura "extra-curricular" o Manual Oficial do SaMBa para que tudo dê certo no final.

    Este material é livre para leitura, uso, redistribuição ou modificação, entre outros direitos, conforme definido na licença livre GNU Free Documentation License.

    » Gostou do texto? Veja nossos livros impressos

    ... ou use a busca para localizar outros artigos relacionados:

cb
Livros de Carlos E. Morimoto HOME