http://www.zago.eti.br/samba-logon-script.txt Use CTRL+F para refinar a pesquisa. Linha de: **************** separa mensagens ou tópicos. ******************************************************** Zago http://www.zago.eti.br/menu.html FAQ e artigos sobre Linux ******************************************************** ******************************************************** ******************************************************** ******************************************************** De:  Valério Para:  redes-l@listas.ansp.br Assunto:  Re: [Redes-l] Samba e profile do Windows Data:  Thu, 10 Jul 2003 08:29:42 -0300 Olá Rogério, Tinhamos esse problema aqui na faenquil, principalmente com máquinas rodando Win98 a solução foi configurar o windows para trabalhar no modo "mono" usuário, fazendo com que o samba rode scripts perl gerando arquivos .bat para o cada usuário. Esse foi o primeiro passo, o segundo foi criar um script kixtart para configurar as estações de acordo com as necessidades de cada usuário/estações. Segui as seguintes etapas: 1. criei o compartilhamento netlogon no PDC samba; é neste compartilhamento que serão gravados os .bat de cada usuário e o kixtart 2. acrescentei as seguintes linhas no smb.conf, compartilhamento; [global] logon script = usersbatchs\%U.bat que irá criar o arquivo "username.bat" no diretorio /netlogon/usersbatchs [netlogon] comment = Network Logon Service path = /netlogon read only = No guest ok = Yes share modes = No root preexec = /netlogon/loginscript.pl %U %m %L root postexec = /netlogon/logoutscript.pl %U as duas últimas linhas rodam o script perl para gerar o arquivo .bat no login e logout, respectivamente. 3. Criei o script perl que cria o .bat, (loginscript.pl) abaixo um exemplo; >------------início exemplo #!/usr/bin/perl ################################################################# ## Cria o script de usuario ## ################################################################# # # Cria o arquivo batch com o nome do usuário. # e acrescenta os comandos básicos open (LOGON,">/netlogon/usersbatchs/$ARGV[0].bat"); print LOGON "\@ECHO OFF\r\n"; # Acerta o relógio do micro com a hora do servidor print LOGON "NET TIME \\\\$ARGV[2] /SET /YES\r\n"; # Cria a Pasta "Meus Documentos" na área do usuário # se necessário print LOGON 'IF NOT EXIST "\\\\ALNSRV\\'."$ARGV[0]".'\\Meus Documentos\\." MKDIR"\\\\ALNSRV\\'."$ARGV[0]".'\\Meus Documentos"'."\r\n"; # # Mapeia a área do usuário print LOGON "NET USE * \\\\$ARGV[2]\\$ARGV[0]\r\n"; # Roda o sript para configuração da estação de trabalho print LOGON "\\\\$ARGV[2]\\netlogon\\scripts\\kix32 cfg_wrkst_bas.kix\r\n"; # Fecha o arquivo batch close LOGON; <-------------fim exemplo vc pode verificar qual usuário %U ($ARGV[0]), estação %m ($ARGV[1]) e até o servidor %L ($ARGV[2]) no qual foi efetuado o login; 4. criei o script perl de logoff (logoutscript.pl); #!/usr/bin/perl ## system("rm /netlogon/usersbatchs/$ARGV[0].bat"); 5. criei os scripts kixtart para configuração das estações, que gravei no diretório /netlogon/scripts; >------- Início Exemplo ;=========================================================================== ======= ; KiXtart script para configurar restrições nas estações Win98 ;=========================================================================== ======= ; $ADM = "Lista de logins de administradores p. ex." ; ; Verifica se o usuário é um administrador ; IF INSTR ($ADM, @USERID) = 0 ; Aplica restrições de usuário ; ; Oculta o drive C: ; ;? "(ORDINARIO), " + @userID + ", to continue..." get $x WRITEVALUE ("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explo rer", "NoDrives", "4", "REG_DWORD") WRITEVALUE ("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Expl orer", "NoDrives", "4", "REG_DWORD") ; ; Muda a pasta Meus Documentos para a área do usuário ; $Area_usuario="\\ALNSRV\" + @USERID +"\Meus Documentos" WRITEVALUE ("HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders", "Personal", $Area_usuario, "REG_SZ") WRITEVALUE ("HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders", "Personal", $Area_usuario, "REG_SZ") ; ; Desativa a transferência de Prefil WRITEVALUE ("HKEY_LOCAL_MACHINE\Network\Logon", "UseHomeDirectory", "0", "REG_DWORD") ; ; Ativa o Proxy e configura a conexão ; WRITEVALUE ("HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings", "ProxyEnable", "1", "REG_DWORD") WRITEVALUE ("HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings", "ProxyOverride", "*.faenquil.br;200.136.190.*;", "REG_SZ") WRITEVALUE ("HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings", "ProxyServer", "alunos.faenquil.br:3128", "REG_SZ") ELSE ; Remove as restrições de usuário ; ; Ativa o drive C: ; DELVALUE ("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explo rer", "NoDrives") DELVALUE ("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Expl orer", "NoDrives") ; ; Muda a pasta Meus Documentos para o padrão do windows ; $Area_usuario="\\ALNSRV\" + @USERID WRITEVALUE ("HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders", "Personal", "C:\Meus Documentos", "REG_SZ") WRITEVALUE ("HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders", "Personal", "C:\Meus Documentos", "REG_SZ") ; ; Desativa a transferência de Prefil WRITEVALUE ("HKEY_LOCAL_MACHINE\Network\Logon", "UseHomeDirectory", "0", "REG_DWORD") ; ENDIF <------- Fim Exemplo Espero que isso possa te ajudar. Valério ----- Original Message ----- From: "Rogério Oliveira Naressi" To: Sent: Tuesday, July 08, 2003 5:25 PM Subject: [Redes-l] Samba e profile do Windows > > > Estou com samba rodando em uma máquina com debian, sendo > o samba configurado como meu PDC. > Há vários dias estou testando uma configuração para o meu > servidor Samba, não estou conseguindo chegar a uma situação ideal. > Estou dentro de um departamento de uma unidade da USP, temos > cerca de 150 clientes, sendo Windows 95/98/ME/2K/XP e algumas > máquinas linux. Nossos usuários são professores, funcionários e > alunos. Sendo que, principalmente os alunos, fazem o uso de micros > em diversos laboratórios, ou seja, nesses casos, seus arquivos > ficam no servidor e os mesmo acessam de qualquer micro através > de um usuário e senha. Resumindo, temos + ou - 400 usuários que > acessam cerca de 100 estações. > Testei usar roaming profiles, não funciona legal, principalmente > porque copia todo o profile para o hd local e depois retorna para o > servidor no logoff. Além de manter a cópia do profile no hd local, > imagine para uns 400 usuários o que acontece. > Defini então fazer logoon e executar login script para mapear > o home do usuário e outras pastas que precisar, funciona bem, o > inconveniente é que no primeiro login de cada usuário em um micro, > é criado um novo profile na estação, ai a cada aplicativo que é > executado (word, excel, ie, etc), é feita aquela configuração > inicial. Além de cada profile ser mantida na estação. > Estamos precisando de uma configuração, onde um determinado > usuário cadastrado no samba, consiga de qualquer estação, fazer > o login e acessar seus arquivos no servidor, sem que fique > criando n profile nas estações, muito mesmo que cada login o > usuário necessite ficar configurando aplicativos. > Atualmente temos Novell 4.11 que funciona uma beleza, gostaria > muito de substituir por samba por questão de economia. > Se alguém tiver alguma sugestão, ou mesmo alguma implementação > que já esteja em funcionamento, será muito bem vindo. Procurei > uma boa lista de samba em Português, mas não encontrei, se alguém > souber ? Estou com problemas também na impressão, vou deixar as > dúvidas para uma próxima vez. > > Obrigado a todos. > > Rogério. > > Rogério Oliveira Naressi - email: ronaress@esalq.usp.br > IPEF - Instit. de Pesq. e Est. Florestais - http://www.ipef.br > Depto de Ciênc. Florestais-ESALQ/USP - http://lcf.esalq.usp.br > > > > _______________________________________________ > Redes-l mailing list Redes-l@listas.ansp.br > Para sair da lista consulte: > http://listas.ansp.br/mailman/listinfo/redes-l > _______________________________________________ Redes-l mailing list Redes-l@listas.ansp.br Para sair da lista consulte: http://listas.ansp.br/mailman/listinfo/redes-l