私はバイナリを使用するのではなく、ファイルシステムと基本的なbash機能のみを使用して現在ログインしているユーザー数を確認する簡単な方法を探しています。
バイナリはuptime
ソースコードから読んだように見えますが、リアルタイムで更新されないようです(ユーザーには表示されますが、今は実行中です)。ただし、バイナリには「2人のユーザー」が正しく表示されます。/var/run/utmp
/var/run/utmp
tty7
pts/1-5
tty7
pts/5
uptime
注:私はCに頼らず、uptime
基本getutent()
システムがどのように機能するかをよりよく理解しようとしています。
現在システムにログインしている正確なユーザー数を確認するのに最適な場所はどこですか?
答え1
/proc/sys/kernel/pty/nr
以下を見ると、どのくらいのptyが割り当てられているかを確認できます。どのくらい人がログインしています。
たとえば、私のサーバーの1つに現在自分だけがログインしていますが、7ユーザーが実行中であるため、ptyが使用されていますscreen
。