Montare disco samba quando disponibile ed eseguire script

Bash, Perl, Python, Ruby, ...

Montare disco samba quando disponibile ed eseguire script

Messaggioda marko_95 » 30/07/2015, 9:37

Salve a tutti, a casa ho un NAS su cui gira Open Media Vault (Debian 7) con il quale condivido in rete locale un disco attraverso samba. Dato che volevo automatizzare due cosette, ieri mi sono messo a scrivere uno script (in Python, non so programmare in bash) che in pratica cerca nella mia cartella Downloads i torrent che ho finito di scaricare e li sposta automaticamente sul NAS. In più ho intenzione di automatizzare un backup della /home con rsync. Fin qui tutto ok uso il modulo os di Python e sono apposto.

Il problema sorge quando bisogna montare automaticamente il disco. Siccome il NAS non è sempre acceso, lo accendo all'occorrenza, è frustrante ogni volta eseguire il mount. Editando /etc/fstab verrebbe montato all'avvio giusto? Ma a me serve a sistema già avviato. Spremendomi le meningi, ho trovato una soluzione, ma mi chiedo: è il modo più intelligente per farlo?
Codice: Seleziona tutto
def check_mount_NAS():
    if os.system("ping -c 2 192.168.1.104") == 0:
        if os.system("mount -t cifs //192.168.1.104/Dati -o user=...,pass=...,uid=1000,gid=1000 /mnt/samba") == 0:
            return True
    else:
        exit()

Il mio programmino per prima cosa esegue questa funzione, se è tutto ok va avanti. Ho schedulato con cron l'esecuzione ogni 15 minuti, però non mi sembra una cosa tanto "pulita" anche perché capita che per una settimana, ad esempio, il NAS rimanga spento. Cosa mi consigliate?
Avatar utente
marko_95
Jr. Member
Jr. Member
 
Messaggi: 78
Iscritto il: 11/05/2015, 16:14

Re: Montare disco samba quando disponibile ed eseguire scrip

Messaggioda desperados » 30/07/2015, 10:37

anch'io ho fatto una cosa simile, uno script che cerca un determinato file in /mnt/nas, se non lo trova lo monta e se il mount riesce avvia la copia, altrimenti esce, in pratica come hai fatto te
- Potrebbe esser peggio. - E come? - Potrebbe piovere!
desperados
Hero Member
Hero Member
 
Messaggi: 776
Iscritto il: 22/02/2008, 8:55

Re: Montare disco samba quando disponibile ed eseguire scrip

Messaggioda marko_95 » 30/07/2015, 20:10

Ho ottimizzato un po' la funzione, ho aggiunto una condizione prima di tutto:
se "/mnt/samba" è vuota prosegui con le altre istruzioni, altrimenti esci subito.
In questo modo evito ping e mount a vuoto in caso il disco fosse già montato =)
Avatar utente
marko_95
Jr. Member
Jr. Member
 
Messaggi: 78
Iscritto il: 11/05/2015, 16:14


Torna a Scripting

Chi c’è in linea

Visitano il forum: Nessuno e 3 ospiti