배포판에 구애받지 않고 OS 설치 날짜를 결정하는 방법은 무엇입니까?

배포판에 구애받지 않고 OS 설치 날짜를 결정하는 방법은 무엇입니까?

저는 CrunchBang 컴퓨터를 사용하고 있으며 OS 설치 날짜를 참조로 포함해야 하는 스크립트를 작성하려고 합니다.

검색해서 이런 명령어를 찾았습니다.

ls -lct /etc | tail -1 | awk '{print $6, $7, $8}'

인쇄합니다

Mar 31 21:24

나는 그 부분을 이해하지 못했지만 tail -1$6 $7 $8이 명령이 참조하는 마지막 줄의 6번째, 7번째, 8번째 항목이라는 것을 알아낼 수 있었습니다.

그런데 명령어에 연도가 표시되지 않아 연도를 포함할 수 없다는 것을 깨달았습니다 ls -ltc.

/etc어떤 사람들은 생성된 날짜를 찾아보라고 제안했고 , 어떤 사람들은 /var/log/syslog등을 확인하라고 제안했습니다. 나는 이것이 배포판에 약간 특정할 수 있다고 생각했습니다.

OS 설치 날짜를 찾는 진정한 배포판 독립적 방법에 대한 권장 사항은 무엇입니까?

답변1

ext{2,3,4} 파일 시스템이 있고 OS를 설치할 때 루트 파일 시스템을 포맷했다고 가정한다면(그리고 삭제 없이 다른 OS에서 업그레이드를 수행하지 않은 경우) dumpe2fs를 사용할 수 있습니다.

% dumpe2fs -h /dev/mapper/vg_desktop-lv_root 2>&1 |grep 'Filesystem created'
Filesystem created:       Sat Jul 23 04:28:07 2011

답변2

나는 이것에 대한 공식적인 방법을 모른다.

내가 항상 해왔던 일은 다음과 같습니다.

touch /install-`date +"%F"` && chattr +i /install-20*

그러면 'install-'이라는 파일이 생성되고 그 뒤에 현재 날짜가 표시됩니다(오늘 실행하면 install-2012-04-03이 됩니다). 이를 변경할 수 없도록 설정하므로 실수로 삭제할 수 없습니다.

그렇다면 OS가 언제 설치되었는지 확인하기 위해 해당 파일을 살펴보는 것만으로도 충분합니다.

관련 정보