Deleting Inactive Solaris users


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Deleting Inactive Solaris users
# 1  
Old 07-02-2010
Deleting Inactive Solaris users

Hello,

I want to do a search for users on my solaris boxes that have been inactive for a defined number of days and then delete them.

Any ideas how to determine or calculate the number of days (possibly using the /var/adm/wtmpx file) from the user's last login to the current date of search.

Sorry if this has been posted before

TIA
Login or Register to Ask a Question

Previous Thread | Next Thread

8 More Discussions You Might Find Interesting

1. What is on Your Mind?

Purge of Inactive Users with Zero Posts and Other Anti-spam Measures

In order to keep the site "clean, safe and warm", I have recently purged all accounts at UNIX.COM which meet the ALL of the following 3 criteria: No user activity in 2018 No posts (zero post count) Link in user profile. In addition, I purged all users who registered but never confirmed... (6 Replies)
Discussion started by: Neo
6 Replies

2. 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

3. UNIX for Dummies Questions & Answers

Migrate users from 1 Solaris 10 to a different Solaris 10 server

Hello, I have to backup users from one server and put them on another server. I have tried cp -pr, copied over the passwd, group, shadow and appended the users from the old server to the new servers files, rebooted and still can't login. The server accepts that new accounts are there but not... (2 Replies)
Discussion started by: hs3082
2 Replies

4. Solaris

Help with Solaris 10 - Patching Inactive Boot

Hi I have a Sun M4000 with 1 Global and 4 non-global zones running Solaris. the downtime to apply the latest Recommend Patch Cluster is about 8hrs. The client will not give me the downtime. I want to use PATCHING TO INACTIVE BOOT ENVIRONMENT method and need urgent assistance. I have a... (2 Replies)
Discussion started by: samruthroy
2 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. 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

7. Shell Programming and Scripting

make script deleting mp3 with warnig to users

hi i need to make a script that will check the directories of the users on mp3 or mp4 files. if so they must be automaticly deleted and they have to get a warning message instead. this should be running every day at 1 pm and should be done within the cron file. could someone help me with... (2 Replies)
Discussion started by: stefan
2 Replies

8. UNIX for Dummies Questions & Answers

How to logout inactive users????

I would like to automatically logout from the system inactive users depending on their functions. For example there are users that I would like to logout after 15 minutes of inactivity, but there are others that I would like to logout after 30 minutes of inactivity. It's possible to do this??? (6 Replies)
Discussion started by: rrivas
6 Replies
Login or Register to Ask a Question
usermod(3pm)						User Contributed Perl Documentation					      usermod(3pm)

NAME
Linux::usermod - modify user and group accounts SYNOPSIS
use Linux::usermod; $user = Linux::usermod->new(username); $grp = Linux::usermod->new(groupname, 1); $user->get(gid); # equal to $user->get(3); $user->get(uid); # equal to $user->get(2); $grp->get(gid); # equal to $user->get(2); $grp->get(users);# equal to $user->get(3); #lock and unlock user account $user->lock(); $user->unlock(); #get password(passwd file) $user->get(ppassword); #get encoded password(shadow file) $user->get(password); #set encoded password $user->set(password); $grp->set(password); #set shell / group administrator $user->set(shell); $grp->set(ga); #set group users @users = qw(user1 user2); $grp->set(users, "@users"); Linux::usermod->add(username); #or Linux::usermod->add(username, password, uid, gid, comment, home, shell); #where the password goes in shadow file and gid becomes #equal to uid unless specified and uid is becoming the #first unreserved number after 1000 unless specified #or @users = qw(user1 user2 user3); Linux::usermod->grpadd(groupname, gid, "@users") #where the password goes in gshadow file and gid becomes #equal to the second argument or the first unreserved number #after 100 #delete user/group Linux::usermod->del(username); Linux::usermod->grpdel(groupname); #all fields are returned from the class methods fields/gfields print $user->get($_) for (Linux::usermod->fields); print $grp->get($_) for (Linux::usermod->gfields); #set working passwd and shadow files #$Linux::usermod::file_passwd = "./my_passwd"; #$Linux::usermod::file_shadow = "./my_shadow"; #$Linux::usermod::file_group = "./my_group"; #$Linux::usermod::file_gshadow= "./my_gshadow"; DESCRIPTION
This module adds, removes and modify user and group accounts according to the passwd and shadow files syntax (like struct passwd from pwd.h). It is not necessary those accounts to be system as long as $Linux::usermod::file_passwd, $Linux::usermod::file_shadow, $Linux::usermod::file_group, $Linux::usermod::file_gshadow are not in "/etc" directory. METHODS
new Linux::usermod->new(username) Linux::usermod->new(grpname, 1) If group object second 'true' argument must be given add (username, ...) Class method - add new user account; arguments are optional, except username; they may be (username, password, uid, gid, comment, home, shell) del (username) Class method - removes user account tobsd converts user fields in shadow / master.passwd file to bsd style get if used with user object returns one of the following fields: 'name' or 0 The user's name 'ppassword' or 1 The "passwd" file password 'uid' or 2 The user's id 'gid' or 3 The user's group id 'comment' or 4 The comment about the user (real username) 'home' or 5 The user's home directory 'shell' or 6 The user's shell 'sname' or 7 The user's name in shadow file 'password' or 8 The 13-character encoded password 'lastchg' or 9 The number of days since January 1, 1970 of the last password changed date 'min' or 10 The minimum number of days required between password changes 'max' or 11 The maximum number of days the password is valid 'warn' or 12 The number of days before expiring the password that the user is warned 'inactive' or 13 The number of days of inactivity allowed for the user 'expire' or 14 The number of days since January 1, 1970 that account is disabled 'flag' or 15 Currently not used if used with group object returns one of the following fields: 'name' or 0 The group name 'ppassword' or 1 The group password 'gid' or 2 The group id number 'users' or 3 The group members (users) 'sname' or 4 The group name in gshadow file (the same as 'name') 'password' or 5 The encrypted group password 'ga' or 6 The group administrators 'gu' or 7 The group members (users) (the same as 'users') argument can be either string or number set (field) set a field which must be string of characters: @user_fields = Linux::usermod->fields; #user fields @group_fields = Linux::usermod->gfields; #group fields grpadd (groupname) grpdel (groupname) lock (username) Lock user account (puts '!' at the beginning of the encoded password) unlock (username) Unlock user account (removes '!' from the beginning of the encoded password) users Class method - return hash which keys are all users, taken from $file_passwd grps Class method - return hash which keys are all groups, taken from $file_group FILES
/etc/passwd /etc/shadow /etc/group /etc/gshadow unless given your own passwd, shadow, group, gshadow files which must be created TO DO
Groups and user accounts consistency checks SEE ALSO
getpwent(3), getpwnam(3), usermod(8), passwd(1), gpasswd(1) BUGS
None known. Report any to author. AUTHOR
Vidul Petrov, vidul@abv.bg (C) 2004 Vidul Petrov. All rights reserved. This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.8.8 2008-01-11 usermod(3pm)