Ubuntu와 Cent OS가 맨 페이지에 지정된 시간 대신 지정된 시간에 로그인을 last -t
표시하여 실제로 작동한다는 점에 약간 놀랐습니다 .up till
as of
Ubuntu 매뉴얼 페이지는 다음과 같습니다.
-t YYYYMMDDHHMMSS
Display the state of logins as of the specified time. This is useful, e.g., to determine easily who was logged
in at a particular time -- specify that time with -t and look for "still logged in”.
그러나 실제 동작은 다음과 같습니다.
# last -F -t 20150107000000 | grep pts
root pts/2 jp001.solidtunne Tue Jan 6 18:39:05 2015 - Tue Jan 6 18:40:34 2015 (00:01)
root pts/2 jp001.solidtunne Tue Jan 6 18:37:24 2015 - Tue Jan 6 18:37:41 2015 (00:00)
root pts/2 jp001.solidtunne Tue Jan 6 16:42:33 2015 - Tue Jan 6 16:43:49 2015 (00:01)
root pts/2 jp001.solidtunne Tue Jan 6 13:03:26 2015 - Tue Jan 6 13:07:02 2015 (00:03)
root pts/2 jp001.solidtunne Tue Jan 6 09:03:24 2015 - Tue Jan 6 09:03:54 2015 (00:00)
root pts/2 jp001.solidtunne Tue Jan 6 04:53:54 2015 - Tue Jan 6 04:54:07 2015 (00:00)
root pts/4 sf003.solidtunne Fri Jan 2 15:23:12 2015 - Fri Jan 2 15:23:51 2015 (00:00)
root pts/0 hk000.solidtunne Thu Jan 1 16:40:55 2015 - Thu Jan 1 16:41:21 2015 (00:00)
root pts/2 hk000.solidtunne Thu Jan 1 15:41:52 2015 - Thu Jan 1 15:42:02 2015 (00:00)
root pts/4 hk000.solidtunne Thu Jan 1 11:24:56 2015 - Thu Jan 1 13:40:40 2015 (02:15)
root pts/4 hk000.solidtunne Thu Jan 1 11:24:34 2015 - Thu Jan 1 11:24:48 2015 (00:00)
root pts/0 hk000.solidtunne Thu Jan 1 08:31:13 2015 - Thu Jan 1 08:31:25 2015 (00:00)
현재 날짜는 다음과 같습니다.
# date
Thu Jan 8 08:12:32 UTC 2015
우분투 버전:
# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.1 LTS
Release: 14.04
Codename: trusty
핵심:
# uname -a
Linux install 3.13.0-40-generic #69-Ubuntu SMP Thu Nov 13 17:53:56 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
Ubuntu의 버그 시스템에서 버그를 열었습니다.https://bugs.launchpad.net/ubuntu/+source/sysvinit/+bug/1408605. 그러나 사람들은 이 오류에 관심이 없는 것 같고, Google로부터 이 오류에 대한 정보를 거의 얻지 못하는 것 같습니다. 지금 혼란스러워요. 뭔가 놓쳤나요?
답변1
나는 이 오류가 단지 문서 오류라고 생각합니다.
Ubuntu 14.10의 버전 util-linux
(출처 last
)은 2.25입니다.
Fedora 21 버전 util-linux
도 2.25입니다.
man
Fedora의 페이지에는 다음과 같이 명시되어 있습니다 last
.
-t, --until time
Display the state of logins until the specified time.
이것이 실제 동작입니다.
util-linux
Ubuntu(또는 Debian) 및 CentOS에서 이 페이지에 대한 버그를 신고하는 것이 좋습니다 man
.
답변2
last.c를 다운로드하여 문제를 해결하세요. 753행으로 이동하여 행을 다음과 같이 변경합니다.
if (until && until < ut.ut_time)
continue;
도착하다
if (until && until > ut.ut_time)
continue;
그런 다음 다시 컴파일하십시오.