linux user group brescia

immagine del castello

Archivio della mailing list

[LugBS] Ubuntu e crontab

Claudio Moretti flyingstar16 a gmail.com
Mer 11 Dic 2013 22:52:33 UTC
Se il tuo computer è in locked screen, il server X c'è per forza; l'unico
caso che mi viene in mente per il quale non potrebbe funzionare è se per
qualche motivo X crasha..

Se vuoi un consiglio, senza star li a diventare matto facendo check sul
server X, fai loggare lo script in un file da qualche parte, e se hai paura
che il file di log diventi troppo grande basta che usi logrotate per far
ruotare i log (a seconda di quanta roba va nel log, tieni soltanto che so,
un mese di log? Una settimana? Quello scegli tu.)

La configurazione di logrotate è (se non sbaglio) in /etc/logrotate.d/ e ci
sono una serie di file "di sistema" li dentro. Fai una copia, chiamala come
vuoi (e.g. script-diego.conf) e modifica il file per farlo ruotare a
piacere. La sintassi è semplicissima, quindi non dovresti avere problemi :)

In man logrotate c'è questo

 /var/log/messages {
           rotate 5
           weekly
           postrotate
               /usr/bin/killall -HUP syslogd
           endscript
       }


A te tutto quello che serve è qualcosa tipo

 /path_del_log/nome_del_file {
           rotate 5 # Tiene 5 file
           weekly # Ruotandoli una volta a settimana
       }

ecc. ecc.




2013/12/11 Diego Monselice <info a diegomonselice.it>

