Olá pessoal, tudo bem?
Estou com um problema no Samba.
Uso o Ubuntu 8.04 Hardy Heron Server no Virtual Box e configurei o smb.conf
para executar um prompt script (.bat / .cmd) no cliente, que no caso é
outra máquina virtual usando o Windows XP Professional SP3.
O Ubuntu está servindo de gateway para o Windows (conectado em 2 placas
de rede, 1 para internet e outra para conexão direta com o Windows)
O problema é que no Windows há a conexão com o Ubuntu mas ele não executa
o script de jeito nenhum.
Testei depois em um Windows 7 e também não executou.
Não é problema nos Windows, o problema deve ser no smb.conf do Ubuntu.
[global]
workgroup = WORKGROUP
server string = Ubuntu File Server
netbios name = ubuntu
load printers = no
disable spoolss = yes
socket options = IPTOS_LOWDELAY TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
preserve case = yes
short preserve case = yes
case sensitive = yes
dns proxy = no
# In case of another network added, place it here
interfaces = lo eth0 eth1
# eth0 - conexão com o host (bridged)
# eth1 - conexão "local" (com outras VMs)
# In case of another client added, place it here
hosts deny = ALL EXCEPT 192.168.1.1 192.168.1.2 192.168.2.2
hosts allow = 192.168.1.1 192.168.1.2 192.168.2.2
# 192.168.1.1 - Gateway físico
# 192.168.1.2 - Cliente do gateway físico, máquina host das VMs
# 192.168.2.2 - Cliente virtual
bind interfaces only = true
domain master = yes
local master = yes
preferred master = yes
os level = 100
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d
security = user
encrypt passwords = true
passdb backend = tdbsam
obey pam restrictions = yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *Password\supdated\ssuccessfully* .
unix password sync = yes
guest account = nobody
null passwords = no
invalid users = root admin bin daemon named sys tty disk mem kmem user users guest tmp temp log syslog
domain logons = yes
[netlogon]
comment = Network Logon Service
path = /home/netlogon
browseable = no
writable = no
guest ok = yes
public = yes
share modes = no
[Recycler]
comment = Recycle Bin
path = /home/recycle-bin
browseable = no
writable = no
guest ok = no
create mask = 0775
directory mask = 0775
public = no
write list = +share
valid users = +share
[IPC$]
comment = Root
path = /dev/null
browseable = no
writable = no
guest ok = no
public = no
valid users = +share
domain logons = yes
logon script = .netlogon.cmd
logon path = \\%L\netlogon
[Share]
comment = Shared Folder
path = /home/share
browseable = yes
writable = no
guest ok = no
create mask = 0775
directory mask = 0775
public = no
write list = +share
valid users = +share
logon script = .netlogon.cmd
logon path = \\%L\netlogon
vfs objects = recycle
recycle:repository = /home/recycle-bin/%u@%I
recycle:keeptree = true
recycle:versions = true
recycle:exclude = *.tmp, *.log, ~*.*
recycle:exclude_dir = tmp, temp, cache
; avaliable = no
No grupo share coloquei um usuário e as pastas do compartilhamento,
bem como as subpastas e subarquivos pertencentes ao grupo share
chgrp -R share /home/share
Permissões aos alvos compartilhados
chmod -R 775 /home/share
O compartilhamento existe do lado cliente.
Ao tentar acessar o compartilhamento pelo Windows, ele
pede senha e abre. Mas não executa a porcaria do script.
O script está em formato DOS na quebra de linha
cat -A /home/netlogon/.netlogon.cmd
@ECHO OFF^M$
title Ubuntu file server^M$
color FC^M$
:start^M$
cls^M$
echo UBUNTU servidor de arquivos...^M$
echo.^M$
if "%OS%"=="Windows_NT" goto WinNT^M$
:Win95^M$
echo Configurando compartilhamento...^M$
net use Z: \\ubuntu\share^M$
if errorlevel<>0 pause^M$
goto end^M$
:WinNT^M$
echo Configurando compartilhamento...^M$
net use Z: \\ubuntu\share /persistent:no^M$
if errorlevel <> 0 pause^M$
goto end^M$
:end^M$
exit
Pessoal, já estou desesperado. Preciso que execute para que
ele monte sozinho as unidades no lado cliente e que elas não
sejam permantentes (como no caso de tentar acessá-las
diretamente, elas são montadas em modo persistente e tenho
toda hora que abrir o cmd do Windows para desfazer a porcaria)
Obrigado pela ajuda.