Pagina 1 di 1
[CRON] Eliminare file ogni tot da una cartella
Inviato: 21 mar 2017, 22:33
da nobo_
Salve, come da titolo vorrei utilizzare cron per eliminare alcuni files da una cartella specifica del NAS.
Niente di più semplice, uso questo comando inserito in un file .sh :
find /home/admin/*.pdf -ctime 5 -exec rm {} \; (<-- chiaramente ho provato il find senza exex e matcha, in piu il comando funziona anche con exec da CLI)
Fin qui tutto ok. Ora ho inserito questa riga di testo
54 16 * * * /root/auto_delete_file_videotemp.sh <------ nel file /etc/config/crontab con un editor e non con crontab -e che non funziona.
[/share/homes] # crontab -e
crontab: can't change directory to '/Apps/opt/var/spool/cron/crontabs': No such file or directory <--- non esiste questa directory
Ma questo non è importante.
poi ho dato il seguente comando:
/etc/init.d/crond.sh restart
Stopping periodic command scheduler: crond.
Starting periodic command scheduler: crond.
Attendo l'orario impostato nel cron per verificare il funzionamento.
Non funziona!
dove sbaglio? Grazie.
Re: [CRON] Eliminare file ogni tot da una cartella
Inviato: 22 mar 2017, 07:10
da merluzzo
Prima che diventi matto tieni presente una cosa:
non c'e' bash sul nas ma busybox e non e' neanche l'ultima versione quindi tanti comandi hanno funzionalita' ridotte.
Re: [CRON] Eliminare file ogni tot da una cartella
Inviato: 22 mar 2017, 09:28
da nobo_
merluzzo ha scritto:Prima che diventi matto tieni presente una cosa:
non c'e' bash sul nas ma busybox e non e' neanche l'ultima versione quindi tanti comandi hanno funzionalita' ridotte.
Si infatti prima di aggiornarlo (busybox) find non riconosceva -exec. Cmq poi è andato bene. Il comando funziona bene da CLI.
Il mio problema è cron. Come mai da cron non mi funziona?
Azz ho controllato ora lo script bash che avevo creato è sparito. I file che creo spariscono.
Re: [CRON] Eliminare file ogni tot da una cartella
Inviato: 22 mar 2017, 11:18
da merluzzo
- tieni sempre conto che crontab e' busybox
- il nas cancella ad ogni riavvio i files aggiunti (vds autorun.sh)
- hai controllato i logs?
Re: [CRON] Eliminare file ogni tot da una cartella
Inviato: 22 mar 2017, 12:46
da nobo_
merluzzo ha scritto:- tieni sempre conto che crontab e' busybox
- il nas cancella ad ogni riavvio i files aggiunti (vds autorun.sh)
- hai controllato i logs?
Codice: Seleziona tutto
[/var/log] # ll
drwxr-xr-x 5 admin administ 520 Mar 22 07:05 ./
drwxrwxrwx 11 admin administ 780 Mar 22 12:41 ../
-rw-r--r-- 1 admin administ 25.6k Mar 22 12:41 SDMD.log
drwx------ 4 admin administ 80 Mar 22 07:03 cores/
drwxr-xr-x 2 admin guest 100 Mar 22 07:02 cups/
-rw-r--r-- 1 admin administ 5.1k Mar 22 07:04 hal_app.log
---Sr--r-- 1 admin administ 3.5k Mar 22 07:02 hal_daemon.log
-rw-r--r-- 1 admin administ 5.2k Mar 22 07:03 hal_lib.log
-rw-r--r-- 1 admin administ 10.1k Mar 22 07:02 hal_lib.log.bak
-rw-r--r-- 1 admin administ 497 Mar 22 07:02 hal_util_net.log
-rw-r--r-- 1 admin administ 2.0k Mar 22 07:05 log.nmbd
-rw-r--r-- 1 admin administ 746 Mar 22 10:13 log.smbd
-rw-r--r-- 1 admin administ 0 Mar 22 07:04 mcelog
-rw-r--r-- 1 admin administ 0 Mar 22 07:05 messages
-rw-r--r-- 1 admin administ 4.1k Mar 22 11:37 mymediadbcmd.log
-rw-r--r-- 1 admin administ 0 Mar 22 07:03 mymediadbcmd.log.bak
-rw-r--r-- 1 admin administ 54 Mar 22 07:03 mymediadbserver.log
-rw-r--r-- 1 admin administ 0 Mar 22 07:03 mymediadbserver.log.bak
drwxr-xr-x 2 admin administ 100 Mar 22 07:04 network/
-rw------- 1 admin administ 332 Mar 22 07:03 php-fpm.log
-rw-r--r-- 1 admin administ 306 Mar 22 07:01 qha.log
-rw-r--r-- 1 admin administ 4.1k Mar 22 07:19 redis-server.log
lrwxrwxrwx 1 admin administ 20 Mar 22 07:00 samba -> /usr/local/samba/var/
-rw-r--r-- 1 admin administ 546.7k Mar 22 12:41 storage_lib.log
-rw-r--r-- 1 admin administ 2.2k Mar 22 07:01 storage_util.log
-rw-r--r-- 1 admin administ 378 Mar 22 07:04 udev.log
non so in quale log vedere.
in qualsiasi altra distro linux sarebbe stato uno scherzo fare quello che voglio fare io, ma ci deve essere per forza un modo !
si ma se crei lo script e lo metti in /share/CACHEDEV1_DATA/ dovrebbe rimanere giusto?
Re: [CRON] Eliminare file ogni tot da una cartella
Inviato: 22 mar 2017, 17:25
da merluzzo
1) cominciare da dmesg o /var/log/messages?
2) si lo so, ma qnap usa linux secondo il suo metro..
3) si, riscrive solo il sistema ad ogni riavvio (vds autorun.sh)
Re: [CRON] Eliminare file ogni tot da una cartella
Inviato: 22 mar 2017, 18:50
da nobo_
merluzzo ha scritto:1) cominciare da dmesg o /var/log/messages?
2) si lo so, ma qnap usa linux secondo il suo metro..
3) si, riscrive solo il sistema ad ogni riavvio (vds autorun.sh)
ma dmesg logga anche eventuali errori derivanti da comandi eseguiti da crontab?
pensavo fosse solo un log dello startup del sistema op.
provo a dare un occhiata ma non penso che troverò nulla li.
Codice: Seleziona tutto
[~] # dmesg | grep delete
[~] # dmesg | grep *.sh
[~] # dmesg | grep crontab
[~] # dmesg | grep cron
[~] #
Sarebbe interessante anche copiare il .bash_history nell'HD vero e proprio per non perdere i comandi inviati nella console.
Vabbè cmq la prova che farò adesso è copiare lo script nella cartella /share/CACHEDEV1_DATA/script e poi provare ad avviarlo da cron in questo percorso.
Se non funziona non saprei dove sbattere la testa.
Grazie.
Re: [CRON] Eliminare file ogni tot da una cartella
Inviato: 23 mar 2017, 06:50
da merluzzo
nobo_ ha scritto:
Se non funziona non saprei dove sbattere la testa.
Grazie.
dmesg l'ho citato per sicurezza non avendo trovato (cosi' al volo) un riferimento al file log nelle configurazioni
Io alla fine ho lasciato perdere busybox, imho il gioco non vale la candela.. salvo non sia una consulenza lautamente retribuita