it-swarm-ru.tech

Как узнать, как давно была установлена ​​система Linux?

Как узнать время с момента первой установки системы Linux, если никто не пытался ее скрыть?

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

Это скажет вам, когда была создана файловая система.

* = В первом столбце df / вы можете найти точный раздел для использования.

101
RailOcelot

Проверьте дату корневой файловой системы с помощью dumpe2fs. Я не могу думать о том, как это может быть что-то кроме даты, которую вы ищете:

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

Есть несколько дат, лежащих вокруг.

  • Все файлы имеют даты.
  • В файлах журналов есть даты.

О Debian или Ubuntu и их производных см. /var/log/installer/syslog для окончательного ответа, если он существует, он является частью журнала закапывания.

Но будьте осторожны, это не гарантировано. (см. другие ответы/комментарии по некоторым причинам, которые могут не работать.)

17
ctrl-alt-delor

В дистрибутивах Red Hat (например, CentOS, Scientific, Oracle и т.д.) Вы можете использовать:

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.

или

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

Наиболее нейтральным решением для файловой системы и дистрибуции (которое я могу придумать) является использование самого старого файла, заданного ls -lact /etc, который просматривает метаданные каждого файла на время создания. Хотя это может быть изменено, на него не влияют touch или файлы, созданные путем извлечения архивов (например, tar -p для сохранения временных отметок).

Я думаю, что лучше смотреть на файлы, чем на каталоги, так как каталоги действительно изменяют свои метаданные времени создания при изменении их содержимого (возможно, кто-то может пролить свет на то, почему это является?)

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

Системы, в которых отсутствует GNU Coreutils , должны удалить параметр --full-time (порядок сортировки все равно будет правильным, и вы все равно получите день). Вы можете получить время создания из метаданных файла с помощью stat FILE |grep Change (запустите его для самого старого файла, указанного в ls -lact).

В других системах, отличных от Linux, stat, вероятно, содержит эту информацию в несколько ином порядке, возможно, требующем других флагов. Обратите внимание, что при этом все еще используются метаданные файла, и точность не гарантируется.

Также обратите внимание, что stat from GNU Coreutils имеет время "рождения", которое имеет тенденцию быть неправильным (Linux с ext4 возвращает 0 в указывает, что это неизвестно, FreeBSD с UFS показал время "рождения" старше, чем система, которую я запрашивал). Правильное значение было указано как "Изменение" время.

Если вы хотите получить фантазию и получить просто время создания самого старого файла in/etc:

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

Эта команда работала для меня в старой системе FreeBSD (UFS, нет GNU utils):

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

(Да, это анализирует ls, и это табу, но в /etc не должно быть файлов с вредными именами.)

Вы также можете использовать stat для получения других форматов времени. Например, чтобы получить время создания в nix Epoch : stat -c %Z FILE (с GNU, обратите внимание, что %Z - это "время последнего изменения статуса", но это правильный флаг для моего Системы Linux и BSD, как отмечено выше; %W - "время рождения файла") или stat -f %c FILE (с BSD).

10
Adam Katz

В Fedora установщик anaconda хранит детали конфигурации вашей установки в домашней папке root, что может дать вам некоторое представление.

В Debian (по крайней мере, более поздние) несколько журналов установки установлены в /var/log/installer/. Старые версии хранили их в /var/log/installer.*. По крайней мере, в 2003 году.

6
rajaganesh87

По просьбе ОП.

Если вы ищете время, когда система была настроена, нет способа определить это. С одной стороны, система могла быть клонирована (не установлена), что фактически подделало бы время создания файла.

Вы можете оценить возраст путем поиска самых старых файлов.

4
Šimon Tóth

Я искал подобный инструмент, и лучшее, что я мог придумать, было ls -lAhF /etc/hostname, просто возраст файла имени хоста. Я думаю, в общем, имя хоста системы задается в начале и остается неизменным в течение срока службы системы. Дата создания файловой системы весьма полезна, но может вводить в заблуждение. Я, например, часто использую образ виртуальных машин, который я установил некоторое время назад, копирую его, меняю имя хоста и создаю из него новый сервер. Поэтому в моем случае /etc/hostname лучше, чем tune2fs -l /dev/sda1

4
user1968963

Я смотрю на самый старый файл в/boot (в верхней части "ls -ltr/boot". Часто там находится оригинальный загрузочный сектор после первой установки. В моей самой старой системе это дает дату первоначальной установки, несмотря на то, что заменил все в машина и скопировала содержимое файловой системы несколько раз :)

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

Если вы использовали LVM во время установки, вы можете проверить дату создания логического тома, сделанного в день установки, например:

$ 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 -> корневой домашний каталог создается во время установки

0
jet

Пожалуйста, запустите следующее:

  1. rpm -qa | базовая система grep

А затем используйте команду ниже.

  1. rpm -qi (результат первой команды)
0
hamid karimi

Работа с виртуальными машинами, некоторые файловые системы и т.д. Были созданы при создании образа, может быть задолго до создания экземпляра.

Отметка времени на /etc/locale.conf кажется измененным, когда экземпляр загружается во время создания экземпляра. Это может быть хорошим временем для использования, если локаль не будет изменена позже.

/etc/hostname похож, за исключением того, что мы модифицируем его в определенных ситуациях.

Любая идея относительно других файлов, которые изменяются, когда экземпляр создается, но не изменяется после этого?

0
user9114372

Некоторое время назад я обычно устанавливаю в то же время, когда Linux-дистрибутив распространяет пакет Tuptime , который хранит полезную статистику о времени работы, стартапах, остановы ...

По вашим вопросам в строке "Системная жизнь" есть эта информация. Как пример:

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

Дополнительная информация: https://github.com/rfrail3/tuptime/

0
Rfraile

Это еще один способ

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