GNU/Linux >> Znalost Linux >  >> Linux

Významy sloupců v posledním příkazu

Hádám, že je to tři roky starý příspěvek, ale stejně odpovím, ku prospěchu každého, kdo ho v budoucnu potká, jako jsem to nedávno udělal já.

Ze čtení jiných příspěvků a vlastního sledování výstupu po určitou dobu to vypadá, že každý řádek uvádí datum zahájení a čas relace, čas ukončení relace (ale nikoli datum ukončení) a dobu trvání relace. (jak dlouho byli přihlášeni) ve formátu jako

(dny+hodiny:minuty)

Zdá se, že uživatel restartující počítač se přihlásil při každém spuštění systému a vypnutý, když byl systém restartován nebo vypnut, a na těchto řádcích je informace „trvání relace“ délka času (dny+hodiny:minuty) ta "relace" trvala, tedy jak dlouho byl systém v provozu, než byl vypnut.

Pro mě poslední záznam o restartu zobrazuje aktuální čas jako čas „odhlášení“ a data trvání relace pro tento záznam odpovídají aktuálnímu výstupu doby provozu.

Takže na tomto řádku:

restartování systému boot 3.2.13-grsec-xxx Út 3. dubna 07:34 - 09:17 (9+01:42)

Systém byl spuštěn v úterý 3. dubna v 7:34 a odstaven byl o 9 dní a 1 hodinu a 42 minut později (12. dubna), v 9:17 ráno. (Nebo byl tento výstup shromážděn v té době a toto je poslední záznam o restartu a „reboot“ se ve skutečnosti ještě „neodhlásil“. V takovém případě se výstup změní, pokud znovu spustíte poslední příkaz.)

Proč byste měli 3. dubna 2 záznamy pro uživatele restartu, které měly oba 9 dní, je mi záhadou; moje systémy to nedělají.


Shrnutí

  • Prvním časovým razítkem se zdá být čas, kdy došlo k výpadku systému během restartu.
  • Druhé časové razítko a uplynulý čas nejsou příliš užitečné.
  • Absolvování -x možnost last může být užitečné pro zobrazení dalších událostí souvisejících s vypínáním a změnami úrovně běhu, které ovlivňují časová razítka uvedená v reboot linky. tuptime nástroj uvedený v jiné odpovědi to může objasnit, ale nedíval jsem se na to.

Podrobnosti

last manuálová stránka na CentOS 6 a 7 říká:

Pseudo user reboot se přihlásí pokaždé, když je systém restartován.

Neříká nic o tom, kdy se uživatel odhlásí, a níže uvedené důkazy naznačují, že není výslovně zaznamenán žádný čas odhlášení. reboot a shutdown manuálové stránky obsahují více podrobností o zaznamenávání změn úrovně běhu, pokud to někoho zajímá.

Z testování se zdá, že čas přihlášení pochází z pozdního procesu vypínání – není to z doby, kdy reboot byl vydán příkaz.

Proto by se zdálo, že časy odhlášení (druhé časové razítko) a dobu, po kterou byl "reboot" přihlášen (uvedeno v závorkách), by měly být pravděpodobně ignorovány.

Pokud předáte -F možnost last , zobrazí vám plné časové razítko, díky čemuž je o něco jasnější, že stroj není náhodně restartován ve stejnou dobu, jen několikrát zobrazuje přesně stejné časové razítko. Také, pokud předáte -x příznak, zobrazuje "položky vypnutí systému a změny úrovně běhu."

Zde jsem to spustil na CentOS 7 a také jsem složil -R možnost potlačit sloupec název hostitele/verze jádra. Také jsem odstranil několik nezajímavých přihlášení root:

# date ; last -x -F -R
Mon Nov 12 01:10:44 UTC 2018
root     pts/0        Mon Nov 12 00:02:57 2018   still logged in
runlevel (to lvl 3)   Sat Nov 10 17:57:29 2018 - Mon Nov 12 01:10:44 2018 (1+07:13)
reboot   system boot  Sat Nov 10 17:57:12 2018 - Mon Nov 12 01:10:44 2018 (1+07:13)
runlevel (to lvl 3)   Sat Oct 27 17:58:20 2018 - Sat Nov 10 17:57:29 2018 (13+23:59)
reboot   system boot  Sat Oct 27 17:58:03 2018 - Mon Nov 12 01:10:44 2018 (15+07:12)
runlevel (to lvl 3)   Sat Jul 21 18:14:55 2018 - Sat Oct 27 17:58:20 2018 (97+23:43)
reboot   system boot  Sat Jul 21 18:14:16 2018 - Mon Nov 12 01:10:44 2018 (113+06:56)
runlevel (to lvl 3)   Sun Nov 12 22:36:14 2017 - Sat Jul 21 18:14:55 2018 (250+19:38)
reboot   system boot  Sun Nov 12 22:35:35 2017 - Mon Nov 12 01:10:44 2018 (364+02:35)
root     pts/0        Fri Nov 10 07:13:20 2017 - crash                    (2+15:22)
runlevel (to lvl 3)   Sun Aug 27 04:15:56 2017 - Sun Nov 12 22:36:14 2017 (77+18:20)
reboot   system boot  Sun Aug 27 04:14:59 2017 - Mon Nov 12 01:10:44 2018 (441+20:55)
runlevel (to lvl 3)   Mon Aug 14 00:14:01 2017 - Sun Aug 27 04:15:56 2017 (13+04:01)
reboot   system boot  Mon Aug 14 00:13:46 2017 - Mon Nov 12 01:10:44 2018 (455+00:56)

