[[CRON-APT]]
[[configurazione]]
[[pax]]
[[rsync]]
Per il momento, niente di ben complicato:
ho creato un cronjob che ogni notte alle 3.33 mi salva la directory /diari in un file compresso che poi sposta in Dropbox:
crontab -e
[...]
33 3 * * * /usr/local/bin/diari_bkk.sh
francesco@serverHP:/usr/local/bin$ ls -alh | grep bkk
-rwxr-xr-x 1 root staff 258 9 juin 19:52 diari_bkk.sh
francesco@serverHP:/usr/local/bin$ cat diari_bkk.sh
#!/bin/bash
# script che mi copia ogni notte la directory /diario verso Dropbox
# lo faccio eseguire da cron ogni giorno alle 3.33
tar -cvzf diari_$(date +%j).tar.gz /home/francesco/documents/diari
mv diari_$(date +%j).tar.gz /home/francesco/Dropbox/bkk/diari
----
Ma devo pensare a qualcosa per salvare una volta la settimana o giù di lì gli altri dossier sull'Asus 1001PX, in maniera più o meno automatica.
Ecco cosa ho oggi:
francesco@crunchbang:~/backup$ ls -alh
total 7,0G
drwxr-xr-x 2 francesco francesco 4,0K juin 9 20:28 .
drwxr-xr-x 41 francesco francesco 4,0K juil. 7 20:55 ..
-rw-r--r-- 1 francesco francesco 7,0G juin 9 21:33 serverHP_home_documents.tar.bz
ma quale comando ho usato per creare quel grosso file, il 9 giugno?
----
Ricordarsi anche di fare il back up della Wiki, qui:
root@serverHP:/var/lib/dokuwiki#
Dunque ho aggiunto nel crontab questa linea:
44 4 * * * root /usr/local/bin/dokuwiki_bkk.sh
questa volta, visti i permessi della directory dokuwiki, dev'essere root ad eseguire lo script.
Adesso aggiungo il brevissimo script bash in /usr/local/bin
#!/bin/bash
# script che mi copia ogni notte la directory /dokuwiki verso Dropbox
# lo faccio eseguire da cron ogni giorno alle 4.44
tar -cvzf dokuwiki_$(date +%j).tar.gz /var/lib/dokuwiki
mv dokuwiki_$(date +%j).tar.gz /home/francesco/Dropbox/bkk/wiki
Lo script, così com'è, non funziona per via dei permessi. Chissà però che facendolo eseguire da root...
Insomma, la cosa è da studiarsi meglio.
Tra l'altro, devo ricordarmi di far ripartire cron dopo la modifica:
# /etc/init.d/crond restart
Forse la soluzione è di utilizzare la direcroty
/etc/cron.d/
e lì inserire il cron-job preceduto da root che lancia lo script... à suivre!
Incredibile: così funziona, e non devo neppure rifar partire il daemon cron, che tra l'altro ogni tanto mi dà questo errore:
francesco@serverHP:/etc/init.d$ sudo cron restart
cron: can't lock /var/run/crond.pid, otherpid may be 8807: Resource temporarily unavailable
forse devo essere in root, il sudo non basta?
----
Sul Dell T20 con Debian [fino ad aprile 2020]
francesco@DellT20:~$ crontab -e
@reboot ~/syncthing-linux-amd64-v1.1.0/./syncthing
01 04 * * 1-5 /usr/local/bin/mail_bkk.sh
#59 23 * * * ./dokuwiki_brigitta.sh
#59 02 * * * ./dokuwiki.sh
francesco@DellT20:~$ ls -lh /usr/local/bin/mail_bkk.sh
-rwxr-xr-x 1 root staff 277 avril 1 2019 /usr/local/bin/mail_bkk.sh
francesco@DellT20:~$ cat /usr/local/bin/mail_bkk.sh
#!/bin/bash
# script che mi copia ogni notte le directories
# /Mail e /.claws-mail verso ~/vecchie_mail_istituto.
# Lo faccio eseguire da cron ogni sera alle 20.
tar -cvzf mail_istituto_$(date +%j).tar.gz ~/Mail ~/.claws-mail
mv mail_istituto_$(date +%j).tar.gz ~/bkk_lavoro