
答え1
ユーザーアカウントにアクセスする方法はいくつかあります。たとえば、コンソール、ssh
サーバーにログインしたり、ftp
ファイルをインポートまたは操作したりできますcron
。
これらの方法のいくつかは「ログイン」とは見なされません。
sudo
とsu
アカウントIDを仮定する方法ですが、どちらの方法もログイン方法とは見なされません。
したがって、ログを実行finger
または表示するlast
と、lastlogin
そのアカウントについて報告されたアクティビティが表示されないことがあります。
おそらくこのような状況でのみ表示されます/var/log/auth.log
(正確なファイル名はオペレーティングシステムによって異なります)。
答え2
Stephen Harrisがコメントで述べたように、su
これはログインコマンドではありません。代わりに、シェルの現在のIDを別のIDに置き換えます。
これはでよく説明されています。OpenBSD su のマニュアルページ。
suユーティリティを使用すると、ユーザーはログアウトし、他のユーザーとしてログインしなくても、他のユーザーのユーザーとグループIDを使用してシェルを実行できます。
デフォルトでは、LOGNAME、HOME、SHELL、USER 以外の環境は変更されません。 HOME と SHELL は、ターゲットログインのデフォルト値に設定されます。 LOGNAME と USER は宛先ログインに設定されます。ただし、ターゲットログインのユーザーIDが0で、-lフラグが指定されていない場合は変更されません。呼び出されるシェルはターゲットログインのシェルです。これはsuの伝統的な行動です。