Všech 6 „reboot“ řádků má čas odhlášení rovný aktuálnímu času.

shutdown system down  Fri Aug 11 08:05:29 2017 - Mon Aug 14 00:13:46 2017 (2+16:08)
root     pts/0        Fri Aug 11 08:05:23 2017 - down                      (00:00)
runlevel (to lvl 3)   Fri Jun 30 07:05:42 2017 - Fri Aug 11 08:05:29 2017 (42+00:59)
reboot   system boot  Fri Jun 30 07:05:27 2017 - Fri Aug 11 08:05:29 2017 (42+01:00)
[...]
root     pts/0        Fri Jun 30 05:48:16 2017 - crash                     (01:17)
root     pts/0        Tue Jun 27 04:59:56 2017 - Tue Jun 27 05:00:30 2017  (00:00)
root     pts/0        Mon Jun 26 11:20:57 2017 - Mon Jun 26 04:24:39 2017  (-6:-56)
runlevel (to lvl 3)   Mon Jun 26 11:15:13 2017 - Fri Jun 30 07:05:42 2017 (3+19:50)
reboot   system boot  Mon Jun 26 11:14:57 2017 - Fri Aug 11 08:05:29 2017 (45+20:50)
root     pts/0        Sun Jun 25 14:07:51 2017 - crash                     (21:07)
[...]
root     tty1         Thu Jun 22 13:07:42 2017 - crash                    (3+22:07)
runlevel (to lvl 3)   Thu Jun 22 13:07:07 2017 - Mon Jun 26 11:15:13 2017 (3+22:08)
reboot   system boot  Thu Jun 22 13:06:51 2017 - Fri Aug 11 08:05:29 2017 (49+18:58)
root     pts/0        Thu Jun 22 12:43:56 2017 - crash                     (00:22)
runlevel (to lvl 3)   Thu Jun 22 12:30:53 2017 - Thu Jun 22 13:07:07 2017  (00:36)
reboot   system boot  Thu Jun 22 12:30:38 2017 - Fri Aug 11 08:05:29 2017 (49+19:34)
root     pts/1        Thu Jun 22 12:26:49 2017 - crash                     (00:03)
root     pts/0        Thu Jun 22 11:55:28 2017 - crash                     (00:35)
runlevel (to lvl 3)   Thu Jun 22 11:49:53 2017 - Thu Jun 22 12:30:53 2017  (00:41)
reboot   system boot  Thu Jun 22 11:49:14 2017 - Fri Aug 11 08:05:29 2017 (49+20:16)

5 „reboot“ řádků má především dobu odhlášení rovnající se době „vypnutí systému“, která je následovala.

shutdown system down  Thu Jun 22 11:47:45 2017 - Thu Jun 22 11:49:14 2017  (00:01)
[...]
runlevel (to lvl 3)   Wed Jun 21 15:59:42 2017 - Thu Jun 22 11:47:45 2017  (19:48)
reboot   system boot  Wed Jun 21 15:59:27 2017 - Thu Jun 22 11:47:45 2017  (19:48)

"reboot" čas odhlášení odpovídá času "vypnutí systému" znovu.

shutdown system down  Wed Jun 21 15:57:58 2017 - Wed Jun 21 15:59:27 2017  (00:01)
root     pts/0        Wed Jun 21 14:27:43 2017 - down                      (01:30)
[...]
runlevel (to lvl 3)   Tue Jun 20 17:14:15 2017 - Wed Jun 21 15:57:58 2017  (22:43)
reboot   system boot  Tue Jun 20 17:14:00 2017 - Wed Jun 21 15:57:58 2017  (22:43)

Jak je uvedeno výše.

Z výsledků výše předpokládám, že pro pseudouživatele "reboot" není zaznamenán žádný explicitní čas odhlášení, takže last přiřadí mu čas odhlášení příštího "spuštění systému" nebo aktuální čas, pokud po něm nenásleduje "spuštění systému vypnutí".

Zdá se, že u položek „úroveň běhu (do lvl 3)“ je odhadnuta rozumnější doba odhlášení, ale nezdá se, že by brala v úvahu pády.


Linux
  1. Příkaz pro restart systému Linux

  2. Vyhledejte příkaz v Linuxu

  3. Existuje způsob, jak zjistit dobu běhu posledního provedeného příkazu v shellu?

  1. Zvládněte příkaz Linux ls

  2. Výstup „posledního“ příkazu?

  3. Jak vytisknout poslední řádek komprimovaného souboru gz na příkazovém řádku?

  1. $_ vs! $. Poslední argument předchozího příkazu a přesměrování výstupu?

  2. Jak získat přístup k poslednímu argumentu komentovaného příkazu?

  3. Pomocí awk vytisknete všechny sloupce od n-tého po poslední