Permissão negada executando o script python do compartilhamento de samba

2

Estou tentando montar um compartilhamento de samba em um desktop Ubuntu 12.04 a partir de um desktop Fedora 17.

Eu posso criar, editar e excluir arquivos sem problemas, mas quando tento executar scripts python no compartilhamento, recebo um erro de permissão negada.

Eu tentei montar como root e usar o sudo com os seguintes comandos:

mount -t cifs //192.168.0.3/homeshare netbook -o user=james

mount -t cifs -o exec //192.168.0.3/homeshare netbook -o user=james

as permissões de arquivo têm um. depois deles, mas eu não consigo descobrir o que isso significa

-rw-rw-r--. 1 james james 31804 Aug 14 18:20 cronlog.txt

-rwxrwxr-x. 1 james james   666 Aug 16 17:49 current.py

Como posso montar esse compartilhamento no Fedora 17 e executar scripts?

    
por James 17.08.2012 / 13:55

2 respostas

3

Eu não usaria o samba para conectar duas máquinas linux. O Samba é projetado para permitir que máquinas linux / unix se comuniquem com o Windows e vice-versa . O NFS é muito melhor para duas máquinas linux. Você provavelmente pode ajustar as configurações do samba para permitir a execução de scripts, mas será melhor usar um método nativo do Linux. No meu sistema, eu tenho o mesmo diretório exportado usando o samba (para as janelas da minha rede doméstica) e nfs para o Linux e OSX.

Para exportar um diretório usando o nfs, primeiro, no servidor e no cliente, instale autofs5 e nfs-common (o autofs é usado para montar / desmontar automaticamente o compartilhamento, conforme explicado abaixo). No servidor, instale nfs-kernel-server .

Então (todos esses comandos devem ser executados como root):

  1. Crie o diretório que você exportará, por exemplo, / nfs_shares:

    sudo mkdir /nfs_shares
    
  2. Configure as regras de exportação. No servidor, edite /etc/exports e adicione estas linhas:

    /nfs_shares       192.168.0.XX(rw,sync,no_subtree_check)
    

    Onde 192.168.0.XX é o IP do cliente (seu desktop do Ubuntu).

  3. Monte (vincule) o diretório que você exportará para esse novo local. Primeiro adicione esta linha ao / etc / fstab:

    /path/to/exported/homeshare /nfs_shares bind bind 0
    

    Depois monte:

    mount /nfs_shares
    
  4. No cliente, crie o diretório no qual você montará o compartilhamento (por exemplo, / mnt / homeshare):

    mkdir /mnt/homeshare
    

    Neste ponto, você deve conseguir montar o compartilhamento manualmente. No cliente:

    mount -t nfs 192.168.0.XX:/nfs_shares/ /mnt/homeshare
    
  5. Agora, vamos automatizar. No cliente, crie um arquivo chamado /etc/auto.master com essas linhas (altere SERVERNAME para o nome que você quiser chamá-lo):

    +auto.master
    /mnt/homeshare  /etc/auto.SERVERNAME   --timeout 60 --ghost
    
  6. No cliente, crie um arquivo chamado /etc/auto.SERVERNAME (altere SERVERNAME para o que você usou na etapa 4) com essas linhas (você pode usar o nome de rede do servidor ou IP se estiver estático, altere os XXs para o que for IP do seu servidor):

    homeshare  -rw,soft,intr,bg,rsize=8192,wsize=8192 192.168.XX.XX:/nfs_shares/homeshare
    
  7. Execute-o! No servidor, execute service nfs-kernel-server restart e, no cliente, execute service nfs-common restart; service autofs restart

Então, isso faz com que o compartilhamento seja montado automaticamente. Se for incitado por um minuto, ele será desmontado e remontado assim que você tentar acessá-lo (por exemplo, ls /mnt/homeshare ). Certifique-se de definir as permissões da maneira que você precisa ( chmod ) para os diretórios que você usa.

    
por 17.08.2012 / 16:38
0

Se você não se importar muito com desempenho e algumas peculiaridades, também há a opção de usar SSHFS .

Com o Nautilus é muito fácil. Vá para File , Connect to Server... , selecione SSH como o tipo, preencha os detalhes e pronto. O compartilhamento será montado em /run/user/james/gvfs/ . Para desmontá-lo, vá para Computer no Nautilus, clique com o botão direito do mouse no compartilhamento e selecione Unmount .

    
por 19.08.2012 / 05:58