it-swarm-eu.dev

Jak zjistím, jak dlouho byl nainstalován systém Linux?

Jak najdu čas od první instalace systému Linux za předpokladu, že se ho nikdo nepokusil skrýt?

104
user4518
tune2fs -l /dev/sda1 **OR** /dev/sdb1*  | grep 'Filesystem created:'

To vám řekne, kdy byl vytvořen systém souborů.

* = V prvním sloupci df / najdete přesný oddíl, který chcete použít.

101
RailOcelot

Zkontrolujte datum kořenového souborového systému pomocí dumpe2fs. Nemůžu opravdu vymyslet, jak by to mohlo být něco jiného než datum, které hledáte:

dumpe2fs $(mount | grep 'on \/ ' | awk '{print $1}') | grep 'Filesystem created:'
22
pboin

Kolem je pár dat.

  • Všechny soubory mají data.
  • Soubory protokolu mají v nich data.

O Debianu nebo Ubuntu a jejich derivátech viz /var/log/installer/syslog pro konečnou odpověď, pokud existuje, je součástí protokolu instilace.

Ale pozor, to není zaručeno. (viz další odpovědi/komentáře k některým z důvodů, proč nemusí fungovat.)

17
ctrl-alt-delor

V distribucích založených na Red Hat (např. CentOS, Scientific, Oracle atd.) Můžete použít:

rpm -qi basesystem
Name        : basesystem
Version     : 10.0
Release     : 7.el7
Architecture: noarch
Install Date: Mon 02 May 2016 19:20:58 BST
Group       : System Environment/Base
Size        : 0
License     : Public Domain
Signature   : RSA/SHA256, Tue 01 Apr 2014 14:23:16 BST, Key ID     199e2f91fd431d51
Source RPM  : basesystem-10.0-7.el7.src.rpm
Build Date  : Fri 27 Dec 2013 17:22:15 GMT
Build Host  : ppc-015.build.eng.bos.redhat.com
Relocations : (not relocatable)
Packager    : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>
Vendor      : Red Hat, Inc.
Summary     : The skeleton package which defines a simple Red Hat Enterprise Linux system
Description :
Basesystem defines the components of a basic Red Hat Enterprise Linux
system (for example, the package installation order to use during
bootstrapping). Basesystem should be in every installation of a system,
and it should never be removed.

nebo

rpm -q basesystem --qf '%{installtime:date}\n'
Mon 02 May 2016 19:20:58 BST
14
el_viejillo

Nejneutrálnějším řešením pro souborový systém a distribuci (s nímž mohu přijít) je použití nejstaršího souboru od ls -lact /etc, který se dívá na metadata každého souboru po dobu vytvoření. I když se to dá přehrát, není to ovlivněno touch nebo soubory vytvořenými extrahováním archivů (např. tar -p pro zachování časových razítek).

Myslím, že je nejlepší podívat se na soubory, nikoli na adresáře, protože adresáře do mění metadata svého času vytvoření, když se změní jejich obsah (možná někdo může osvětlit, proč to je?)

ls -lact --full-time /etc |tail

Systémy, které postrádají GNU Coreutils by měly odstranit --full-time možnost (pořadí řazení bude stále správné a stále získáte den). Čas vytvoření můžete získat z metadat souboru pomocí stat FILE |grep Change (spusťte to u nejstaršího souboru uvedeného v ls -lact).

Na jiných systémech jiných než Linux má stat tyto informace pravděpodobně v poněkud odlišném uspořádání, pravděpodobně vyžadujícím různé příznaky. Všimněte si, že to stále používá metadata souboru a přesnost není zaručena.

Také si všimněte, že stat from GNU Coreutils má čas "narození", který bývá špatný (Linux s ext4 výnosy 0 pro označení, že je neznámý, FreeBSD s UFS ukázal čas "narození", který je starší než systém, na který jsem se dotazoval). Správná hodnota byla uvedena jako čas „Změnit“.

Pokud chcete získat fantazii a získat jen čas vytvoření nejstaršího souboru in/etc:

ls -lact --full-time /etc |awk 'END {print $6,$7,$8}'

Tento příkaz pracoval pro mě na starém systému FreeBSD (UFS, ne GNU utils):

stat "/etc/$(ls -act /etc |tail -1)" |awk -F\" '{print $6}'

(Ano, toto analyzuje ls a to je tabu, ale v /etc.)

Můžete také použít stat k získání dalších časových formátů. Například získat čas vytvoření v nix Epoch : stat -c %Z FILE (s GNU si všimněte, že %Z je „čas poslední změny stavu“, ale to je správný příznak pro mé systémy Linux a BSD, jak bylo uvedeno výše; %W je „čas narození souboru“) nebo stat -f %c FILE (s BSD).

