Archivi tag: datetime

L’importanza dell’ora di sistema per un DBMS

Se avete intenzione di modificare la data o l’ora di un sistema che ospita un DBMS (oppure entrambe) tenete bene a mente quanto segue: “Spostare il datetime in avanti non dovrebbe causare grossi problemi, ma spostarlo indietro potrebbe comportare il crash del DBMS o, ancora peggio, l’inconsistenza dei record“.

Infatti, tutti i DBMS in circolazione associano solitamente un timestamp ai vari record… ed il timestamp, ovviamente, attinge dalla data e dall’ora del SO.

Dunque pensateci bene prima di fare una modifica del genere.

Alla prossima.

Visualizzare data ed ora di un comando nel file history

Qualche tempo fa, mentre lavoravo per il progetto PIT di Selex Communications, è sorta la necessità di appurare quale degli n-NOC avesse lanciato un reboot su uno dei router di una sala operativa. Poichè l’history non riportava alcuna informazione sulla data e sull’ora di esecuzione del comando, non è stato possibile individuare con certezza il responsabile, quindi la questione si è risolta con un nulla di fatto.

Alla luce di ciò, ho deciso di scrivere questa breve guida in cui viene descritta la procedura per aggiungere il datetime al file history nell’ambito dei sistemi basati su Debian.

bash

Per prima cosa è necessario editare il file nascosto .bashrc presente nella home dell’utente:

nightfly@nightbox:~$ sudo nano .bashrc

e successivamente aggiungere la seguente direttiva:

HISTTIMEFORMAT="%d/%m/%y %T "

In particolare, ogni comando presente nel file history verrà proceduto da giorno (%d), mese (%m), anno (%y) ed ora (%T) (nel formato hh:mm:ss) di esecuzione dello stesso.

Subito dopo esserci riloggati alla macchina digitiamo il comando:

nightfly@nightbox:~$ history

il cui output sarà simile al seguente:

 1995  12/06/11 11:49:57 history
 1996  12/06/11 11:49:57 exit
 1997  12/06/11 11:26:49 history
 1998  12/06/11 11:50:17 sudo nano .bashrc
 1999  12/06/11 11:53:13 history

Ovviamente tale operazione non è retroattiva, nel senso che tutti i comandi precedenti alla modifica del file .bashrc avranno come datetime quello della modifica stessa.

A presto.