Find users in 24 hour

How can I find that time when maximum number of users were login in last 24 hours. We have 500 users in that server.

---------- Post updated at 02:13 PM ---------- Previous update was at 01:17 PM ----------

on particular date 26-march-2013. Just for example we want to trace in which timings maximum users were online.

You could poll the line counts of 'who' with a simple script, looping and sleeping, with time and day-of-week from date '+$...'.

You could process the output of last -t looking for "gone - no logout" where users are in at a particular time:

Here is split that day up into 5min blocks and check each block:

STS=$(date -d "$*" +%s)
INC=0
MAX=0
while [ $INC -lt $((60*60*24)) ]
do
   CNT=$(last -t $(date -d @$((STS+INC)) +%Y%m%d%H%M%S) | grep "gone" | wc -l)
   if [ $CNT -gt $MAX ]
   then
       MTIME=$((STS+INC))
       MAX=$CNT
   fi
   let INC=INC+5*60
done

echo "Maximum users: $MAX at $(date -d @$MTIME)"

Call it like this:

$ max_user.sh 26 Mar 2013
Maximum users: 4 at Tue Mar 26 15:05:00 EST 2013

---------- Post updated at 08:37 AM ---------- Previous update was at 08:26 AM ----------

Note: this is very dependent on your last -t command output under Fedora I get something like this, which is what I developed/tested with:

last -t 20120727163900
chubler  pts/1        192.168.1.3      Fri Jul 27 16:38    gone - no logout 
chubler  pts/1        192.168.1.3      Fri Jul 27 16:38 - 16:38  (00:00)    
chubler  pts/1        192.168.1.3      Fri Jul 27 16:36 - 16:36  (00:00)    
chubler  pts/1        192.168.1.3      Fri Jul 27 16:34 - 16:34  (00:00)    
chubler  pts/0        :0               Fri Jul 27 16:25    gone - no logout 
chubler  :0           :0               Fri Jul 27 16:14    gone - no logout

I noticed that who missed my terminals, so I went to counting tty's:

$ ps -el|awk '{print $12}'|sort -u|egrep -vc '\?|TTY|console'
12
$

Collect the data maybe put it in an RDBMS, as you can expect they will want to know when/what is the low, what is the trend, ....

There's a Munin plugin named "logins" that does exactly that. Plus it already draws a nice and clean graph. Here's a live demo:

Munin :: munin-monitoring.org :: demo.munin-monitoring.org :: users

Yes, in the Internet age, Googling skills are most important, after the imagination that says there might already be! It's not what you know any more!