10
Adam Katz

Ve Fedoře ukládá instalační program anaconda konfigurační podrobnosti vaší instalace do domovské složky kořenového adresáře, což vám může poskytnout představu.

V Debianu (alespoň novějších) je několik protokolů z instalace uloženo v /var/log/installer/. Starší verze je uložily v /var/log/installer.*. To je nejméně zpět do roku 2003.

6
rajaganesh87

Na žádost OP.

Pokud hledáte čas, kdy byl systém nastaven, neexistuje způsob, jak to zjistit. Za prvé, systém mohl být klonován (není nainstalován), což by efektivně předstihlo čas vytvoření souboru.

Věk můžete odhadnout hledáním nejstarších souborů.

4
Šimon Tóth

Hledal jsem podobný nástroj a nejlepší, co jsem mohl vymyslet, bylo ls -lAhF /etc/hostname, jednoduše věk souboru hostname. Obecně si myslím, že název hostitele systému je nastaven na začátku a během života systému se nezměnil. Datum vytvoření souborového systému je užitečné, ale může být zavádějící. Například často používám obraz virtuálních strojů, který jsem nainstaloval před časem, zkopíruji ho, změníme jméno hostitele a z něj vytvořím nový server. Proto v mém případě /etc/hostname je lepší indikace než tune2fs -l /dev/sda1

4
user1968963

Dívám se na nejstarší soubor v/boot (horní část "ls -ltr/boot". Často existuje původní spouštěcí sektor od první instalace tam. V mém nejstarším systému to dává datum původní instalace, i když jsem nahradil vše v stroj a několikrát zkopírovali obsah systému souborů :)

3
pjc50
ls -alct /|tail -1|awk '{print $6, $7, $8}'
3
altmas5

Pokud jste během instalace použili LVM, můžete zkontrolovat datum vytvoření logického svazku provedeného v den instalace, například:

$ Sudo lvdisplay /dev/mapper/KUbuntu_VG-rootFS | grep Creation
  LV Creation Host, time kubuntu, 2014-12-28 20:52:15 +0100
1
SebMa

ls -alct /root -> kořenový domovský adresář je vytvořen v době instalace

0
jet

Spusťte prosím následující postup:

  1. rpm -qa | grep základní systém

A pak použijte níže uvedený příkaz.

  1. rpm -qi (výsledek prvního příkazu)
0
hamid karimi

Práce s virtuálními stroji, část souborového systému atd. Byla vytvořena při vytvoření obrazu, může trvat dlouho před vytvořením instance.

Časové razítko na /etc/locale.conf se zdá být změněno, když je instance spouštěna během vytváření instance. To může být vhodný čas, pokud se národní prostředí nezmění později.

The /etc/hostname je podobné, kromě toho, že jej v určitých situacích upravujeme.

Máte představu o jiných souborech, které se změní, když se instance vytvoří, ale poté se nezmění?

0
user9114372

Od té doby obvykle instaluji v době, kdy linux distribuuje balíček nazvaný Tuptime , který uchovává užitečné statistiky o době běhu, spuštění, vypínání ...

Řádek „Životnost systému“ obsahuje tyto informace pro vaše dotazy. Jako příklad:

System startups:    110   since   10:15:27 08/08/15
System shutdowns:   107 ok   -   2 bad
System uptime:      4.04 %   -   1 days, 22 hours, 4 minutes and 44 seconds
System downtime:    95.96 %   -   45 days, 13 hours, 57 minutes and 30 seconds
System life:        47 days, 12 hours, 2 minutes and 15 seconds

Largest uptime:     2 hours, 10 minutes and 44 seconds   from   20:49:17 09/08/15
Shortest uptime:    9 seconds   from   10:23:36 08/08/15
Average uptime:     25 minutes and 8 seconds

Largest downtime:   7 days, 10 hours, 17 minutes and 26 seconds   from   06:09:45 10/08/15
Shortest downtime:  15 seconds   from   19:27:24 19/09/15
Average downtime:   9 hours, 56 minutes and 42 seconds

Current uptime:     23 minutes and 33 seconds   since   21:54:09 24/09/15

Další informace: https://github.com/rfrail3/tuptime/

0
Rfraile

To je jiný způsob

# rpm -q -last basesystem
basesystem-10.0-7.el7.noarch                  Tue 11 Jul 2017 03:57:52 PM UTC
0
Shirish Shukla