GNU/Linux >> Linux Esercitazione >  >> Linux

Ultimo comando Linux con esempi

L'ultimo comando di Linux viene utilizzato per controllare l'utente precedentemente registrato nel server. Questo comando è molto importante in Linux in quanto aiuta per l'audit trail. Supponiamo che qualcosa sia cambiato nel sistema Linux, in questa situazione non sei sicuro di chi abbia apportato le modifiche. Usando il comando 'ultimo' puoi identificare chi ha effettuato l'accesso in un determinato momento.

L'ultimo comando mostra un elenco di tutti gli utenti connessi e disconnessi da '/var/log/wtmp' da quando il file è stato creato. Wtmp è un file di registro che acquisisce e registra ogni evento di accesso e disconnessione. Questo è un file binario che non può essere visualizzato da nessun editor di testo. Questo trucco è piuttosto intelligente perché qualsiasi utente o root non può modificare il file come vuole.

L'ultimo comando fornisce informazioni sul nome di tutti gli utenti che hanno effettuato l'accesso, tty, indirizzo IP (se l'utente sta effettuando una connessione remota), data/ora e per quanto tempo l'utente ha effettuato l'accesso.

Come eseguire l'ultimo comando

Devi solo digitare 'last' sulla tua console.

Ecco l'esempio:

$ last

leni pts/0 10.0.76.162 Mon Dec 2 12:32 - 13:25 (00:53)
pungki tty1 Mon Dec 2 09:31 still logged in
reboot system boot 2.6.32-358.23.2 Mon Dec 2 09:20 - 13:25 (04:05)

Ecco come leggere le ultime informazioni:

La prima colonna - nome dell'utente che ha effettuato l'accesso.

La seconda colonna - fornirci informazioni su come l'utente è connesso (tramite pts o tty). Eccezione per l'attività di riavvio, lo stato verrà mostrato come 'avvio del sistema'.

La terza colonna - mostra da dove l'utente si è connesso. Se l'utente si connette da un computer remoto, vedrai un nome host o un indirizzo IP. Se vedi :0.0 o niente significa che l'utente è connesso tramite terminale locale. Eccezione per l'attività di riavvio, la versione del kernel verrà mostrata come stato.

Le colonne rimanenti - visualizza l'ora di accesso e il timbro dei dati quando l'attività di registro è avvenuta. I numeri tra parentesi ci dicono per quante ore e minuti è avvenuta la connessione.

pts (pseudo terminale) - significa che l'utente si connette tramite connessioni remote come SSH o telnet.
tty (telescrivente) - significa che l'utente si connette tramite connessione diretta al computer o al terminale locale.

1. Limita il numero di righe

Quando hai molte righe da mostrare, puoi limitare quante righe vuoi vedere usando -n opzione.

Nel comando successivo verranno visualizzate 3 righe a partire dall'ora corrente e indietro.

$ last -n 3

leni pts/0 10.0.76.162 Mon Dec 2 12:32 - 13:25 (00:53)
pungki tty1 Mon Dec 2 09:31 still logged in
reboot system boot 2.6.32-358.23.2 Mon Dec 2 09:20 - 13:25 (04:05)

2. Nascondi nome host/Indirizzo IP

Usa -R opzione per nascondere il nome host o l'indirizzo IP dalla stampa.

Esempio di output

$ last -R

leni pts/0 Mon Dec 2 12:32 - 13:25 (00:53)
pungki tty1 Mon Dec 2 09:31 still logged in
reboot system boot Mon Dec 2 09:20 - 13:25 (04:05)

3. Mostra il nome host nell'ultima colonna

A volte è facile stampare il nome host o l'indirizzo IP nell'ultima colonna. Per farlo, puoi usare -a opzione come mostrato di seguito:

$ last -a

leni pts/0 Mon Dec 2 12:32 - 13:25 (00:53) 10.0.76.162
pungki tty1 Mon Dec 2 09:31 still logged in :0.0
reboot system boot Mon Dec 2 09:20 - 13:25 (04:05) 2.6.32-358.23.2.el6.i686

4. Stampa l'ora e le date complete di accesso e disconnessione

Per impostazione predefinita, l'ultimo comando non mostrerà la data e l'ora complete. Puoi usare -F opzione per questo.

Ecco un esempio:

$ last -F

leni pts/0 10.0.76.162 Mon Dec 2 12:32:24 2013 - Mon Dec 2013 13:25:24 2013 (00:53)

5. Cerca tra date specifiche

Puoi utilizzare le opzioni -s (da) e -t (fino a) per cercare i log tra date specifiche.

Ad esempio, il comando seguente stamperà i registri dal 1 febbraio al 1 maggio 2019.

$sudo last -F -s 2019-02-01 -t 2019-05-01

6. Stampa nome utente specifico

Se vuoi tracciare un utente specifico, puoi stamparlo in modo specifico. Inserisci il nome dell'utente con l'ultimo comando.

$ last leni

leni tty1 Mon Dec 2 18-42 still logged in
leni pts/0 Mon Dec 2 12:32 - 13:25 (00:53) 10.0.76.162

Oppure, se vuoi sapere quando il riavvio è terminato, puoi anche visualizzarlo

$ last reboot

reboot system boot Mon Dec 2 09:20 - 16:55 (07:34)
reboot system boot Sun Dec 1 04:26 - 04:27 (00:01)
reboot system boot Wed Nov 27 20:27 - 01:24 (04:57)
reboot system boot Tue Nov 26 21:06 - 06:13 (09:06)

7. Stampa tty/pts specifici

Last può anche stampare informazioni su tty/pts specifici. Metti semplicemente il tty name o pty name dietro l'ultimo comando.

Esempi di output:

$ last tty1

pungki tty1 Mon Dec 2 09:31 still logged in
pungki tty1 Mon Dec 2 04:26 - down (00:00)
pungki tty1 Mon Dec 2 04:07 - down (00:00)
pungki tty1 Sun Dec 1 18:55 - 04:07 (09:12)
$ last pts/0

leni pts/0 10.0.76.162 Mon Dec 2 12:32 - 13:25 (00:53)
pungki pts/0 :0.0 Wed Nov 27 20:28 - down (04:56)

Quando vedi il valore in basso tra parentesi, significa che l'utente ha effettuato l'accesso da un'ora specifica fino al riavvio o allo spegnimento del sistema.

8. Usa un file diverso da /var/log/wtmp

Per impostazione predefinita, l'ultimo comando analizzerà le informazioni da '/var/log/wtmp'. Se vuoi analizzare l'ultimo comando da un altro file, puoi usare -f parametro.

Ad esempio, puoi ruotare il registro dopo una determinata condizione. Diciamo che il file precedente si chiama '/var/log/wtmp.1' .

Quindi l'ultimo comando avrà il seguente aspetto:

$ last -f /var/log/wtmp.1

9. Visualizza le modifiche al livello di esecuzione

C'è -x opzione, se desideri visualizzare le modifiche al livello di esecuzione.

Ecco un esempio di output:

pungki tty1 Mon Dec 2 19:21 still logged in
runlevel (to lvl 3) 2.6.32-358.23.2 Mon Dec 2 19:20 - 19:29 (00:08)
reboot system boot 2.6.32-358.23.2 Mon Dec 2 19:20 - 19:29 (00:08)
shutdown system down 2.6.32-358.23.2 Mon Dec 2 18:56 - 19:20 (00:23)
runlevel (to lvl 0) 2.6.32-358.23.2 Mon Dec 2 18:56 - 18:56 (00:00)
leni tty1 Mon Dec 2 18:42 - down (00:00)

Puoi vedere che ci sono due voci di livello di esecuzione. Runlevel che ha to lvl 3 entry significa che il sistema è in esecuzione in modalità console completa. Nessuna finestra X o GUI attiva. Nel frattempo, quando il sistema è spento, Linux è di livello 0. Ecco perché l'ultima mostra to lvl 0 voce.

Per visualizzare la data e l'ora dell'ultimo arresto, utilizzare il comando seguente:

#last -x | grep shutdown | head -1

10. Visualizza accessi errati

Mentre l'ultimo comando registra gli accessi riusciti, quindi il record del comando lastb ha fallito i tentativi di accesso. Devi disporre dell'accesso come root per eseguire il comando lastb. Lastb analizzerà le informazioni da /var/log/btmp.

Ecco un esempio di output dal comando lastb.

# lastb

leni tty1 Mon Dec 2 22:12 - 22:12 (00:00)
rahma tty1 Mon Dec 2 22:11 - 22:11 (00:00)

11. Visualizza l'indirizzo IP di locahost

Con -d opzione (per accessi non locali), linux memorizza non solo il nome host dell'host remoto ma anche il suo numero IP.

# last -d
root pts/1 192.168.1.100 Fri Jun 22 01:58 still logged in
root pts/0 192.168.1.100 Fri Jun 22 01:52 still logged in

12. Ruota i log wtmp

Poiché '/var/log/wtmp' registra ogni singola attività di accesso, la dimensione del file potrebbe aumentare rapidamente. Per impostazione predefinita, Linux ruoterà '/var/log/wtmp' ogni mese. Il dettaglio dell'attività di rotazione è inserito nel file /etc/logrotate.conf.

Ecco il contenuto del mio file '/etc/logrotate.conf'.

/var/log/wtmp {
monthly
create 0664 root umtp
minsize 1M
rotate 1
}

E per '/var/log/btmp', ecco la configurazione predefinita dell'attività di rotazione

/var/log/btmp {
missingok
monthly
create 0600 root umtp
minsize 1M
rotate 1
}

Cancella la cronologia degli ultimi comandi

Come sappiamo scrive su wtmp, quindi se vogliamo eliminare l'ultima cronologia, possiamo farlo tramite

#> /var/log/wtmp

Or

#> /var/log/lastlog

Conclusione

In questo tutorial, abbiamo imparato come utilizzare l'ultimo comando in Linux per controllare i log dal file wtmp. Per maggiori dettagli, visita l'ultima pagina di manuale digitando man last sulla tua console.


Linux
  1. Comando wc Linux con esempi

  2. Comando di ordinamento Linux con esempi

  3. Comando Tee Linux con esempi

  4. Comando testa di Linux con esempi

  5. Comando JQ in Linux con esempi

Comando CD Linux con esempi

Ultimo comando Linux con esempi

Comando Linux watch con esempi

Attendi comando in Linux con esempi

Comando di esportazione Linux con esempi

Comando IP Linux con esempi