simo2409
12-05-06, 20:01
Come credo tutti sappiano i nostri mac solitamente fanno partire 3 script di manutenzione:
'daily' (/etc/periodic/daily/500.daily)
'weekly' (/etc/periodic/weekly/500.weekly)
'monthly' (/etc/periodic/monthly/500.monthly)
Amministrando altri sistemi operativi sono abituato a tenere d'occhio cosa succede sulle 'mie' macchine e così ho sentito la necessità di poter avere un 'avviso' quando i suddetti scripts vengono eseguiti (e dei relativi esiti).
Come prima cosa mi sono creato un nuovo account su gmail.com (è gratuito e offre una marea di spazio) supponiamo pippo@gmail.com, nel quale ho abilitato la possibilità di scaricare la posta tramite pop (di default è disabilitato in gmail).
In seguito ho modificato i tre script in modo tale che l'ultima azione da eseguire per ogni script fosse l'invio di una email con il contenuto del log generato dallo script.
Questi log sono:
'/var/log/daily.out' (generato dallo script daily)
'/var/log/weekly.out' (generato dal weekly)
'/var/log/monthly.out' (generato dal monthly)
E le modifiche da apportare (IN FONDO) agli script sono:
*** File '/etc/periodic/daily/500.daily' ***
#Copia/Incolla da qui
cat /var/log/daily.out | mail -s "`/bin/hostname` daily output" root
#Fino qui
*** File '/etc/periodic/weekly/500.weekly' ***
#Copia/Incolla da qui
cat /var/log/weekly.out | mail -s "`/bin/hostname` weekly output" root
#Fino qui
*** File '/etc/periodic/monthly/500.monthly' ***
#Copia/Incolla da qui
cat /var/log/monthly.out | mail -s "`/bin/hostname` monthly output" root
#Fino qui
Queste righe aggiunte dicono a os x di mandare una mail ad un account email chiamato (per convenzione) 'root'.
Per dire a mac os x che 'root' altri non è che la nostra casella gmail (pippo@gmail.com) apriamo il file /etc/aliases e modifichiamo la riga che inizia con 'root:' in modo tale che sia
root: pippo@gmail.com
e per far 'vedere' a mac os x la modifica eseguiamo da terminale
newaliases
Ovviamente al posto di pippo@gmail.com mettete la vostra email :)
Per controllare che tutto sia andanto bene eseguite da terminale (o da yasu) i 3 script di manutenzione ... e nel giro di qualche secondo dovreste trovarvi nella casella di posta (pippo@gmail.com) i vostri report :)
Tutti i file che dovete modificare richiedono permessi che un utente normale non ha, quindi per modificarli dovrete ricorrere a sudo :)
Se avete dei dubbi chiedete prima di modificare qualcosa perchè se sbagliate rischiate di danneggiare gli script di manutenzione (e non è cosa buona) ... ed ovviamente non mi assumo la responsabilità dei danni :D
Simone
p.s.
Ovviamente nessuno vi vieta di inserire in Mail.app il vostro indirizzo email (pippo@gmail.com) in modo tale da trovarvi i report direttamente in mail senza dover utilizzare l'interfaccia web di gmail :)
'daily' (/etc/periodic/daily/500.daily)
'weekly' (/etc/periodic/weekly/500.weekly)
'monthly' (/etc/periodic/monthly/500.monthly)
Amministrando altri sistemi operativi sono abituato a tenere d'occhio cosa succede sulle 'mie' macchine e così ho sentito la necessità di poter avere un 'avviso' quando i suddetti scripts vengono eseguiti (e dei relativi esiti).
Come prima cosa mi sono creato un nuovo account su gmail.com (è gratuito e offre una marea di spazio) supponiamo pippo@gmail.com, nel quale ho abilitato la possibilità di scaricare la posta tramite pop (di default è disabilitato in gmail).
In seguito ho modificato i tre script in modo tale che l'ultima azione da eseguire per ogni script fosse l'invio di una email con il contenuto del log generato dallo script.
Questi log sono:
'/var/log/daily.out' (generato dallo script daily)
'/var/log/weekly.out' (generato dal weekly)
'/var/log/monthly.out' (generato dal monthly)
E le modifiche da apportare (IN FONDO) agli script sono:
*** File '/etc/periodic/daily/500.daily' ***
#Copia/Incolla da qui
cat /var/log/daily.out | mail -s "`/bin/hostname` daily output" root
#Fino qui
*** File '/etc/periodic/weekly/500.weekly' ***
#Copia/Incolla da qui
cat /var/log/weekly.out | mail -s "`/bin/hostname` weekly output" root
#Fino qui
*** File '/etc/periodic/monthly/500.monthly' ***
#Copia/Incolla da qui
cat /var/log/monthly.out | mail -s "`/bin/hostname` monthly output" root
#Fino qui
Queste righe aggiunte dicono a os x di mandare una mail ad un account email chiamato (per convenzione) 'root'.
Per dire a mac os x che 'root' altri non è che la nostra casella gmail (pippo@gmail.com) apriamo il file /etc/aliases e modifichiamo la riga che inizia con 'root:' in modo tale che sia
root: pippo@gmail.com
e per far 'vedere' a mac os x la modifica eseguiamo da terminale
newaliases
Ovviamente al posto di pippo@gmail.com mettete la vostra email :)
Per controllare che tutto sia andanto bene eseguite da terminale (o da yasu) i 3 script di manutenzione ... e nel giro di qualche secondo dovreste trovarvi nella casella di posta (pippo@gmail.com) i vostri report :)
Tutti i file che dovete modificare richiedono permessi che un utente normale non ha, quindi per modificarli dovrete ricorrere a sudo :)
Se avete dei dubbi chiedete prima di modificare qualcosa perchè se sbagliate rischiate di danneggiare gli script di manutenzione (e non è cosa buona) ... ed ovviamente non mi assumo la responsabilità dei danni :D
Simone
p.s.
Ovviamente nessuno vi vieta di inserire in Mail.app il vostro indirizzo email (pippo@gmail.com) in modo tale da trovarvi i report direttamente in mail senza dover utilizzare l'interfaccia web di gmail :)