Permission Distriggersto script python in esecuzione da parte di samba

Sto cercando di montare una condivisione samba su un desktop Ubuntu 12.04 da un desktop Fedora 17.

Posso creare, modificare ed eliminare i file senza alcun problema, ma quando provo a eseguire script python sulla condivisione ho un permesso negato errore.

Ho provato a montare come root e usando sudo con i seguenti comandi:

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 

le autorizzazioni di file hanno un. dopo di loro, ma non riesco a capire cosa significhi

 -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 

Come posso montare questa azione in Fedora 17 e eseguire script?

Non vorrei usare samba per colbind due macchine Linux. Samba è progettato per consentire alle macchine linux / unix di comunicare con le windows e viceversa . NFS è molto meglio per due macchine Linux. Potresti probabilmente modificare le impostazioni di samba per permetterti di eseguire script, ma veramente sarai meglio utilizzare un metodo linux nativo. Sul mio sistema, ho la stessa directory esportta usando samba (per le windows sulla mia networking domestica) e nfs per linux e OSXes.

Per esportre una directory usando nfs, innanzitutto, sia server che client, installare autofs5 e nfs-common (gli autofs vengono utilizzati per installare / smontare automaticamente la condivisione come spiegato di seguito). Sul server, installare nfs-kernel-server .

Quindi (tutti questi comandi devono essere eseguiti come root):

  1. Crea la directory che esporterai, ad esempio / nfs_shares:

     sudo mkdir /nfs_shares 
  2. Impostare le regole di esportzione. Sul server, modificare /etc/exports e aggiungere queste righe:

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

    Dove 192.168.0.XX è il client (il tuo Ubuntu Desktop) IP.

  3. Montare (ribind) la directory che esporterai in questa nuova posizione. Innanzitutto aggiungere questa row a / etc / fstab:

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

    Quindi, montarlo:

     mount /nfs_shares 
  4. Sul client, crea la directory in cui monterà la condivisione (ad es. / Mnt / homeshare):

     mkdir /mnt/homeshare 

    A questo punto dovresti essere in grado di montare manualmente la condivisione. Sul cliente:

     mount -t nfs 192.168.0.XX:/nfs_shares/ /mnt/homeshare 
  5. Adesso, lascia automatizzare. Sul client, crea un file denominato /etc/auto.master con queste righe (cambia SERVERNAME a qualunque cosa lo desideri):

     +auto.master /mnt/homeshare /etc/auto.SERVERNAME --timeout 60 --ghost 
  6. Sul client, crea un file denominato /etc/auto.SERVERNAME (cambia SERVERNAME a tutto quello che hai usato nel passaggio 4) con queste righe (puoi usare il nome di networking del server o IP se è statico, cambiare i XX per qualunque sia il tuo IP del server ):

     homeshare -rw,soft,intr,bg,rsize=8192,wsize=8192 192.168.XX.XX:/nfs_shares/homeshare 
  7. Eseguirlo! Sul server, eseguire il service nfs-kernel-server restart e il runtime service nfs-common restart; service autofs restart esecuzione del client service nfs-common restart; service autofs restart service nfs-common restart; service autofs restart

Così, questo lo rende così la quota viene montata automaticamente. Se è utile per un minuto, sarà smontato e rimontato non appena si tenta di accedervi (ad es. ls /mnt/homeshare ). Assicurarsi di impostare le autorizzazioni come necessario ( chmod ) per le directory che utilizzi.

Se non ti import troppo delle performance e di alcune stranezze, c'è anche l'opzione di utilizzare SSHFS .

Con Nautilus è molto facile. Vai a File , Connect to Server... , seleziona SSH come tipo, compila i dettagli e lo è. La quota verrà montata sotto /run/user/james/gvfs/ . Per smontarlo, andare su Computer in Nautilus, fare clic con il button destro del mouse sulla condivisione e select Unmount .