Dopo alcuni consigli da parte di un amico, ho deciso di riprogrammare da zero il mio sistema di Backup giornaliero con Python.
Buongiorno a tutti dopo un paio di consigli da parte del mio amico sistemista, ho deciso di riprogrammare da zero il mio sistema di backup che avevo proposto in questo articolo di qualche giorno fa. Che linguaggio avrei mai potuto usare se non Python?
Ora il nuovo sistema di backup implementa alcune nuove caratteristiche oltre a quelle della versione precedente:
- Controllo dello spazio sulla partizione di backup
- Notifiche su desktop tramite Notify-Send
- Scrittura di un log in caso di errori
- Controllo passo per passo di tutte le procedure con uscita immediata in caso di errore.
Inoltre questo programma è stato un po' una sfida, dato che volevo evitare che il numero di righe di codice crescesse a dismisura cercando di evitare l'uso di variabili inutili e altri orpelli che avrebbero reso il codice più leggibile ma anche più impattante sulla memoria e sul processore.
Per un conosciutissimo problema di Notify-send ho dovuto montare una soluzione posticcia per fare in modo che le notifiche vengano visualizzate; in pratica il programma restringe temporaneamente i suoi permessi (dato che parte da root) allo scopo di richiamare notify-send sullo schermo dell'utente connesso. Dato che questa operazione, se effettuata da root, non richiede l'inserimento della password è possibile automatizzarla.
Ecco quindi il nuovo sistema di backup:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
|
Il codice funziona direttamente da console digitando:
python3 daily.py
Oppure è possibile creare un job di anacron anche se la riga che dovremo scrivere sarà un po' diversa da quella dell'ultima edizione:
1 3 backup.daily DISPLAY=":0" python3 /usr/local/bin/Backup/daily.py
Il codice è stato creato solo per pc con utente singolo, in caso sullo stesso pc fossero collegati più utenti, le notifiche potrebbero non venire visualizzate
Il codice per il backup settimanale sarà disponibile a breve.
Questo è quanto, saluti a tutti!
Penaz.