Pode ser um arquivo passdb.tdb corrompido. Se você removê-lo e reiniciar o Samba, você pode adicionar usuários?
Eu tenho um servidor de arquivos em casa no qual eu recentemente reinstalei o sistema operacional. Substitui o Ubuntu Server 10.04.2 de 32 bits por 10.04.3 64 bits devido a atualizações de hardware. Copiei minha configuração anterior do Samba, recriei o usuário do compartilhamento e verifiquei se as permissões para os diretórios compartilhados, em outro disco, ainda estavam intactas. Eu tenho um XP e uma máquina Win7. Ambos podem ver o servidor de arquivos, mas nenhum deles pode acessar os compartilhamentos. Se eu for para \Server
em uma máquina Windows, ele solicita um usuário / senha e parece aceitar a conexão. Se eu for para \Server\Share
next, ele pede um usuário / passe novamente, e não irá autenticar.
Nenhuma configuração de rede foi alterada nas máquinas Windows. Existe alguma outra configuração que eu possa estar faltando para o servidor? O que mais poderia estar errado?
Solução de problemas: encontrei os registros, como sugerido. O smbd e o nmbd estão ambos em execução. Nos logs das máquinas windows, eu recebo muitas linhas como essa ao tentar se conectar.
[2011/11/07 07:23:53, 1] smbd/service.c:676(make_connection_snum)
create_connection_server_info failed: NT_STATUS_ACCESS_DENIED
Esse é claramente o problema, mas não sei por que isso está acontecendo. O usuário e o passe que estou usando são bons e estavam funcionando antes da atualização. Eu encontrei isso em log.winbindd-idmap:
[2011/11/07 07:14:12, 1] winbindd/idmap.c:321(idmap_init_domain)
idmap initialization returned NT_STATUS_UNSUCCESSFUL
[2011/11/07 07:23:40, 0] winbindd/idmap.c:201(smb_register_idmap_alloc)
idmap_alloc module tdb already registered!
[2011/11/07 07:23:40, 0] winbindd/idmap.c:149(smb_register_idmap)
Idmap module passdb already registered!
[2011/11/07 07:23:40, 0] winbindd/idmap.c:149(smb_register_idmap)
Idmap module nss already registered!
[2011/11/07 07:23:40, 1] winbindd/idmap_tdb.c:214(idmap_tdb_load_ranges)
idmap uid missing
[2011/11/07 07:23:40, 0] winbindd/idmap_tdb.c:287(idmap_tdb_open_db)
Upgrade of IDMAP_VERSION from -1 to 2 is not possible with incomplete configur
ation
[2011/11/07 07:23:40, 1] winbindd/idmap.c:321(idmap_init_domain)
idmap initialization returned NT_STATUS_UNSUCCESSFUL
log.smbd
[2011/11/06 20:01:29, 0] smbd/server.c:1069(main)
smbd version 3.4.7 started.
Copyright Andrew Tridgell and the Samba Team 1992-2009
[2011/11/06 20:01:29, 0] printing/print_cups.c:103(cups_connect)
Unable to connect to CUPS server localhost:631 - Connection refused
[2011/11/06 20:01:29, 0] printing/print_cups.c:103(cups_connect)
Unable to connect to CUPS server localhost:631 - Connection refused
[2011/11/06 20:01:29, 0] smbd/server.c:1115(main)
standard input is not a socket, assuming -D option
log.nmbd
[2011/11/06 13:40:55, 0] nmbd/nmbd.c:854(main)
nmbd version 3.4.7 started.
Copyright Andrew Tridgell and the Samba Team 1992-2009
smb.conf, a maioria dos quais é estoque
[global]
workgroup = MyGroup # edited
server string = %h server (Samba, Ubuntu)
dns proxy = no
use sendfile = yes # edited
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d
security = user # edited
encrypt passwords = true
passdb backend = tdbsam
obey pam restrictions = yes
unix password sync = yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
pam password change = yes
map to guest = bad user
guest account = myshareuser # edited
usershare allow guests = yes
[printers]
comment = All Printers
browseable = no
path = /var/spool/samba
printable = yes
guest ok = no
read only = yes
create mask = 0700
[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
browseable = yes
read only = yes
guest ok = no
# added
[share]
path = /mnt/storage/share
force user = myshareuser
force group = myshareuser
read only = No
create mask = 0777
directory mask = 0777
guest only = No
guest ok = No
[backup]
path = /mnt/storage/backup
force user = myshareuser
force group = myshareuser
read only = No
create mask = 0777
directory mask = 0777
guest only = No
guest ok = No
Tente seguir:
sudo smbpasswd -L -a username (set a password)
sudo smbpasswd -L -e username (enable user)
Você também pode adicionar o conteúdo do /etc/samba/smb.conf com os detalhes do problema. Além disso, você pode tentar com o webmin. para detalhes, verifique o link abaixo:
Ok. Se você ainda não obteve a solução, tente abaixo:
sudo system-config-samba
Ele vai te dar um gui como:
marque a caixa "preferências" (configurações do Samba e usuários do samba). Você pode adicionar seu compartilhamento do arquivo - > adicionar compartilhamento
Além disso, se o problema persistir, você também pode tentar editar o arquivo /etc/samba/smb.conf como abaixo, eu acho que pode resolver o seu problema:usershare allow guests = yes
security = user
guest ok = yes
guest account = exampleuser
username map = /etc/samba/smbusers
# added
[share]
path = /mnt/storage/share
valid users = myshareuser
read only = No
guest ok = yes
browseable = yes
[backup]
path = /mnt/storage/backup
valid users = myshareuser
read only = No
guest ok = yes
browseable = yes
Em seguida, execute os comandos abaixo:
sudo chmdo 777 /mnt/storage/share /mnt/storage/backup
sudo stop smbd
sudo start smbd
Agora verifique se o compartilhamento funciona: D
Para a autenticação de usuário interativa, o seguinte pode funcionar
Adicione um usuário no sistema & dar a senha
sudo adduser testsamba
Adicione o usuário ao Samba & manter a senha em branco quando perguntado aqui novamente
sudo smbpasswd -a testsamba
Mapeie o usuário do Windows
sudo vi /etc/samba/smbusers
o arquivo deve conter como abaixo:
testsamba = windowsuserSample
Faça a configuração necessária com a GUI como antes
sudo system-config-samba
reiniciar o serviço samba
sudo service smbd restart
@Jay Sheridan, eu tentei o seguinte & deve funcionar. É apenas uma versão de verão da última resposta. Você pode verificar isso.
sudo apt-get install samba smbfs
sudo vi /etc/samba/smb.conf
edite assim:
[global]
security = USER
hosts allow =
[homes]
comment = Home Directories
browseable = no
writable = yes
[share]
comment = Unixmen File Server
path = /share/
force user = samba
force group = samba
read only = No
hosts allow =
adicione um usuário (Por exemplo: unixmenuser ao sistema, no terminal digite o comando:
root@unixmen-desktop:~# adduser unixmenuser
sudo smbpasswd -a unixmenuser
a saída do segundo comando deve ser como abaixo
Output
New SMB password:
Retype new SMB password:
Added user unixmenuser.
Tags configuration samba ubuntu