http://www.zago.eti.br/samba/samba-cl10upd.txt Tuturial simplificado pra instalar e configurar o servidor Samba no CL10, com anti-virus e adicionar automaticamente estações windows da familia NT, 2003, XP e etc... Tutorial para configurar as estações Windows XP como cliente do Samba. http://www.zago.eti.br/samba/cliente-winxp-pro.html Veja mais detalhes sobre servidores Samba, ferramentas, artigos, tutoriais, FAQ e mais ajuda em: http://www.zago.eti.br/samba/A-menu-samba.html Pagina principal em: http://www.zago.eti.br/menu.html FAQ e artigos sobre Linux Use CTRL+F para refinar a pesquisa. Linha de: **************** separa mensagens ou tópicos. ******************************************************* Na elaboração deste tutorial não foram utilizadas ferramentas graficas como webmin, linuxconf, cups ou swat, todos os comandos e configurações foram na linha de comando, a partir do KDE de uma maquina da rede, com dois terminais (konsole), conectados ao servidor via ssh, um pra comandos no prompt e outro pro editor "vi" pra editar, copiar e colar. Pra saber mais sobre estas ferramentas, veja em: http://www.zago.eti.br/vi.txt http://www.zago.eti.br/ssh/ssh.txt http://www.zago.eti.br/cp.txt O modelo de smb.conf criado nesta configuração está disponivel pra download, pra poupar trabalho pode substituir o original da instalação por este, (faça copia do original), mesmo fazendo a copia precisa criar diretórios, usuários e alguns ajustes no smb.conf. Este smb.conf está configurado pra ter lixeira no servidor, clientes windows 98, ME, 2000, 2003 e XP, configurado pra aceitar perfil móvel gravado no servidor Samba e etc.. Neste tutorial tem tópicos especificos pra configurar cada versão do windows com cliente Samba, pra configurar as estações, procure e siga as instruções do tópico especifico pra cada versão windows. ******************************************************** INSTALAÇÃO do servidor Samba. Instalação com perfil: Servidor SAMBA Neste perfil requer os CD 1 e 2, na instalação tem uma tela pra informar quais os CD estão disponiveis, sugiru selecionar os 3 CD, vai facilitar em um eventual instalação de futuros pacotes neste servidor. Com este perfil já instala os pacotes samba: [zago@serv zago]$ rpm -qa | grep samba samba-common-3.0.4-62748cl samba-winbind-3.0.4-62748cl samba-server-3.0.4-62748cl task-profile-sambaserver-10-61815cl samba-clients-3.0.4-62748cl samba-swat-3.0.4-62748cl samba-vfs-3.0.4-62748cl OBS. Em instalações efetuadas com perfil diferente poderá faltar algum pacote, veja quais os pacotes relacionados ao samba, execute esta linha de comando: apt-cache search samba Pra instalar pacotes adicionais, execute: apt-get install Por exemplo, pra converter uma instalação com perfil "desktop corporativo", pra servidor samba precisa instalar pacotes adicionais, como desktop são instalados estes pacotes: [root@faqcl10 zago]# rpm -qa | grep samba samba-common-3.0.4-62748cl samba-clients-3.0.4-62748cl samba-winbind-3.0.4-62748cl Pra utilizar esta instalação também com servidor Samba precisa intalar mais estes pacotes: apt-get install samba-server task-profile-sambaserver Prontinho, a linha de comando acima aplicada em uma instalação com com perfil "desktop corporativo" passa a ter os mesmos pacotes samba que são instalados no perfil "servidor Samba", esta maquina pode ser utilizada como desktop e servidor samba ao mesmo tempo, isto não é recomendavel, mas pra pequenas redes, pra testes ou outra razão qualquer pode ser uma solução bem prática, basta seguir este tutorial pra completar a configuração. ******************************************************** Configurando a rede: Não prossiga com a instalação enquanto as maquinas não responder ao ping entre elas, ajuda pra configurar a placa de rede, veja no FAQ: http://www.zago.eti.br/placa_ne.txt ******************************************************** RESUMO DE COMANDOS pra configurar o Samba: Cosiderando que já instalou os pacotes do Samba e a rede funcionando, ping alcançando as maquinas da rede e entre estações e servidor samba. Execute ou copie e cole em um terminal as linhas abaixo: chkconfig smb on cd /etc/samba mkdir /home/netlogon mkdir /home/profiles chmod -R 777 /home/profiles service smb restart # criar o usuário zago (Linux e Samba), digite a senha quando solicitado adduser zago passwd zago smbpasswd -a zago Ou pra simplificar, linhas pra copiar e colar todas de uma vez, usuario=zago senha=minhasenha adduser $usuario echo $senha | passwd --stdin $usuario ( echo $senha ; echo $senha ) | smbpasswd -s -a $usuario ## Configure o /etc/samba/smb.conf, copie de outra instalação ou utilize este modelo pra comparação ou substituir o original da configuração: http://www.zago.eti.br/samba/smb.conf-cl10upd.txt comando pra importar smb.conf-cl10upd.txt pro "vi" (veja cp.txt) mv /etc/samba/smb.conf /etc/samba/smb.confori vi /etc/samba/smb.conf :r !lynx -dump http://www.zago.eti.br/samba/smb.conf-cl10upd.txt Prontinho, servidor no ar!, vá pra uma estação windows e siga as dicas pra configurar a estação pra fazer login no servidor samba, Pra quem está fazendo a primeira instalação do Samba o ideal é usar uma estação win98 por ser mais fácil de configurar, depois que funcionar configure estações com outras versões de windows. Pra configuar estação win98 procure neste documento pelo tópico: COFIGURAR A ESTAÇÃO WIN98 e ME. As demais versões do windows requer mais comandos no servidor samba pra incluir as estações, continue consultando este documento e demais arquivos do FAQ no diretório samba, procure pelo nome do arquivo associado à versão do windows instalado nas estações. ******************************************************** E X P L I C A N D O : Voce pode copiar o smb.conf de outra instalação, caso não tenha um, pode editar o smb.conf da instalação pra fazer as alterações necessárias. Também pode configuar o samba com ferramentas gráficas, como webmin, swat e outras, tudo em ambiente gráfico, fácil e prático. Pode fazer a configuração inicial atraves destas ferramentas gráficas pra criar um arquivo de configuração personalizado e depois editar este smb.conf manualmente pra fazer alterações a seu modo. Sempre faça copia antes das alterações. cp /etc/sanmba/smb.conf /etc/samba/smbcopia2.conf Também pode utilizar este modelo configurado conforme este tutorial, basta substituir o smb.conf da instalação por este, depois que testar o funcionamento do samba voce já sabe como fazer e fica mais fácil continuar com as alterações pra personalizar a configuração de acordo com a tua rede. comando pra importar smb.conf-cl10upd.txt pro "vi" (veja cp.txt) :r !lynx -dump http://200.204.198.164/zago/samba/smb.conf-cl10upd.txt Neste endereço tem o smb.conf com as alterações indicadas neste tutorial, caso tenha feito a copia, o grupo de trabalho está configurado pra ser MYGROUP, altere para o grupo de trabalho da tua rede, os demais parametros é facultativo, ajuste a seu modo, de qualquer forma precisa criar os diretórios e usuários. Mesmo que não faça copia do meu smb.conf, sempre é bom manter uma copia do original, linha de comando pra fazer copia do original: cp /etc/samba/smb.conf /etc/samba/smb.conf-ori Pra emergencia mantenho uma copia do smb.conf original da instalação do cl10, disponivel na internet pra quem precisar pra copiar ou comparar. comando pra importar smb.conf-ori-cl10 pro "vi" (veja cp.txt) :r !lynx -dump http://200.204.198.164/zago/samba/smb.conf-ori-cl10 O arquivo de configuração do samba fica em: /etc/samba/smb.conf, entre do diretório onde está o smb.conf cd /etc/samba Edite o arquivo /etc/samba/etc.conf: Use o editor de sua preferencia, exemplo com "vi" vi /etc/samba/smb.conf PRESSIONE INS para entrar no modo edição e use as setas para navegar no texto, apague com DEL. Na seção [global] o grupo de trabalho vem assim: workgroup = MYDOMAIN Altere MYDOMAIN para o grupo de trabalho da tua rede, por exemplo: workgroup = MYGROUP Quando terminar as alterações, pra salvar e sair pressione a tecla ESCAPE pra entrar em modo comando e depois SHIFT: + wq :wq Como são muitas alterações pra editar, pra facilitar utilize uma ferramenta gráfica, script ou copie uma configuração pronta pra depois terminar a configuração manualmente, vai aqui uma dica pra comparar dois smb.conf, as linhas abaixo retiram as linhas em branco, as comentadas e salva em outro arquivo a diferença entre os dois arquivos, antes de colar edite pra usar o caminho e nome dos arquivos disponiveis na sua instalação. egrep -v "^#|^$" /etc/samba/smb.conf > /tmp/smb1 egrep -v "^#|^$" /etc/samba/smb.confori > /tmp/smb2 diff -y --suppress-common-lines /tmp/smb1 /tmp/smb2 | tr -d '\011' > /tmp/smbdif less -Nis /tmp/smbdif Prontinho, as linhas diferentes entre os dois smb.conf estão em /tmp/smbdif crie os diretórios para os compartilhametos definidos no smb.conf neste exemplo precisa criar os diretórios: mkdir /home/netlogon mkdir /home/samba mkdir /home/profiles chmod 777 /home/profiles O sub-diretório profiles e as permissões sobre ele são exclusivas pra redes que tenha estações rodando Windows w2k, XP e 2003. Criar usuários pro Linux e Samba: Por exemplo, pra criar o usuário zago, no servidor, abra um terminal e como root crie o usuário pro Linux e defina a senha: adduser zago passwd zago Somente depois adicione este usuário no samba, exemplo: smbpasswd -a zago Retorna: [root@serv samba]# smbpasswd -a zago New SMB password: Retype new SMB password: startsmbfilepwent_internal: file /etc/samba/smbpasswd did not exist. File successfully created. Added user zago. A mensagem acima, ocorre somente quando adicionar o primeiro usuário do samba, pra os demais usuarios que adicionar o resultado será semelhante a: [root@serv tmp]# adduser anderson [root@serv tmp]# passwd anderson Changing password for user anderson. New password: Retype new password: passwd: all authentication tokens updated successfully. [root@serv tmp]# smbpasswd -a anderson New SMB password: Retype new SMB password: Added user anderson. Após cada comando, quando solicitado informe a senha pro usuário. Ou se preferir pode alterar nas linhas abaixo o nome de login e senha, depois é só copiar e colar ou acrescentar em scripts. # criar o usuário zago (Linux e Samba) usuario=zago senha=minhasenha adduser $usuario echo $senha | passwd --stdin $usuario smbpasswd -a $usuario criar usuários pro Linux e Samba, use o mesmo nome de login pro Linux e samba, informe a senha quando solicitado: Pro Linux: adduser seulogin passwd seulogin Pro Samba: smbpasswd -a zago Iniciar o Samba: service smb start Reiniciar o Samba após alterações no smb.conf: service smb restart ativar a inicialização do samba junto com o boot do sistema, execute esta linha de comando: chkconfig smb on Vá até o tópico deste tutorial que configura a estação windows pra fazer login no servidor Samba, tem um tópico pra cada versão windows, depois de configurada, precisa reiniciar a estação pra fazer o login e acessar os compartilhamentos pelo ambiente de rede, estará disponivel os compartilhamentos tmp, netlogon, profiles e o home do usuário que efetuou login. Caso falhe o login, reveja as configurações, conexões de rede e todo o processo, caso persista os problemas, uma boa opção é copiar o smb.conf conforme indicado, criar os dirtorios e usuários conforme indicado neste tutorial e conectar as duas maquinas por um cabo crossover, isto ajuda na solução de problemas tais como conflitos com outras maquinas da rede ou problemas de conexão, depois que esta configuração funcionar voce já sabe o que fazer. Ou faça os ajustes a seu modo e crie os diretórios conforme os compartilhamtos que criou no smb.conf. ******************************************************** LIXEIRA NO SERVIDOR SAMBA. acrescente estas linhas no final do global do smb.conf que a lixeira passa a funcionar automaticamente pra todos os compartilhamentos. ;recyclebin options 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 create mask = 0777 directory mask = 0777 vfs objects = recycle Faça testes, na estação windows, copie arquivos pra um compartilhamento no servidor samba, depois apague alguns arquivos, pra ver os arquivos apagados, acesse o compartilhamento pelo Linux e execute ls -la, na listagem aparece um diretório oculto .recycle, dentro dele os arquivos apagados, pra visualizar estes arquivos a partir das estações windows, basta configurar o windows pra visualizar todos os arquivos, isto não precisa explicar porque usuários windows já sabem onde fica. veja mais sobre a lixeira (.recycle) no servidor Samba: http://www.zago.eti.br/samba/lixeira.txt ******************************************************** Criar um compartilhamento com tudo liberado pra todos. exibir acentuação correta nos dois sistemas. editar o /etc/samba/smb.conf e incluir no smb.conf: [supersoft] comment = sistemas path = /home/supersoft public = yes writable = yes printable = no write list = @staff force create mode = 0777 force directory mode = 0777 create mask = 0777 directory mask = 0777 criar o diretório: mkdir /home/supersoft chmod -R 777 /home/supersoft na estação win, crie arquivos e diretórios e veja as permissões destes arquivos com ls -la: [root@serv root]# ls -la /home/supersoft/ total 20 drwxrwxrwx 4 root root 4096 2004-09-15 11:37 . drwxr-xr-x 6 root root 4096 2004-09-15 11:30 .. drwx------ 2 zago zago 4096 2004-09-15 11:37 .recycle drwxrwxrwx 2 zago zago 4096 2004-09-15 11:33 Nova pasta -rwxrwxrwx 1 zago zago 6 2004-09-15 11:24 ação.txt o arquivo ação não foi criado com nome igual indicado na estação win98, acrescente no smb.conf estas configurações: Tentativas de erro e acerto, depois de muitas, a que funcinou pra exibir arquivos acentuados corretamente tanto no Linux e windows foi esta: [root@serv root]# cat /etc/sysconfig/i18n LANG=pt_BR.iso8859-1 SYSFONT=lat1u-16 SYSTERM=linux LC_COLLATE=POSIX no /etc/smb.conf unix charset = iso8859-1 display charset = cp850 ******************************************************** COFIGURAR A ESTAÇÃO WIN98 e ME. Na estação Win98 configure em propriedades do ambiente de rede: No Desktop da estação win98 click com botão auxiliar em embiente de rede click em Propriedades Na aba Configuração, selecione: Cliente para redes Microsoft click em Propriedades marque "Efetuar logon no dominio do Windows NT preencha a caixa "Dominio do NT" com o grupo de trabalho MYGROUP OK click na aba identificação altere o grupo para MYGROUP "Grupo de Trabalho: MYGROUP Ok até fechar as janelas e aguarde até pedir para reiniciar o computador No proximo boot na tela de login informe o usuario, senha e dominio: Onde: usuário -> seja um usuário cadastrado no samba senha -> a senha deste usuário pro samba dominio -> Neste exemplo foi utulizado como dominio MYGROUP, obrigatoriamente tem que ser também o grupo de trabalho no ambiente de rede do windows e também ser a diretiva no smb.conf no [global]: workgroup = MYGROUP Entendeu....., o mesmo nome nos 3 lugares tem que serem iguais. Caso não complete o login, reveja a configuração, sem login não terá acesso aos compartilhamentos do Samba, caso completou o logim, terá acesso aos seguintes compartilhamentos: Click em ambiente de rede para encontrar o compartilhamento Samba, click sobre ele e encontrará 3 compartilhametos, public, tmp e zago Explicando: Public e tmp são os compartilhamentos do samba e zago é o compartilhamento do usuario criado no Samba como no exemplo acima. Em Public o usuario zago não tem acesso e tem todos os direitos em tmp e zago. Enquanto não conseguir os resultados acima não adianta tentar os proximos passos, a rede não está funcionando e os proximos itens depende desta parte funcionando corretamente. Caso não teve exito, tem algum caracter errado, passo errado ou algo parecido, refaça todos os passos até conseguir o resultado indicado acima para depois personalizar, login script, permissões, criar outros compartilhamentos e ajustes personalizar o servidor a seu modo. Proximos passos serão tratados por tópicos, como LOGIN SCRIPT, PERMISSÕES. etc... ******************************************************** ******************************************************** ******************************************************** COFIGURAR A ESTAÇÃO WIN 2000. Pra adicionar as estações com Windows 2000 siga este tutorial: http://www.zago.eti.br/samba/samba-win2000.txt Tem dicas e os passos necessários pra fazer o primeiro login, configurar o perfil pra móvel ou local e outras dicas. Logo após o tutorial vem o FAQ com as mensagens da Linux-br. veja também este FAQ: http://www.zago.eti.br/samba/samba-xp-w2k-win2003.txt ******************************************************** COFIGURAR A ESTAÇÃO WIN XP PRO. tutorial com telas da configuração, veja em; http://www.zago.eti.br/samba/cliente-winxp-pro.html Caminho simplificado, caso falhe, siga o proximo tópico Caminho detalhado. Pra adicionar as estações com Windows XP PRO siga este tutorial: Primeiro login da estação win XP no servidor Samba. Somente no primeiro login precisa seguir estes passos pra adicionar a estação XP no servidor Samba. Faça login como administrador clique com botão auxiliar no icone "Meu computador" propriedades Nome do computador ID de rede avançar selecione "este computador faz parte de uma rede....." avançar (continue avançando até chegar na tela pra preencher os campos: Nome de usuário: digite aqui o login de usuário cadastrado no Samba e não na estação. Senha: senha deste usuário no servidor Samba Dominio: MYGROUP (ou o que voce definiu no smb.conf, na linha: # Nome do domínio workgroup = MYGROUP clique em proximo e na proxima tela mantenha os dados que devem ser: Nome do computador: Dominio do computador: ONDE: O nome do computador é o mesmo nome definido na instalação do windows. dominio do computador é o mesmo indicado na tela anterior, neste exemplo é MYGROUP. Na proxima tela, onde: Nome de usuário: root Senha: digite a senha do root pro Samba, a mesma que foi criada no servidor samba com o comando smbpasswd -a root Dominio: o mesmo informado nas telas anteriores, neste exemplo MYGROUP continue dando clique em OK e avançar até concluir e pede pra reiniciar a maquina. Service Pack2 OBS pra estação com Service Pack2 Nos passos indicados acima pra adicionar a maquina no dominio Samba, vai ocorrer uma mensagem de erro que não lembro exatamente o texto, é um aviso com termos semelhante a: " relação de desconfiança de dominio " Pra solucionar o problema, deixe a tela parada na mensagem de erro, vá em "Painel de controle" -> "Ferramentas administrativas" -> "Diretiva de segurança local" -> "Opções de segurança", clique em pelo menos dois itens que iniciam com Menbro de dominio, não precisa fazer mais nada, é isto mesmo, só entrar aqui e dar alguns cliques e depois voltar na tela que estava adicionando usuário e prosseguir normalmente que vai funcionar. Vai entender estas doideiras do windows, não entendi nada mas funcionou. PROFILE. Neste tutorial o smb.conf está configurado pra não ter profile movel, no resumo de comandos já foi criado o diretório pra isto, ele fica sem função enquanto não habilitar o profile movel. Caso queira habilitar o profile, altere no smb.conf: # Logon no Win2k/XP com profiles no servidor # logon path = \\%L\Profiles\%U # Logon no Win2k/XP sem profiles logon path = comente a linha: logon path = retire o comentario da linha: # logon path = \\%L\Profiles\%U Não precisa de alterações nas estações, após alteração acima no proximo boot as estações passam a gravar o profile no servidor. GRUPO. Neste tutorial os comandos e configuração do smb.conf estão pra usar como grupo de trabalho "grupo", este nome é definido no smb.conf na linha: add machine script = /usr/sbin/adduser -n -r -g grupo -c "Samba grupo" -d /dev/null -s /bin/false %u Pra voce usar outro nome pra "grupo" faça alteração nesta linha acima e crie no servidor samba o grupo com o mesmo nome, por exemplo, pra usar "servzago" a linha acima no smb.conf deve ser alterada para: add machine script = /usr/sbin/adduser -n -r -g grupo -c "Samba servzago" -d /dev/null -s /bin/false %u No servidor Samba precisa criar este grupo também, execute: groupadd servzago Caminho detalhado. Os passos a seguir requer mais comandos e portanto mais trabalhoso, indicado pra quando falhar a opção simplificado (acima) ou pra trabalhar com perfil movel ou local. Pra adicionar a estação manualmente veja dicas e detalhes neste FAQ: http://www.zago.eti.br/samba/samba-win-xp-pro.txt Tem dicas e os passos necessários pra fazer o primeiro login, configurar o perfil pra móvel ou local e outras dicas, veja especialmente estes tópicos: RESUMO ZAGO SERVIDOR SAMBA ADICIONAR NO SAMBA AS MAQUINAS WIN XP PRO. COMANDOS NA ESTAÇÃO WINDOWS XP, xpprocli1 GPEDIT.MSC PRIMEIRO LOGIN LOGIN NO SERVIDOR SAMBA. Logo após o tutorial vem o FAQ com as mensagens da Linux-br. veja também este FAQ: http://www.zago.eti.br/samba/samba-xp-w2k-win2003.txt ******************************************************** COFIGURAR A ESTAÇÃO WIN 2003. Pra adicionar as estações com Windows XP PRO siga este tutorial: http://www.zago.eti.br/samba/samba-win-2003.txt Tem dicas e os passos necessários pra fazer o primeiro login, configurar o perfil pra móvel ou local e outras dicas. Não notei diferenças entre win XP pro e win 2003, caso tenha alguma dificuldade, veja também este tutorial com FAQ: http://www.zago.eti.br/samba/samba-win-xp-pro.txt Logo após o tutorial vem o FAQ com as mensagens da Linux-br. veja também este FAQ: http://www.zago.eti.br/samba/samba-xp-w2k-win2003.txt ******************************************************** LOGIN SCRIPT Voce pode mapear as unidades de rede via Explorer ou automatizar o mapeamento de unidades de rede no login, faça estas alterações no seu smb.conf as linhas com ponto e virgula vem por default no samba, não tem função porque estão comentadas, retire o comentario e altere para ficar igual o exemplo abaixo. domain logons = yes ; logon script = %U.bat logon script = %g.bat ; logon path = \\%L\Profiles\%U logon path = //%L/profiles/%g preserve case = No No smb.conf já vem um modelo de compartilhamento para os scripts, vem assim: # Un-comment the following and create the netlogon directory for Domain Logons ; [netlogon] ; comment = Network Logon Service ; path = /home/netlogon ; guest ok = yes ; writable = no ; share modes = no basta tirar os comentários pra ficar assim: [netlogon] comment = Network Logon Service path = /home/netlogon guest ok = yes writable = no share modes = no Neste caso precisa criar o diretório netlogon dentro do home, execute: mkdir /home/netlogon veja no sub-diretório samba (no site) o arquivo zago.bat, este arquivo é um modelo de login script, crie este arquivo na maquina windows pelo edit do DOS ou bloco de notas e salve no diretório do usuário ou tmp do servidor Samba, depois por uma conexão via ssh ou no próprio servidor faça a copia deste arquivo para o diretório dos scripts, pro /home/netlogon ou /etc/samba ou pra outro local conforme definido no compartilhamento [netlogon], comentado acima. precisa criar um arquivo com o nome de login do usuario.bat, no exemplo do usuario zago o arquivo tem o nome zago.bat, depois de copiado para o diretório /home/netlogon ou /etc/samba pode fazer copia para outros usuários e fazer os ajustes com o editor do Linux, vi, pico, emacs etc.. , só não pode criar o arquivo inicial com editores do Linux, mas pode altera-los. Reinicie o samba e a estação windows, no proximo login mapeará automaticamente as unidades de rede para o usuario, as causas para não mapear as unidades de rede pode ocorrer quando tem algum erro no arquivo de script ou este estar no formato Unix, vá pelo ambiente de rede no compartilhamento netlogon e edit o arquivo, aparecendo em uma única linha ele está no formato Unix, edite-o com o bloco de notas para a forma correta, como não tem permissão para gravar neste diretório, então salve em outro diretório, tmp ou do usuário, depois pelo Linux e como root faça a copia para /etc/samba. ******************************************************** PROFILE NO WIN NT, 2K, XP PRO e 2003 Estas versões do windows requer uma configuração especial no Samba pra gravar o profile do usuário, mesmo que venha a configurar pra perfil local, este compartilhamento deve ser criado pra evitar mensagens de erro. No /etc/samba/smb.conf a parte que está assim: # Un-comment the following to provide a specific roving profile share # the default is to use the user's home directory #[Profiles] # path = /home/profiles # browseable = no # guest ok = yes Deve se tirar os comentários pra ficar assim: [Profiles] comment = Network User Profiles path = /home/profiles read only = no create mask = 0700 directory mask = 0700 como foi definido um compartilhamento, também precisa ser criado conforme está no smb.conf, execute este comando: mkdir /home/profiles Este comando cria o diretório onde as estações windows NT, 2K, XP PRO e 2003, vão gravar o perfil dos usuários, mesmo que configure as estações pra trabalharem com "perfil local", é necessário criar este diretório e também estar com este compartilhamento definido no smb.conf. chmod -R 777 /home/profiles Este comando libera o compartilhamento /home/profile pra qualquer usuário com todas a permissões, em alguns testes ocorrem erros de permissão neste diretório, por isto o comando pra liberar geral, quem vai utilizar perfil local não utilizara este compartilhamento e portanto não tem problema liberar geral, caso voce utilize o perfil movel e precise de segurança, reconfigure as permissões deste diretório. ******************************************************** PERMISSÕES nos diretórios compartilhados. ******************************************************** ACENTOS em nomes de arquivos acrescente no smb.conf no final da seção global e antes das linhas que configura a lixeira, acrescente estas linhas abaixo: client code page = 850 character set = ISO8859-1 preserve case = no short preserve case = no default case = lower após a inclusão destes parametros reinicie o samba e refaça o login das estações windows. Resultado: - Todos os arquivos criados a partir desta alteração terão o nome em letras minusculas independente de como foi digitado nas estações windows. - Acentos funcionam normalmente no sistema windows e Linux, indepedente de onde foram criados, um sistema visualiza os arquivos do outro com acentuação correta. - Em um terminal ssh, também via PUTTY os arquivos criados pelo windows são visualizados com acentuação correta. ******************************************************** IMPRESSORAS. Prefira utilizar uma maquina windows da rede para fazer isto, quanto menos acesso ao servidor melhor a segurança, tenho observado problemas com usuarios que não conseguem apagar arquivos na fila de impressão e "fuçam" no servidor, até reinicializa o servidor ou alteram configurações. Pense nisto, instale as impressoras nas estações e compartilhar por lá O CUPS compartilha e/ou acessa impressoras na rede, tanto faz onde estão as impressoras, pode ser em estações Linux ou windows, as estações windows acessam impressoras no CUPS sem precisar do samba, pra isto configure teu windows pra acessar a impressora por IP. ******************************************************** COMPARTILHAMENTO DE DIRETÓRIOS ******************************************************** ******************************************************** ******************************************************** CONFIGURAR ESTAÇÕES WINDOWS 98 e ME PARA LOGAR NO SAMBA. No desktop click com botão auxiliar no icone redes, depois click em propriedades pra acessar ambiente de rede. Na aba identificação, item grupo de trabalho -> coloque o mesmo nome definido no samba, cuidado que o windows vem por default WORKGROUP e o samba vem MYGROUP, neste modelo de samba estou utilizando MYGROUP, mas os dois tem que ser iguais, altere para qualquer nome, desde que iguais tanto no Samba como no Windows, este mesmo nome vai ser utilizado na tela de login, o item "Dominio" nesta tela de login tem que constar este mesmo nome. Pra alterar no smb.conf de MYGROUP pra outro nome, procure na seção global por estas linhas: # workgroup = NT-Domain-Name or Workgroup-Name workgroup = MYGROUP Altere somente a palavra MYGROUP, para o nome que voce desejar, não use acentos, espaços ou caracteres especiais. em propriedades de tcp/ip da placa de rede endereço IP preencha o IP e a mascara, lembre de manter mesma classe de rede. em propriedades de Clientes para Redes Microsoft marque -> Efetuar logon no dominio do Windows NT no campo Dominio do Windows NT, preencha com o mesmo nome usando no samba e grupo de trabalho na estação windows. vai dando OK, fechar e salvar até reiniciar. No proximo boot na tela de login tem mais um item, alem de "nome de usuário" e "senha" tem o item "Dominio" preencha com login e senha de usuario já cadastrado no samba, em Dominio tem que utilizar o mesmo nome utilizado no grupo, neste exemplo MYGROUP ou outro que voce tenha definido. Quando cancela este login ou pressione ESC ou por algum motivo não informar o usuario e senha ou mesmo informando não completar o login no servidor, os compartilhamentos do samba não serão vistos pelo windows, por exemplo quando iniciar o windows cancelar o login e depois querer acessar o compartilhaamento do linux pelo ambiente de rede do windows não vai funcionar, use o nome de login e senha exatamente como cadastrado no servidor Samba. quando não tem scrip pra mapear unidades de rede, voce poderá acessar os compartilhamentos via ambiente de rede, também pode mapear as unidade de rede pelo explorer, prefiro fazer via script no servidor, veja neste tutorial o tópico LOGIN SCRIPT. ******************************************************** LOGIN SCRIPT. No login o windows vai executar um arquivo .bat com nome de login do usuário, este arquivo precisa estar no diretório conforme definido no smb.conf, neste modelo estou utilizando o /home/netlogon. Por exemplo, para o usuário zago precisa ter o arquivo zago.bat e assim pra todos os demais usuários, tem outras maneiras de fazer isto, prefiro esta por personalizar o login de cada um. No linux não existe unidades de rede tal como no windows H: G: e etc.., este arquivo vai estar no servidor Linux pra ser executado pelo windows no login, vai servir para as estações windows dar um apelido, link ou como queiram, mapear unidade de rede definida por uma letra tal como T: Este arquivo não pode ser criado no Linux, voce precisa criar no windows pelo bloco de notas e depois copiar pra este diretório /home/netlogon, não vai poder salvar direto, utilize uma destas "gambi" No smb.conf, no final do compartilhamento [netlogon], acrescente uma linha "admin users = zago" troque zago pelo seu usuário que administra o sistema, assim este usuário e somente êle pode gravar e alterar arquivos neste compartilhamento, faça o script no windows e salve acessando ambiente de rede e depois este compartilhamento onde poderá criar e editar os scripts dos usuários através do bloco de notas do windows e salvando no modo texto. Também poderá criar este arquivo pelo edit do DOS ou bloco de notas e copiar para dentro do diretorio /home/netlogon, ou até mesmo pro seu home e depois como root copiar pra /home/netlogon, use ssh, telnet, disquete ou ambiente de rede para copiar o arquivo, depois de copiado este arquivo pode ser manipulado pelo Linux com cp, editado pelo "vi" ou outro editor e ser ajustado para cada usuário, pelo Linux pode copiar e editar, só não pode criar. SOLUÇÃO 2: Através de um editor Linux crie o arquivo de script por exemplo o (vi) ou outro editor, veja abaixo os exemplos para o arquivo zago.bat: # unix2dos zago.bat # chmod +rwx zago.bat onde zago.bat é o script que você criou, unix2dos converteu o arquivo para o padrão DOS e chmod +rwx tornou executavel. CONTEÚDO DO ARQUIVO: exemplo de script para usuario zago mapear a unidade de rede T: que está no servidor samba e aponta pro diretório /tmp compartilhado como tmp nome do arquivo igual ao nome de login acrescido de .bat zago.bat -> nome do arquivo net use T: \\samba\tmp -> conteúdo do arquivo net time \\samba /set /yes -> para sincronizar data e hora com o server linux onde: zago.bat é o nome do arquivo criado para o usuario com login zago T: a unidade de rede que vou usar nas estações windows, use letras entre F e Z \\samba é nome do servidor linux onde está instalado o samba, para saber o nome do servidor veja no prompt que aparece o nomedousuário@nomedamaquina por exemplo: [root@samba /]# na linha acima estou procurando por "samba" \tmp é nome do diretorio compartilhado ou pasta que foi definida no smb.conf como um compartilhamento e também criada no caminho definido, em /home/tmp Nas estações windows o compartilhamento aparecem como netlogon, pelo prompt do Linux aparece em /home/netlogon/, o local é o mesmo, no windows é mostrado o nome do compartilhamento. Assim em todo login do usuário zago o samba procurará pelo arquivo /home/netlogon/zago.bat. Não precisa reiniciar o samba nem fazer alterações, após criar o script faça logoff ou reinicie a estação pra testar o script. ******************************************************** LOG USE E ABUSE DO LOG, você vai resolver muitos problemas com as informações do log. Para solucionar problemas um bom começo é interpretar os logs, quase todos os serviços tem seu log. veja no seu smb.conf como estão as configurações de log, normalmente tem no global estas linhas: log file = /var/log/samba/%m.log max log size = 50 debug level = 1 neste exemplo indicam que os arquivos de log serão gravados dentro do diretório /var/log/samba, que o nível de detalhamento do log é 1, ou seja, minimo, voce pode alterar pra 2, 3 ou mais, tenha muito cuidado, dependendo do nivel de detalhamento escolhido, os logs podem ser tão grandes que degrada o uso do servidor, está opção é muito indicada pra solução de problemas, ative quando for o caso de precisar de mais detalhes nos logs e volte pra condição normal assim que não precisar mais de tanto detalhes... Para localizar problemas ao compartilhar recursos do Linux via samba veja os arquivos de log que estão em: /var/log/samba/ utilize também o tail pra acompanhar os registros no log no momento que acontecem, veja algums exemplos: tail -f /var/log/messages Veja quais são os arquivos de log em /var/log/samba e ajuste a linha abaixo pra acompanhar o arquivo de log desejado: tail -f /var/log/samba/log.smbd Altere a linha de comando acima pra acompanhar outros logs do samba, veja outros arquivos de log disponiveis no diretório: /var/log/samba #smbstatus mostra as conexões ativas e alguns dados dos usuarios. #smbstatus -u usuário mostra o que um determinado usuário esta utilizando no samba. Pra executar o comando smbstatus periodicamente, pode usar um script, no exemplo abaixo, o script limpa a tela e executa o comando a cada 3 segundos, ajuste a seu modo o scrip abaixo. [root@faqcl10 root]# cat smbz #!/bin/sh while true; do clear smbstatus -S sleep 3 done Veja também os resultados de: watch -d 'smbstatus | grep usuario' watch -d 'smbstatus | grep zago' ******************************************************** TROCAR SENHAS VIA ESTAÇÃO WIN98, isto funciona com estações win98 e ME, nas estações NT, XP, 2000 E 2003 fica solicitando a troca de senha em cada login, ainda não descobri como solucionar este problema, não ocorre no win98 e ME, somente nos demais Windows, como não sei lidar com o windows, conto com ajuda de alguém que tenha a solução, por favor envie pro FAQ. No Global do smb.conf precisa destas 3 linhas: unix password sync = Yes passwd program = /usr/bin/passwd %u passwd chat = *password* %n\n *password* %n\n *success* Nas estações windows os usuários podem trocar suas senhas de acesso ao samba, as senhas do Linux não são alteradas. Entre no Painel de controle, entre em senhas, procure pela opção "alterar outras senhas" na caixa de dialogo click em "redes microsoft" e Ok, informe a senha atual e a nova senha e OK, receberá a mensagem de confirmação de troca da senha Também tem o recurso de utilizar o putty pra fazer uma conexão ssh e trocar tanto as senhas do samba como do Linux, veja mais em: http://www.zago.eti.br/ssh/ssh.txt Pra trocar senhas do Linux via web (não troca do samba): http://www.zago.eti.br/senhas-trocar-via-web.txt ********************************************************