"마지막"을 사용하지 않고 사용자가 마지막으로 로그인한 시간을 찾으려고 합니다. 마지막으로 재활용된 로그 파일을 사용하면 몇 주 후에 사용자의 이전 항목이 삭제됩니다.
나는 여전히 정보를 보유하고 있는 어딘가에 각 사용자에 대한 항목이 있을 것이라고 확신합니다. 유지 관리를 위해 일부 컴퓨터에 로그인하면 1년이 넘은 경우에도 항상 마지막으로 로그인한 시간이 표시됩니다.
로그인 루틴은 이 정보를 어디서 찾나요?
그건 그렇고, 내 기본 Linux 운영 체제는 Ubuntu 16.04 LTS입니다. 내가 아는 바로는 우분투는 18.04부터 큰 변화를 겪게 될 것입니다.
내가 물어봤어https://unix.stackexchange.com바꾸다http://askubuntu.com왜냐하면 다음 버전에서 이 기능이 변경되더라도 작동하는 솔루션이 있는지 확인하고 싶기 때문입니다. 그리고 최근에는 라즈베리파이에 대해 공부하고 있습니다.
문제는 Linux 기반 시스템에 관한 것입니다.
예:
오늘(2018년 3월 8일) 내 서버 중 하나에 방금 로그인했습니다. 로그인 루틴이 표시하는 내용은 다음과 같습니다.
Welcome to Ubuntu 16.04.3 LTS (GNU/Linux 4.4.0-1037-aws x86_64)
78 packages can be updated.
0 updates are security updates.
*** System restart required ***
Last login: Fri Nov 3 02:46:58 2017 from 72.43.238.238
로그 last
파일은 2월에만 기록됩니다.
$ ls -l /var/log/wtmp*
-rw-rw-r-- 1 root utmp 384 Mar 8 04:36 /var/log/wtmp
-rw-rw-r-- 1 root utmp 0 Feb 1 06:25 /var/log/wtmp.1
일부 예상 작업에는 일부 서버에서 비활성 활성 사용자를 제거하는 작업이 포함됩니다.
답변1
이 정보에 액세스하는 명령은 다음과 같습니다.lastlog
lastlog - reports the most recent login of all users or of a given user
이는 이전 사용자 로그인 시간의 데이터베이스를 사용합니다. 데이터베이스는 에 저장됩니다 /var/log/lastlog
.
예:
$ lastlog -u apollo
Username Port From Latest
apollo pts/43 127.0.0.1 Sun Feb 25 04:00:47 -0500 2018
노트:
명령 출력 listlog
과 매뉴얼 페이지를 테스트한 결과 /var/log/laslog database
영구적인 것으로 보입니다(항상 항목이 있음). 파일에 있는 누구나 항목 lastlog
에 액세스 할 수 있습니다 . /etc/passwd
애플리케이션은 lastlog
계정이 마지막으로 로그인한 시간을 보고 **Never logged in**
하거나 계정이 한 번도 로그인한 적이 없는지 보고합니다.
이 예시 항목은 6년 전으로 거슬러 올라갑니다.
lorenzo pts/6 ubunzeus Fri Apr 20 21:23:18 -0400 2012