Sponsored Content
Operating Systems AIX How to list Inactive user account in AIX 5.3? Post 302506990 by sumit30 on Tuesday 22nd of March 2011 12:17:01 PM
Old 03-22-2011
Smilie .. Thank you.

This script works. I was able to create a text file for inactive user. Thanks a tone.

Smilie

Quote:
Originally Posted by kah00na
Here's a script I copied from another forum and quickly tested on one of my boxes:
Code:
#!/usr/bin/ksh
#set -x

#Try this script.
#It will check and lock the accounts automatically for those logins that
#have not been used to s set number of days.

expdays=60 #<< ---- Set number of days in past here!
let expiry=86400*$expdays
locked=" "
LOG_FILE=/tmp/${0}.log
tmp1=/tmp/exp.tmp1.$$
tmp2=/tmp/exp.tmp2.$$
tmp2a=/tmp/exp.tmp2a.$$
tmp3=/tmp/exp.tmp3.$$

# List all users that are allowed to login
lsuser -a login account_locked time_last_login ALL |grep -Ev ^"root|daemon|bin|sys|adm|nobody" | grep "login=true" > $tmp1

# get all users who have logged in at least once with login date
grep 'time_last_login' $tmp1 | sed -e 's/login=true //' -e 's/account_locked=//' -e 's/time_last_login=//' >$tmp2

# get all users who have not logged in since creation
grep -v 'time_last_login' $tmp1 | sed -e 's/login=true //' -e 's/account_locked=//' >$tmp2a

# get today's date in seconds from epoch for comparison
year=`date +%Y`
day=`date +%j`
hour=`date +%H`
minute=`date +%M`

let today="($year - 1970) * 365 * 86400 + ($day - 1) * 86400 + $hour * 3600 + $minute * 60 + ($year - 1969) / 4 * 86400"

# for each user found, check whether has not been unused too long
cat $tmp2 |while read user locked last; do
     let min=$today-$expiry
     if [[ $min -gt $last ]]; then
          let login="($today - $last) / 86400"
          echo $user':'$login':'$locked >> $LOG_FILE
          #chuser shell='/usr/local/bin/locked' account_locked='true' $user
fi
done

# Remove the tmp files
rm $tmp1
rm $tmp2
rm $tmp2a

Once everything looks good in the LOG_FILE, you can uncomment the "chuser" line if you want to start locking them.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Canīt logout to user inactive

I have SCO OpenServer release 5 I used TIMEOUT and TMOUT in .profile but I donīt Know if is correctly WND=/usr/synergy/dbl DTKMAPFIL=/u/ics/icsdat/icsmap.ics umask 000 ... (1 Reply)
Discussion started by: lalox
1 Replies

2. AIX

AIX shell account

I am just wondering if there is a way I can obtain a free shell account for an AIX server that I can make test drive on it. I tried google search and ibm's web site but couldn't find anything.. regards, (2 Replies)
Discussion started by: milhan
2 Replies

3. UNIX for Dummies Questions & Answers

Make an account inactive after 90 days.

Is this possible? Say I create an account today and in 90 days I want it to be turned off. Is this sort of thing possible using the built in components of a Unix system? (Using Solaris 9) I see things about password expires, but what if the person changes his password on the 89th day,... (1 Reply)
Discussion started by: LordJezo
1 Replies

4. UNIX for Dummies Questions & Answers

List all inactive users who has not logged on since last 90 days

Hi, Can I get a script to list out all the users, who has not logged on since last 90 days. Last command in not working due due to /var/adm/wtmpx is more than 2 GB. Thanks in advance. Regards, Roni (10 Replies)
Discussion started by: manasranjanpand
10 Replies

5. Solaris

List all inactive users who has not logged on since last 90 days

I need actuall script which List all inactive users who has not logged on since last 90 days Thanks in advance. Di! (17 Replies)
Discussion started by: haridham
17 Replies

6. AIX

List inactive subservers ?

Hi, I can list active subservers of subsystem by issuing "lssrc -l -s somesubsystem" How do I list inactive subservers or at least all subservers(active+inactive) of certain subsystem ? thanks Vilius (3 Replies)
Discussion started by: vilius
3 Replies

7. UNIX for Dummies Questions & Answers

Difference between : Locked User Account & Disabled User Accounts in Linux ?

Thanks AVKlinux (3 Replies)
Discussion started by: avklinux
3 Replies

8. AIX

User Account Login Login on your AIX server

I want to learn AIX. I would like to find someone who would be willing to give me a login to their AIX home lab server. My intent is to poke around and discover the similarities and differences of AIX compared to other *NIXs. I am a UNIX admin so I can think of what some immediate concerns may... (1 Reply)
Discussion started by: perl_in_my_shel
1 Replies

9. AIX

List of AIX commands that can be run by ROOT user ONLY

Hello, I am testing sudo and I want to test it. Can anyone please let me know few commands (of course other than shutdown, reboot etc. as I can't reboot the box) on AIX that can be run by ROOT only. Thanks ---------- Post updated at 07:43 PM ---------- Previous update was at 07:38 PM... (5 Replies)
Discussion started by: prvnrk
5 Replies

10. Solaris

Disable Inactive User in Solaris 11

Goal: To disable a Solaris user, after that user was inactive for X days. My understanding for linux was that there was no systematic way to disable inactive users, therefore we had to set a password expiration via /etc/default/passwd, MaxWeeks; then in /etc/default/useradd (/etc/shadow), the... (1 Reply)
Discussion started by: Drasavokian
1 Replies
CALENDAR(1)						      General Commands Manual						       CALENDAR(1)

NAME
calendar - reminder service SYNOPSIS
calendar [ - ] DESCRIPTION
Calendar consults the file `calendar' in the current directory and prints out lines that contain today's or tomorrow's date anywhere in the line. Most reasonable month-day dates such as `Dec. 7,' `december 7,' `12/7,' etc., are recognized, but not `7 December' or `7/12'. If you give the month as ``*'' with a date, i.e. ``* 1'', that day in any month will do. On weekends `tomorrow' extends through Monday. When an argument is present, calendar does its job for every user who has a file `calendar' in his login directory and sends him any posi- tive results by mail(1). Normally this is done daily in the wee hours under control of cron(8). The file `calendar' is first run through the ``C'' preprocessor, /lib/cpp, to include any other calendar files specified with the usual ``#include'' syntax. Included calendars will usually be shared by all users, maintained and documented by the local administration. FILES
calendar /usr/libexec/calendar to figure out today's and tomorrow's dates /etc/passwd /tmp/cal* /lib/cpp, egrep, sed, mail as subprocesses SEE ALSO
at(1), cron(8), mail(1) BUGS
Calendar's extended idea of `tomorrow' doesn't account for holidays. 7th Edition October 21, 1996 CALENDAR(1)
All times are GMT -4. The time now is 07:54 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy