O que há de errado com o meu smb.conf e por que o Windows não consegue acessar o compartilhamento?

2

Estou tentando usar o Samba para compartilhar arquivos entre o Windows XP e o Ubuntu.

Eu editei o smb.conf e adicionei o nome do grupo de trabalho e o nome do netbios. Esta é a parte que tem problemas:

[Myshare]
    comment = Myshare
    path = /myshare
    read only = no
    guest ok = yes

Quando eu faço sudo samba restart , recebo a seguinte saída:

Unknown parameter encountered: "max log size"
Ignoring unknown parameter "max log size"
Unknown parameter encountered: "syslog"
Ignoring unknown parameter "syslog"
Unknown parameter encountered: "passdb backend"
Ignoring unknown parameter "passdb backend"
Unknown parameter encountered: "unix password sync"
Ignoring unknown parameter "unix password sync"
Unknown parameter encountered: "passwd program"
Ignoring unknown parameter "passwd program"
Unknown parameter encountered: "pam password change"
Ignoring unknown parameter "pam password change"
Unknown parameter encountered: "map to guest"
Ignoring unknown parameter "map to guest"
Unknown parameter encountered: "usershare allow guests"
Ignoring unknown parameter "usershare allow guests"
Unknown parameter encountered: "read_only"
Ignoring unknown parameter "read_only"
Unknown parameter encountered: "guest_ok"
Ignoring unknown parameter "guest_ok"
Unknown parameter encountered: "guest ok"
Ignoring unknown parameter "guest ok"
Unknown parameter encountered: "guest ok"
Ignoring unknown parameter "guest ok"

Na minha máquina com Windows XP, posso ver o compartilhamento, mas quando tento acessá-lo, ele diz que não está disponível e talvez eu não tenha permissão para usá-lo. Eu já mudei as permissões do diretório.

Quando eu instalei o samba, eu fiz sudo apt-get install samba4 Eu acho que esses problemas podem ser porque eu estou usando uma versão mais nova do samba e ele não reconhece a antiga sintaxe do arquivo smb.conf.

Quando eu tento executar smbpasswd ele diz cli_pipe_validate_current_pdu: o código de falha RPC DCERPC_FAULT_OP_RNG_ERROR recebido do host 127.0.0.1! máquina 127.0.0.1 rejeitou a mudança de senha: O erro foi: código NT 0x1c010002.

    
por tony_sid 15.08.2010 / 03:42

3 respostas

1

Isso é realmente muito interessante. Estou usando muitas das mesmas opções de configuração para o meu Samba34.

Dito isto, acesse man 5 smb.conf - isso listará todas as cláusulas aceitáveis que você pode usar. Não se esqueça, também, de se certificar de que cada coisa está na seção correta. Por exemplo, não tenha server string = UBUNTU em [Myshare]. Por convenção, cada seção deve começar com uma letra minúscula. Eu esperaria que o Samba fosse um pouco mais robusto, mas talvez ele não esteja sendo reconhecido como um compartilhamento?

Além disso, não acredito que read_only e guest_ok sejam entradas válidas. O restante deles é válido, então é provável que eles não sejam reconhecidos como se aplicassem a qualquer ação; eles estão sentados soltos e estão sendo ignorados.

Comece com uma configuração leve e vá subindo lentamente. Comente as linhas com # e adicione-as novamente até descobrir o que está fazendo. Eu não acho que [Myshare] é o problema com os problemas; Acho que você usou os campos [global] -only em diferentes compartilhamentos ou algo assim. A página man deve explicar onde cada um pode ser usado.

    
por 15.08.2010 / 04:00
0

O WinXP se comportará assim se for capaz de se conectar ao compartilhamento, mas o próprio diretório de nível superior não permite a leitura. Seria bom verificar novamente se as permissões estão corretas. Você pode verificar se o usuário certo está sendo visto pelo servidor samba executando smbstatus enquanto a máquina XP está conectada ao compartilhamento. Em seguida, verifique se o nome de usuário especificado pode ler o diretório do compartilhamento.

    
por 15.08.2010 / 07:42
0

Não que essa seja a maneira mais segura de fazer isso, mas você pode tentar algo assim. Então, uma vez que você esteja funcionando, bloqueie-o com segurança mais rígida:

security = share 
guest account = publicuser
passdb backend = tdbsam

então

[publicuser]
comment = publicuser Home Dir
path = /home/publicuser
public = yes
writable = yes
write list = +publicuser
browseable = yes
hosts allow = 192.168.10.10

e, em / etc / smbusers

# Unix_name = SMB_name1 SMB_name2 ...
# root = 
publicuser = Administrator smbguest pcguest guest
# nobody = guest pcguest smbguest
    
por 04.04.2012 / 22:34