Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 22 Jan 2002 13:43:04 -0600
From:      jacks@sage-american.com
To:        "Joe & Fhe Barbish" <barbish@a1poweruser.com>, "Bob Giesen" <BobGiesen@earthlink.net>
Cc:        "FBSD Questions" <questions@FreeBSD.ORG>
Subject:   RE: pw in script to create new user.
Message-ID:  <3.0.5.32.20020122134304.01831ca0@mail.sage-american.com>
In-Reply-To: <LPBBIGIAAKKEOEJOLEGOGEGCCNAA.barbish@a1poweruser.com>
References:  <004b01c1a30b$5fcb20c0$328dfea9@pegasus>

next in thread | previous in thread | raw e-mail | index | archive | help
Joe: I ran #pw -D and no pw.conf was created (4.4-stable)....????

At 02:14 PM 1.22.2002 -0500, Joe & Fhe Barbish wrote:
>To all who responded I want to say thanks for your input.
>I have gotten my script to work.
>Now for the archives I am summarizing how the pw command works.
>
>When FBSD is installed the PW command does not have it's
>pw.conf option file. Pw stills works but you have no idea what
>the defaults are and the command line gets full using the pw flags.
>The first thing you should do if you want to use the pw command to
>add users is to create the pw.conf file, do this by
>entering  pw -D  this will create the /etc/pw.conf file.
>The comments in the file are self explanatory.
>I added the default group and the additional groups.
>
>pw -D  =  create /etc/pw.conf file
>pw adduser tom -m -c tom brown = tom =userid -m = create home directory -c
>full name field
>pw deluser tom -r = delete user tom   -r = remove home directory
>pw showuser tom  = display this users entry in password file
>pw showuser tom -P = display password info in human readable form
>pw showuser -a  = display all entries in password file
>
>The pw command can also be used for groups
>pw addgroup networking
>pw showgroup networking
>
>The pw command can also change settings in the userid password file.
>
>My /etc/pw.conf looks like this
>
>#
># /etc/pw.conf - user/group configuration defaults
># created 01/20/2002  by Joe Barbish
>
># Password for new users? no=nologin yes=loginid none=blank random=random
>defaultpasswd = "yes"
>
># Reuse gaps in uid sequence? (yes or no)
>reuseuids = "yes"
>
># Reuse gaps in gid sequence? (yes or no)
>reusegids = "yes"
>
># Path to the NIS passwd file (blank or 'no' for none)
>nispasswd =
>
># Obtain default dotfiles from this directory
>skeleton = "/usr/share/skel/"
>
># Mail this file to new user (/etc/newuser.msg or no)
>newmail = "no"
>
># Log add/change/remove information in this file
>logfile = "/var/log/userlog"
>
># Root directory in which $HOME directory is created
>home = "/home"
>
># Colon separated list of directories containing valid shells
>shellpath = "/bin"
>
># Comma separated list of available shells (without paths)
>shells = "sh","csh","tcsh"
>
># Default shell (without path)
>defaultshell = "sh"
>
># Default group (leave blank for new group per user)
>defaultgroup = "network"
>
># Extra groups for new users
>extragroups = "wheel"
>
># Default login class for new users
>defaultclass = ""
>
># Range of valid default user ids
>minuid = 1000
>maxuid = 32000
>
># Range of valid default group ids
>mingid = 1000
>maxgid = 32000
>
># Days after which account expires (0=disabled)
>expire_days = 0
>
># Days after which password expires (0=disabled)
>password_days = 0
>
>######################################################
>The script that the folks here helped me with.
>
>#! /bin/sh
>
>pw adduser tom -m -c testing -h 0 <<- EOD
>        water
>        EOD
># water is the password used for tom
>
>
>
>
>
>
>
>
>-----Original Message-----
>From: owner-freebsd-questions@FreeBSD.ORG
>[mailto:owner-freebsd-questions@FreeBSD.ORG]On Behalf Of Bob Giesen
>Sent: Tuesday, January 22, 2002 1:10 AM
>To: Joe & Fhe Barbish; FBSD Questions
>Subject: Re: pw in script to create new user.
>
>----- Original Message -----
>From: "Joe & Fhe Barbish" <barbish@a1poweruser.com>
>To: "FBSD Questions" <questions@FreeBSD.ORG>
>Sent: Monday, January 21, 2002 10:52 PM
>Subject: pw in script to create new user.
>
>
>> I have sh script with this in it
>> Pw adduser tom -m -c bkup manager -o
>> The /etc/pw.conf has all the defaults, one is to
>> make the password the same as the userid.
>> The -o option will take input from keyboard for the
>> Password but this is a canned script so I need to
>> Some how pass the password value to the pw command -0 option.
>>
>> How can I configure the script to hold the password value
>> for that userid so when the pw adduser command is executed
>> the correct password gets used in creating the user?
>
>   Three thoughts:
>1) Does pw offer no other way of providing the password, other than via
>stdin (keyboard)?
>2) Putting unencrypted passwords into a text file (such as your script) does
>present something of a security risk.
>3) If the answer to (1) is no and (2) doesn't faze you, you can redirect
>stdin within the script.  I am not familiar with pw (perhaps because I'm
>running v3.2), so I'll expand on your example command for adding tom:
>
>Pw adduser tom -m -c bkup manager -h 0 << EOF
>tomspassword
>EOF
>
>   The first line's "<< EOF" tells sh to take the expected stdin input from
>the following lines, up to the first line that BEGINS with "EOF."  So, just
>put tom's password on the following line and then EOF on the very next line.
>   Two points worth mentioning:
>1) My choice of "EOF" was arbitrary.  You may use EOP, EOI, XYZ, SILLY, or
>whatever you like, so long as you use exactly the same string to signal the
>end of input redirection.
>2) EOF (or EOP, SILLY, or whatever you use) MUST BEGIN the line to signal
>the end of redirection.  Any space (or other character) before the ending
>EOF will mess up your script (which, since you're operating as root, has the
>potential to make things interesting, to say the least).  (Exception: you
>may precede the finishing string (EOF, or whatever) with a tab IF YOU USE
>"<<-" instead of "<<" for the redirection on the first line.  E.g.:
>
>Pw adduser tom -m -c bkup manager -h 0 <<- EOF
>    tomspassword
>    EOF
>
>   My mail client turned the tabs to spaces; there should be tabs before
>"tomspassword" and the final "EOF" here.  Sometimes, the <<- & tab
>functionality helps to make a more readable script.
>   Hope this helps...
>- Bob
>
>
>
>To Unsubscribe: send mail to majordomo@FreeBSD.org
>with "unsubscribe freebsd-questions" in the body of the message
>
>

Best regards,
Jack L. Stone,
Server Admin

===================================================
Sage-American 
http://www.sage-american.com
jacks@sage-american.com

"My center is giving way, my right is in retreat;
....situation excellent! ....I shall attack!"
===================================================

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3.0.5.32.20020122134304.01831ca0>