apt-get으로 마지막으로 업데이트 한 시간 찾기 찾아야합니다 apt-get

마지막 시간을 찾아야합니다

apt-get update

내 서버에서 명령이 실행되었습니다. 이 정보를 어떻게 확인할 수 있습니까?



답변

적어도 우분투 시스템에는 다음을 포함하는 /etc/apt/apt.conf.d/15update-stamp 파일이 있습니다.

APT::Update::Post-Invoke-Success {"touch /var/lib/apt/periodic/update-success-stamp 2>/dev/null || true";};

따라서 / var / lib / apt / periodic / update-success-stamp가 있는지 확인하고 있으면 사용할 수 있습니다.

stat -c %y /var/lib/apt/periodic/update-success-stamp

마지막 “apt-get update”호출 시간을 가져 오는 명령입니다.

시스템에 적절한 구성 파일이 없으면 언제든지 추가 할 수 있습니다.


답변

apt-get update를 실행할 때 업데이트되는 / var / lib / apt / lists의 파일에서 액세스 시간을 확인할 수 있습니다. sudo를 사용하여 apt-get 업데이트를 실행 한 경우 /var/log/auth.log에 행이 기록되어 있어야합니다.


답변

apt-get update업데이트 파일을 만들거나하지 않을 수 있습니다, 그것은 마지막 때 우리는 타임 스탬프를 얻기 위해 그것을 사용할 수 있도록 캐시 디렉토리를 업데이트하지 apt-get update실행되었습니다 :

stat -c %Y /var/cache/apt/

답변

잠금 파일에서 벗어나지 마십시오. 잠금 파일은 신뢰할 수 없으며 새로운 Linux 릴리스로 시간이 지남에 따라 이동하는 경향이 있으며 많은 프로그램이 파일을 완료하면 잠금 파일을 정리 (제거)합니다.

다음 명령으로 원하는 것을 얻을 수 있습니다.

ls -lt --time-style="long-iso" /var/log/apt | grep -o '\([0-9]\{2,4\}[- ]\)\{3\}[0-9]\{2\}:[0-9]\{2\}' -m 1

이것은 하나의 두 가지 명령입니다. 첫 번째 명령의 결과는 파이프 (|) 기호를 통해 두 번째 명령으로 필터링됩니다.

첫 번째 명령에서는 “ls”를 사용하여 apt-get에 대한 액세스 기록 로그를 저장하는 디렉토리 인 / var / log / apt 디렉토리의 파일 내용을 나열합니다. “-lt”부분은 실제로 두 개의 스위치입니다. 첫 번째 “l”스위치는 “ls”에게 한 줄에 하나의 파일을 자세하게 나열하도록 지시합니다. 두 번째 “t”스위치는 “ls”에게 날짜 및 시간을 기준으로 정렬하도록 지시합니다. “–time-style”은 날짜 시간이 “YYYY-MM-DD HH : MM”형식으로 표시되도록합니다.

명령의 “grep”부분에서 “-o”스위치는 grep에게 각 행에서 정규식과 정확히 일치하는 부분 만 표시하도록 지시합니다. 여기서 사용한 정규식은 “ls”명령에 지정된 형식의 날짜 시간을 감지합니다. 또한 “grep”명령의 마지막 부분에 숫자 “1”이있는 “-m”스위치가 바로 뒤에 있다는 사실에 주목할 것입니다. 이것은 “grep”에게 첫 번째를 찾은 후 일치하는 것을 찾지 말라고 지시합니다.

요약하자면, 우리는 마지막으로 수정 된 날짜를 볼 수 있도록 apt 로그 파일 세부 정보를 나열한 다음 날짜별로 정렬하고 grep에게 첫 번째 날짜를 맨 위로 가져 오도록 지시합니다. 그것이 apt-get이 마지막으로 실행 된 날짜입니다.

그러나 악마의 옹호자를 잠시 연기하기 위해 우분투와 같은 데비안 플랫폼은 apt-get을 정기적으로 실행되는 작업으로 예약하는 것이 일반적입니다. apt-get 실행의 다른 쪽 끝에서 사람을 찾고 있다면 실제로 기계를 찾을 수 있습니다. 액세스 스탬프를 apt 로그와 일치시켜 타임 스탬프가 일치하는지 확인할 수 있습니다. 또한 사용자의 명령 기록을 어느 정도 볼 수 있습니다.

이것이 도움이되기를 바랍니다!


답변

마지막 업데이트가 패키지 목록에 적용된시기를 파악하기 위해 / var / cache / apt 파일에서 마지막 수정 시간을 확인할 수 있다고 생각합니다.

방금 이것을 테스트하고 “sudo apt-get update”를 연속으로 두 번 실행했는데 날짜가 현재 값에서 변경되지 않았지만 적용 할 새로운 업데이트가 없었고 캐시가 작동했기 때문이라고 생각합니다. 지금까지.


답변

$ ls -l /var/lib/dpkg/lock
-rw-r----- 1 root root 0 2011-11-16 09:40 /var/lib/dpkg/lock

답변

시냅틱은 히스토리 파일 (> 파일> 히스토리)을 기록하고, aptitude는 히스토리를 / var / log / aptitude에 기록하고 자동 설치된 패키지는 / var / lib / aptitude / pkgstates에 기록하므로 최신 활동을 확인할 수 있습니다.