I'm trying to create a program that includes variety of duties. One of the duties includes deleting a user if the user name exist in the /etc/passwd file.
how do i make that happen. those of you that know about this shell programming, please tell me what i should do after the shell reads... (4 Replies)
Hi Group,
Can anyone assist me with this?
I am on AIX 5.2 ML06. I create the user and assign a passwd. But I do not want the user to change the passwd at all. I like him/her to use the passwd that I have set for him/her. Any ideas would be highly appreciated!!!
Thanks. (3 Replies)
Hello,
My issue is that I want to look for specific users that have their first and last initial followed by four numbers. For example:
ab1234
I've already got the user ID's out of the passwd file
more passwd | awk -F ":" '{print $1}' > userids
I just need to know how to just pick... (8 Replies)
Hi,
/etc/passwd file has write permission only for the root user.
Now when a normal user changes the its own password using passwd command, how this information has been written to the /etc/passwd file when the user is not having write permission to this file.
~santosh (2 Replies)
Hey all,
i have to write a script in Unix that would help me in my department to search certain user ids valid in /etc/passwd file.. here goes the exact question & data to help analyze:
Amend a script to tell the user to enter a user id to be searched for in the /etc/passwd file. If there are no... (7 Replies)
Hello All,
How to force user to change his login passwd on his first login in solaris 10 ?
while adding user do we need to set the password in theis case?? (7 Replies)
Besides doing some shell-script which loops through /etc/passwd, I was wondering if there was some command that would tell me, like an enhanced version of getent.
The Operating system is Solaris 10 (recent-ish revision) using Sun DS for LDAP. (5 Replies)
Hi,
I've a user alias file in the below format.. I need to change all the ID's that come after the = sign (with some multiple ID's which are separated by comma's) to their respective users that are contained in the passwords file.. Whats the best way to go about this.. Some sort of sed command in... (2 Replies)
I have logged into a box with some userid,but in this box der is no entry for this userid in /etc/passwd file.this box is used by multiple users but none of them have their enteries in passwd file but for each user there is a directory in /home
like for user1 /home/user1
for user2... (5 Replies)
did a big mistake, changing root entry of /etc/passwd to
root:x:0:0:root:/root:/usr/bin/tmux split-window -v \; attach
as expected, now I can't login as root anymore. sudo ed /etc/passwd etc. doesn't work.
Any idea?
Use code tags to increase readability and follow the rules. (4 Replies)
Discussion started by: dodona
4 Replies
LEARN ABOUT MINIX
getpwent
GETPWENT(3) Library Functions Manual GETPWENT(3)NAME
getpwent, getpwnam, getpwuid, setpwent, endpwent, setpwfile - password file routines
SYNOPSIS
#include <pwd.h>
struct passwd *getpwent(void)
struct passwd *getpwnam(const char *name)
struct passwd *getpwuid(uid_t uid)
int setpwent(void)
void endpwent(void)
void setpwfile(const char *file)
DESCRIPTION
These functions are used to obtain information from the password file. They return this information in a struct passwd as defined by
<pwd.h>:
struct passwd {
char *pw_name; /* login name */
char *pw_passwd; /* encrypted password */
uid_t pw_uid; /* numeric user id */
gid_t pw_gid; /* numeric group id */
char *pw_gecos; /* user full name and other info */
char *pw_dir; /* user's home directory */
char *pw_shell; /* name of the user's shell */
};
Getpwent() reads the password file entry by entry. Getpwnam() scans the entire password file for the user with the given name. Getpwuid()
looks for the first user with the given uid. The setpwent() and endpwent() functions are used to open and later close the password file.
With setpwfile() one can specify the file to read other than the normal password file. This only sets the name, the next setpwent() call
will open the file. Do not touch the file name while it is active. Use setpwfile(NULL) to revert back to the normal password file.
The usual way to scan the password file is (error checking omitted):
setpwent();
while ((pw = getpwent()) != NULL)
if (appropriate_test(pw)) break;
endpwent();
The pw variable contains the entry that is wanted if non-NULL. The getpwnam() and getpwuid() functions are implemented as in this example,
with error checking of course.
Getpwent() calls setpwent() if this has not yet been done. Setpwent() first calls endpwent() if the password file is still open. (Other
implementations may simply rewind the file.)
FILES
/etc/passwd The password file database.
SEE ALSO cuserid(3), getlogin(3), getgrent(3), passwd(5).
DIAGNOSTICS
Setpwent() has the same return value and error codes as the open(2) call it uses to open the password file. The getxxx() functions return
NULL on end of file, entry not found, or error. You can set errno to zero before the call and check it after.
NOTES
All getxxx() routines return a pointer to static storage that is overwritten in each call.
Only getpwnam() and getpwuid() are defined by POSIX. The _MINIX_SOURCE macro must be defined before including <pwd.h> to make the other
functions visible. The pw_passwd and pw_gecos fields are also not defined by POSIX, but are always visible. Portable code cannot reliably
detect errors by setting errno to zero. Under Minix it is better to make a getpwent() scan if you need to look up several user-id's or
names, but portable code had better use several getpwuid() or getpwnam() calls. The getpwent() is usually available on other systems, but
may be very expensive.
AUTHOR
Kees J. Bot (kjb@cs.vu.nl)
GETPWENT(3)