[Risolto] remount automatico

Installazione, configurazione e uso di Ubuntu come server: web, ftp, mail, news, proxy, dns e altro.
smangiagli
Prode Principiante
Messaggi: 13
Iscrizione: martedì 29 marzo 2016, 19:46
Distribuzione: 14.04
Sesso: Maschile

Re: remount automatico

Messaggio da smangiagli »

Ho controllato direttamente la dimensione della cartella montata e di seguito riporto il codice

Codice: Seleziona tutto

#!/bin/bash
CHECK=$(du -s /var/www/Root/Dati/webcams| sed 's/[^0-9]*//g')
if [ "$CHECK" -eq 0 ] ; then
mount.cifs //10.200.40.15/DatiInternet/Telecamere /var/www/Root/Dati/webcams -o user=XXX,password=XXX,domain=XX,rw,uid=www-data,gid=www-data,file_mode=0777,dir_mode=0777
echo "Ho montato la directory"
fi
exit 0
Lanciando in manuale il file funziona tutto perfettamente. Ho provato ad inserire lo script nel crontab, utilizzando il comando

Codice: Seleziona tutto

crontab -e
ma non viene eseguito.

Ho invece inserito la riga di lancio nel file /etc/crontab e funziona.
Avatar utente
thece
Tenace Tecnocrate
Tenace Tecnocrate
Messaggi: 12949
Iscrizione: lunedì 23 aprile 2007, 14:16
Distribuzione: Debian 12 (Bookworm) - KDE

Re: remount automatico

Messaggio da thece »

Premesso che il check sul file civetta mi piaceva di più, così si testava la reale raggiungibilità del contenuto dello share, qualche osservazione:

1) sicuro che il tuo script funzioni? La dimensione di una directory vuota è 4K, non 0K

2) Non mi convince nemmeno come estrai la dimensione della directory. Io avrei usato

Codice: Seleziona tutto

du -ks /var/www/Root/Dati/webcams | cut -f1
3) se per lo share hai compilato per bene il file /etc/fstab, il comando di mount nello script lo puoi semplificare in

Codice: Seleziona tutto

mount /var/www/Root/Dati/webcams 
le opzioni rimanenti verrano prese in automatico dal file /etc/fstab

4) scritto così

Codice: Seleziona tutto

crontab -e
il comando crontab farà riferimento all'utente che ha lanciato il comando. Se non è stato root, per via del suo contenuto, lo script non funzionerà
Dai una letta al manuale di crontab

Codice: Seleziona tutto

man crontab

Codice: Seleziona tutto

#!/bin/bash

FOLDER="/var/www/Root/Dati/webcams"
FOLDER_SIZE=$(du -ks $FOLDER | cut -f1)

if (( $FOLDER_SIZE <= 4 )); then
        mount $FOLDER
        echo "Ho montato la directory"
fi

exit 0
Ultima modifica di thece il giovedì 31 marzo 2016, 21:55, modificato 1 volta in totale.
smangiagli
Prode Principiante
Messaggi: 13
Iscrizione: martedì 29 marzo 2016, 19:46
Distribuzione: 14.04
Sesso: Maschile

Re: remount automatico

Messaggio da smangiagli »

Grazie per i consigli. Veramente completi.

Cmq ho sistemato il codice non facendo restituire il peso della directory, poichè per cartelle molto grosse il tempo di esecuzione dello script (circa 3 minuti) superava il tempo rilancio dello script (settato ogni minuto).

Ho trasformato il codice in

Codice: Seleziona tutto

FILE=""
DIR="/var/www/Root/Dati/video"
# init
# look for empty dir
if [ "$(ls -A $DIR)" ]; then
      echo "Take action $DIR is not Empty"
else
mount /var/www/Root/Dati/video
fi
exit 0
Avatar utente
thece
Tenace Tecnocrate
Tenace Tecnocrate
Messaggi: 12949
Iscrizione: lunedì 23 aprile 2007, 14:16
Distribuzione: Debian 12 (Bookworm) - KDE

Re: remount automatico

Messaggio da thece »

Uhm ... alla faccia dei disservizi di rete ...

Suggerisco questa versione

Codice: Seleziona tutto

#!/bin/bash

SHARE_MOUNT_POINT="/var/www/Root/Dati/video"

if [[ ! "$(ls -A $SHARE_MOUNT_POINT)" ]]; then
        mount $SHARE_MOUNT_POINT
fi

exit 0
smangiagli
Prode Principiante
Messaggi: 13
Iscrizione: martedì 29 marzo 2016, 19:46
Distribuzione: 14.04
Sesso: Maschile

Re: remount automatico

Messaggio da smangiagli »

La cartella dove si piantava pesa solo 136 GB.

Lo script è in esecuzione da ieri sera e funziona perfettamaente.
Avatar utente
thece
Tenace Tecnocrate
Tenace Tecnocrate
Messaggi: 12949
Iscrizione: lunedì 23 aprile 2007, 14:16
Distribuzione: Debian 12 (Bookworm) - KDE

Re: remount automatico

Messaggio da thece »

Conteggiare ogni minuto lo spazio disco dello share di rete non mi è mai sembrata una strategia efficiente
Bene, puoi allora puoi mettere un bel [Risolto] nel titolo del tuo primo post

:ciao:
Scrivi risposta

Ritorna a “Ubuntu su server”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 22 ospiti