아무도 그것을 숨기려고하지 않았다면 리눅스 시스템이 처음 설치된 이후의 시간을 어떻게 알 수 있습니까?
아무도 그것을 숨기려고하지 않았다면 리눅스 시스템이 처음 설치된 이후의 시간을 어떻게 알 수 있습니까?
답변:
tune2fs -l /dev/sda1 **OR** /dev/sdb1* | grep 'Filesystem created:'
파일 시스템이 생성 된 시점을 알려줍니다.
* = 첫 번째 열 df /
에서 사용할 정확한 파티션을 찾을 수 있습니다.
/dev/sda1
또는 이와 비슷한 것 ( df /
첫 번째 열에 표시되는 것)이지만 원칙은 소리입니다.
dumpe2fs를 사용하여 루트 파일 시스템의 날짜를 확인하십시오. 나는 그것이 당신이 찾고있는 날짜가 아닌 다른 방법이 될 수 있다고 생각할 수 없습니다.
dumpe2fs $(mount | grep 'on \/ ' | awk '{print $1}') | grep 'Filesystem created:'
tune2fs -l
몇 날짜가 누워있다.
데비안 또는 우분투와 그 파생물에서 /var/log/installer/syslog
정답이 있는지 확인하십시오.
그러나 이것이 보장되지는 않습니다. (작동하지 않을 수있는 몇 가지 이유는 다른 답변 / 설명을 참조하십시오.)
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
rpm -qi
저를주는 Install Date: Mon 07 Jul 2014 03:20:44 PM UTC
반면,이 tune2fs
말한다 Filesystem created: Sat Dec 20 23:41:41 2014
?
파일 시스템 및 배포에 가장 중립적 인 솔루션은 내가 제공 할 수있는 가장 오래된 파일을 사용 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
GNU Coreutils의 "Birth"시간은 틀린 경향이 있습니다 ( ext4 가있는 Linux는 0
알 수 없음을 나타내며, UFS를 사용 하는 FreeBSD 는 내가 쿼리 한 시스템보다 "Birth"시간이 더 길었습니다). 올바른 값은 "변경"시간으로 표시되었습니다.
당신이 공상 얻고 싶어하면 바로 가장 오래된 파일의 생성 시간 /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
다른 시간 형식을 얻는 데 사용할 수도 있습니다. 예를 들어 Unix epoch 에서 생성 시간을 얻으려면 : stat -c %Z FILE
(GNU의 경우 %Z
"마지막 상태 변경 시간"이지만 위에서 언급 한 것처럼 Linux 및 BSD 시스템에 올바른 플래그입니다. %W
"파일 생성 시간" ) 또는 stat -f %c FILE
(BSD 사용).
Fedora에서 anaconda 설치 관리자는 설치의 구성 세부 정보를 루트의 홈 폴더에 저장하므로 아이디어를 얻을 수 있습니다.
데비안 (최소한 최신 로그)에서는 설치의 여러 로그가에 저장됩니다 /var/log/installer/
. 이전 버전은에 저장했습니다 /var/log/installer.*
. 적어도 2003 년으로 거슬러 올라갑니다.
OP에서 요청한대로.
시스템을 설치할 때 시간을 찾고 있다면이를 확인할 수있는 방법이 없습니다. 하나는 시스템이 복제되어 (설치되지 않은) 파일 생성 시간을 효과적으로 가짜로 만드는 것일 수 있습니다.
가장 오래된 파일을 검색하여 나이를 추정 할 수 있습니다.
나는 비슷한 도구를 찾고 있었고, 가장 좋은 것은 ls -lAhF /etc/hostname
단순히 호스트 이름 파일의 나이였습니다. 일반적으로 시스템의 호스트 이름은 처음에 설정되어 있으며 시스템 수명 동안 변경되지 않은 상태로 남아 있다고 생각합니다. 파일 시스템 생성 날짜는 특히 유용하지만 오해의 소지가 있습니다. 예를 들어, 종종 얼마 전에 설치 한 가상 머신 이미지를 사용하여 복사하고 호스트 이름을 변경하고 새 서버를 만듭니다. 따라서, 내 경우에는 /etc/hostname
보다 더 나은 표시이다tune2fs -l /dev/sda1
ls -alct /root
-> 루트 홈 디렉토리는 설치시 작성됩니다
/
커널이에 보관되어 있지 않으면 시간 이 약간 변경 될 가능성이 적지 /
만 여전히 좋은 지표는 아닙니다. (알림 : -c
생성 시간이 아니라 메타 데이터 변경 시간입니다. 대부분의 유닉스 파일 시스템은 파일의 생성 시간을 저장하지 않습니다.)
/root
자연스럽게 변경 될 수 있습니다 (예 : 누군가 파일을 만들 때마다).
얼마 전부터, 나는 보통 리눅스 배포판이 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
간단한 파일을 찾았습니다. 이름은 "1"입니다. 아마도 첫 번째 파일 일 것입니다.
▶ ls -lact --full-time /1
-rw-r--r--. 1 root root 0 2017-03-23 12:02:46.880994133 +0800 /1