> Be' ma... così a occhio direi che non dovrebbe mai accadere, considerando
> che alle ore 20 il mio PC è acceso anche se con Unity in "locked screen".
> Sbaglio?
>
>
>
> Il 11/12/2013 21:51, Maurizio Paolini ha scritto:
>
>  On Wed, Dec 11, 2013 at 09:18:04PM +0100, Diego Monselice wrote:
>>
>>> grande prof! Effettivamente non funziona se prima lancio il comando
>>> export DISPLAY="" e da per l'appunto segmentation fault...
>>>
>>> Grazie alla sua dritta ho risolto in maniera molto easy... nello
>>> script BASH che lancia il python ho inserito export DISPLAY=":1" e
>>> ora magicamente funziona!!!
>>>
>> Attento pero': potrebbe non funzionare piu' se non trova un server X
>> utilizzabile. Dovresti fare una prova in cui chiudi proprio il server
>> X (tipo "telinit 2" o "telinit 3" ora non so su ubuntu)
>>
>> mp
>>
>>
>>>
>>> Il 11/12/2013 20:47, Maurizio Paolini ha scritto:
>>>
>>>> Per capire se e' colpa della grafica X (facile che sia quello il
>>>> problema)
>>>> puoi eliminare la variabile DISPLAY ed eseguire a mano il comando:
>>>>
>>>> $ export DISPLAY=""
>>>> $ <comando>
>>>>
>>>> Se cosi' da lo stesso errore, almeno hai modo di sperimentare senza
>>>> impazzire con il cron.
>>>>
>>>> Se non c'e' modo di disabilitare la grafica X la soluzione diventa
>>>> complessa (attivare un server X finto, ad esempio)
>>>>
>>>> mp
>>>>
>>>> On Wed, Dec 11, 2013 at 08:11:35PM +0100, Diego Monselice wrote:
>>>>
>>>>> Ehm... nella mia prima mail che qui sotto non compare, spiegavo
>>>>> appunto che lo script dopo aver fatto dei controlli, mostra a video
>>>>> una finestra di dialogo (librerie gtk). Una sorta di alert.
>>>>>
>>>>> Credo sia proprio quello il problema. Eventualmente, soluzioni?
>>>>>
>>>>>
>>>>> Il 11/12/2013 20:07, Claudio Moretti ha scritto:
>>>>>
>>>>>> Domanda scema: lo script che stai cercando di eseguire usa qualche
>>>>>> feature grafica?
>>>>>>
>>>>>>
>>>>>> 2013/12/11 Diego Monselice <info a diegomonselice.it
>>>>>> <mailto:info a diegomonselice.it>>
>>>>>>
>>>>>>     Aggiornamento:
>>>>>>
>>>>>>     ho riprovato e l'errore ora ha un Title differente:
>>>>>>     python2.7 crashed with SIGFPE in g_cclosure_marshal_VOID__
>>>>>> BOXEDv()
>>>>>>
>>>>>>     Non ci sto capendo nulla...
>>>>>>
>>>>>>     help...
>>>>>>
>>>>>>
>>>>>>     Il 11/12/2013 18:11, Diego Monselice ha scritto:
>>>>>>
>>>>>>         Ho provato ad impostarlo a 2 minuti, ho provato a sostituire
>>>>>>         Python ecc... con il percorso ad uno script bash che fa
>>>>>>         partire lo script python e non ha fatto nulla. Il tutto
>>>>>>         funziona se lanciato manualmente. Risultato di ciò che ho
>>>>>>         fatto, un bel messaggino di crash (<Ubuntu 13.04> ha
>>>>>>         riscontrato un errore interno) il cui Title ha come valore
>>>>>>         "python2.7 crashed with SIGSEGV in
>>>>>>         gdk_window_enable_synchronized_configure()". Tra le varie
>>>>>> info
>>>>>>         che vedo, sotto a SegvAnalysis leggo:
>>>>>>
>>>>>>         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>>>>>         Segfault happened at: 0x7f7df1848d0e
>>>>>>         <gdk_window_enable_synchronized_configure+14>: mov
>>>>>> 0x18(%rdi),%rbx
>>>>>>         PC (0x7f7df1848d0e) ok
>>>>>>         source "0x18(%rdi)" (0x00000018) not located in a known VMA
>>>>>>         region (needed readable region)!
>>>>>>         destination "%rbx" ok
>>>>>>         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>>>>>
>>>>>>         E se provassi ad usare le PyQt al posto di GTK? Secondo voi
>>>>>>         può essere quello la causa?
>>>>>>
>>>>>>
>>>>>>         Il 11/12/2013 16:36, Marco Manenti ha scritto:
>>>>>>
>>>>>>             Ciao, un paio di cose.. per provare non puoi farlo prima
>>>>>>             delle 20? tipo impostare l'orario per i 5 minuti
>>>>>> successivi?
>>>>>>             L'utente che ha creato il cron è lo stesso che ha fatto il
>>>>>>             login?
>>>>>>             prova a dare il percorso completo di python (
>>>>>>             /usr/bin/python )
>>>>>>
>>>>>>             ciao
>>>>>>
>>>>>>
>>>>>>
>>>>>>             Il giorno 11 dicembre 2013 13:56, Diego Monselice
>>>>>>             <info a diegomonselice.it <mailto:info a diegomonselice.it>
>>>>>>             <mailto:info a diegomonselice.it
>>>>>>             <mailto:info a diegomonselice.it>>> ha scritto:
>>>>>>
>>>>>>                 Ciao caro, ho controllato in /var/log/syslog e non ho
>>>>>>             trovato
>>>>>>                 record alle ore 20, per cui suppongo che o si siano
>>>>>>             già eliminati
>>>>>>                 tali eventi (e mi pare la possibilità più plausibile
>>>>>>             considerando
>>>>>>                 che i primi log sono di stamattina), oppure non è
>>>>>>             stato proprio
>>>>>>                 lanciato
>>>>>>
>>>>>>                 Ho provato ora a inserire MAIL= ecc... in crontab.
>>>>>>
>>>>>>                 Per quanto riguarda la tua ipotesi relativa allo
>>>>>>             sganciamento dal
>>>>>>                 terminale direi che non credo sia quello, considerando
>>>>>>             che lo
>>>>>>                 script viene correttamente eseguito anche lanciandolo
>>>>>>             da GUI con
>>>>>>                 un doppio click.
>>>>>>
>>>>>>                 Ora attendo la mail di stasera h 20:00 :-D
>>>>>>
>>>>>>                 Grazie per ora
>>>>>>
>>>>>>
>>>>>>
>>>>>>                 Il 11/12/2013 09:24, Andrea Gelmini ha scritto:
>>>>>>
>>>>>>                     Il 10 dicembre 2013 23:40, Diego Monselice
>>>>>>                     <info a diegomonselice.it
>>>>>>             <mailto:info a diegomonselice.it>
>>>>>>             <mailto:info a diegomonselice.it
>>>>>>             <mailto:info a diegomonselice.it>>> ha
>>>>>>                     scritto:
>>>>>>
>>>>>>                         0 20 * * * python /home/diego/script.py
>>>>>>
>>>>>>                     Un paio di idee:
>>>>>>                     a) controlla in /var/log/syslog cosa ti dice cron
>>>>>>             quando cerca di
>>>>>>                     eseguire il comando;
>>>>>>                     b) se setti nel crontab il campo
>>>>>>             MAILTO=gino a example.com <mailto:gino a example.com>
>>>>>>                     <mailto:gino a example.com
>>>>>>             <mailto:gino a example.com>> con la tua
>>>>>>                     email, l'eventuale output dell'esecuzione ti
>>>>>>             arriva via email.
>>>>>>
>>>>>>                     Partirei da qui.
>>>>>>                     A seconda di cosa fai nello script, potrebbe
>>>>>>             essere che
>>>>>>                     sganciato da
>>>>>>                     un terminale non funzioni.
>>>>>>                     E' da indagare.
>>>>>>                     Alla cieca ti direi che una via per risolvere è di
>>>>>>             appoggiarsi al
>>>>>>                     classico sistema ti notifiche supportato dai vari
>>>>>>             window manager.
>>>>>>
>>>>>>                     Ciao,
>>>>>>                     Gelma
>>>>>>
>>>>>>
>>>>>>                 --     Info/Lamentele/Segnalazioni:
>>>>>>             andrea.gelmini a gmail.com <mailto:andrea.gelmini a gmail.com
>>>>>> >
>>>>>>                 <mailto:andrea.gelmini a gmail.com
>>>>>>             <mailto:andrea.gelmini a gmail.com>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>     --     Info/Lamentele/Segnalazioni: andrea.gelmini a gmail.com
>>>>>>     <mailto:andrea.gelmini a gmail.com>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>  --
>>>>> Info/Lamentele/Segnalazioni: andrea.gelmini a gmail.com
>>>>>
>>>> --
>>> Info/Lamentele/Segnalazioni: andrea.gelmini a gmail.com
>>>
>>
> --
> Info/Lamentele/Segnalazioni: andrea.gelmini a gmail.com
>
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lugbs.linux.it/pipermail/lug/attachments/20131211/033e3cef/attachment-0001.html>


Maggiori informazioni sulla lista Lug