OS 설치 날짜를 결정하는 배포 불가지론 적 방법은 무엇입니까?


10

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
/etc제작 일을 확인하는 것이 왜 배포판에 해당 한다고 생각 하십니까?
Kevin

최근에 gobolinux와 같은 다른 파일 시스템 계층 구조를 가진 배포판이 있으며 gobolinux와 유사한 배포판이 더있을 수 있다는 인상을 받았습니다.
Animesh

1
ext 파일 시스템을 가정하는 것보다 / etc 검사가 더 이식성이 있다고 생각합니다. 또는에서 가장 오래된 디렉토리를 확인하십시오 /.
Kevin

1
완벽을 기하기 위해 ls의 출력은 6 개월 미만의 시간과 6 개월 이상의 연도를 보여줍니다.
Random832

@Kevin 권한을 유지하면서 아카이브의 압축을 풀면 가장 오래된 디렉토리 / 파일이 시스템 설치 날짜보다 오래 될 수 있습니다.
scai

답변:


8

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

명령을 실행할 때 아무 일도 일어나지 않았기 때문에 출력이 어딘가 또는 파일로 리디렉션 되었습니까?
Animesh

/ dev / mapper / vg_desktop-lv_root 대신 루트 파일 시스템 용 장치를 제공해야합니다. 출력을 확인하십시오 df /. 나는 당신이 그것을 자동화 할 수 있다고 확신합니다.
jsbillings

나는 명령을 입력 할 때 _대신에 있음을 깨달았습니다 -. 나는 지금 날짜를 얻는다. 감사.
Animesh

또는 백업, 재 포맷 및 복원하지 않았습니다.
psusi

3
내 파일 시스템은 reiserfs입니다. Imho, / etc를 찾는 것이 더 좋은 방법입니다.
사용자가 알 수 없음

0

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

내가 항상 한 일은 :

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

그러면 'install-'이라는 이름의 파일과 현재 날짜 (오늘 실행 된 경우 install-2012-04-03이 됨)와 함께 파일이 변경 불가능으로 설정되어 실수로 삭제할 수 없습니다.

그렇다면 OS가 언제 설치되었는지 확인하기 위해 해당 파일을 보는 것입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.