FONTI:
NON USARE QUESTA PROCEDURA CON LA DISTRO RASPBIAN JESSIE funziona solo ed esclusivamente con la distro Raspbian Whezzy
Ramlog, è un utile tool per evitare di far lavorare troppo la sd, sperando di allungarle la vita. Questo servizio all'avvio crea un disco virtuale in memoria (ramdisk), vi copia i files contenuti in /var/log e poi lo monta al posto di /var/log, in questo modo tutte le modifiche ai files verranno effettuate in ram senza continuare a scrivere sulla scheda SD, rischiando di danneggiarla.
Inoltre in fase di spegnimento, il sistema scriverà su sd i files contenuti nella /var/log in memoria, in modo da non perdere nemmeno in caso di riavvio i nostri log.
Per installarlo eseguire da terminale:
sudo apt-get install lsof rsync wget http://www.tremende.com/ramlog/download/ramlog_2.0.0_all.deb sudo dpkg -i ramlog_2.0.0_all.deb rm ramlog_2.0.0_all.deb
Ora dobbiamo modificare alcuni files di configurazione:
sudo nano /etc/init.d/ramlog
Ctrl+O per salvare e Ctrl+X per uscire
Aggiungiamo le seguenti due linee nella parte iniziale del file di configurazione (la parte che inizia con: #BEGIN INIT INFO). Includere anche i caratteri #
# X-Start-Before: rsyslog # X-Stop-After: rsyslog
Ora editiamo il file /etc/init.d/rsyslog
sudo nano /etc/init.d/rsyslog
aggiungiamo ‘ramlog’ alla fine di queste due linee esistenti:
# Required-Start: $remote_fs $time ramlog # Required-Stop: umountnfs $time ramlog
Ctrl+O per salvare e Ctrl+X per uscire
Dopo aver modificato i file di configurazione, eseguire:
sudo insserv sudo reboot
Dopo il riavvio del sistema, riavviamo un’altra volta:
sudo reboot
Dopo il secondo riavvio controlliamo eventuali errori nel file log di ramlog :
sudo cat /var/log/ramlog
Se troviamo una riga tipo la seguente:
Aug 09 10:52:29 Starting ramlog-tmpfs 2.0.0: [ OK ]
significa che ramlog è partito e funziona regolarmente
Potrebbero invece esserci dei messaggi di errore in quanto è necessario che Ramlog sia vviato prima di altri demoni. Per esempio Samba. In tal caso è necessario editare il file appropriato in /etc/init.d
Per esempio per Samba:
sudo nano /etc/init.d/samba
Aggiungere 'ramlog' alla fine delle seguenti linee:
# Required-Start: $network $local_fs $remote_fs ramlog # Required-Stop: $network $local_fs $remote_fs ramlog
Queste linee assicurano che ramlog sia avviato prima che l'altro demone (come samba) venga avviato. Dopo aver modificato i file di configurazione, eseguire nuovamente:
sudo insserv sudo reboot
Dopo il riavvio possiamo anche controllare le partizioni montate per verificare che ramlog sia effettivamente partito. Da terminale digitiamo:
df
e dovremmo vedere la partizione ramlog-tmpfs:
Per disabilitare RAMLog in caso di necessità:
sudo /etc/init.d/ramlog disable
Una ulteriore protezione per evitare la corruzione della scheda SD è di disabilitare lo swapping
Il Raspberry usa dphys-swapfile per controllare lo swapping. Questo crea dinamicamente una partizione di swap. Utilizzeremo questo tool per disabilitare lo swap.
Eseguire i seguenti comandi da terminale per disabilitare lo swap:
sudo dphys-swapfile swapoff sudo dphys-swapfile uninstall sudo update-rc.d dphys-swapfile remove
Fatto ciò potremo eseguire il commando free -m per verificare l’uso della memoria:
Troveremo che lo swap è stato disabilitato.
Anche in caso di riavvio questa soluzione sarà permanente.
Se utilizzate il backup ftp con il comando lftp, ad ogni esecuzione lftp creerà un file di log nella cartella
Se volete spostare la destinazione di tale file nella cartella /var/log/lftp in modo che si trovi in ramdisk e non vengano effettute scritture sulla sd sarà necessario editare il file /etc/lftp.conf ed aggiungere alla fine le righe:
## LOG FILE set xfer:log true set xfer:log-file /var/log/lftp/transfer_log
Sarà inoltre necessario ceare la cartella /var/log/lftp con il comando
md /var/log/lftp
Se invece volete proprio disabilitare il log:
## LOG FILE set xfer:log false