「最後」を使用せずにユーザーが最後にログインした時間を見つけようとします。最後にリサイクルされたログファイルを使用すると、数週間後にユーザーの以前のエントリが削除されます。
私はまだ情報を保持しているどこかに各ユーザーのエントリがあると確信しています。メンテナンスのために一部のコンピュータにログインすると、1年を超えても常に最後にログインした時間が表示されます。
ログインルーチンはこの情報をどこで見つけますか?
ちなみに、私の基本的なLinuxオペレーティングシステムはUbuntu 16.04 LTSです。私が知っているのは、Ubuntuは18.04から大きな変化を経験することです。
私は尋ねた。https://unix.stackexchange.com変えるhttp://askubuntu.comなぜなら、次のバージョンでこの機能が変更されても動作するソリューションがあるかどうかを確認したいからです。そして最近はラズベリーパイについて勉強しています。
問題はLinuxベースのシステムに関するものです。
例:
今日(2018年3月8日)私のサーバーの1つにログインしました。ログインルーチンが表示する内容は次のとおりです。
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