1.\" Copyright (C) 1996 2.\" David L. Nugent. All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 13.\" THIS SOFTWARE IS PROVIDED BY DAVID L. NUGENT AND CONTRIBUTORS ``AS IS'' AND 14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16.\" ARE DISCLAIMED. IN NO EVENT SHALL DAVID L. NUGENT OR CONTRIBUTORS BE LIABLE 17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" 25.\" $Id: pw.8,v 1.13 1998/03/23 08:28:12 charnier Exp $ 26.\" 27.Dd December 9, 1996 28.Dt PW 8 29.Os 30.Sh NAME 31.Nm pw 32.Nd create, remove, modify & display system users and groups 33.Sh SYNOPSIS 34.Nm pw 35.Ar useradd 36.Op name|uid 37.Op Fl C Ar config 38.Op Fl q 39.Op Fl n Ar name 40.Op Fl u Ar uid 41.Op Fl c Ar comment 42.Op Fl d Ar dir 43.Op Fl e Ar date 44.Op Fl p Ar date 45.Op Fl g Ar group 46.Op Fl G Ar grouplist 47.Op Fl m 48.Op Fl k Ar dir 49.Op Fl s Ar shell 50.Op Fl o 51.Op Fl L Ar class 52.Op Fl h Ar fd 53.Op Fl N 54.Op Fl P 55.Op Fl Y 56.Nm pw 57.Ar useradd 58.Op name|uid 59.Fl D 60.Op Fl C Ar config 61.Op Fl q 62.Op Fl b Ar dir 63.Op Fl e Ar days 64.Op Fl p Ar days 65.Op Fl g Ar group 66.Op Fl G Ar grouplist 67.Op Fl k Ar dir 68.Op Fl u Ar min,max 69.Op Fl i Ar min,max 70.Op Fl w Ar method 71.Op Fl s Ar shell 72.Op Fl y Ar path 73.Nm pw 74.Ar userdel 75.Op name|uid 76.Op Fl n Ar name 77.Op Fl u Ar uid 78.Op Fl r 79.Op Fl Y 80.Nm pw 81.Ar usermod 82.Op name|uid 83.Op Fl C Ar config 84.Op Fl q 85.Op Fl n Ar name 86.Op Fl u Ar uid 87.Op Fl c Ar comment 88.Op Fl d Ar dir 89.Op Fl e Ar date 90.Op Fl p Ar date 91.Op Fl g Ar group 92.Op Fl G Ar grouplist 93.Op Fl l Ar name 94.Op Fl m 95.Op Fl k Ar dir 96.Op Fl w Ar method 97.Op Fl s Ar shell 98.Op Fl L Ar class 99.Op Fl h Ar fd 100.Op Fl N 101.Op Fl P 102.Op Fl Y 103.Nm pw 104.Ar usershow 105.Op name|uid 106.Op Fl n Ar name 107.Op Fl u Ar uid 108.Op Fl F 109.Op Fl P 110.Op Fl a 111.Nm pw 112.Ar usernext 113.Op Fl C Ar config 114.Op Fl q 115.Nm pw 116.Ar groupadd 117.Op group|gid 118.Op Fl C Ar config 119.Op Fl q 120.Op Fl n Ar group 121.Op Fl g Ar gid 122.Op Fl M Ar members 123.Op Fl o 124.Op Fl h Ar fd 125.Op Fl N 126.Op Fl P 127.Op Fl Y 128.Nm pw 129.Ar groupdel 130.Op group|gid 131.Op Fl n Ar name 132.Op Fl g Ar gid 133.Op Fl Y 134.Nm pw 135.Ar groupmod 136.Op group|gid 137.Op Fl C Ar config 138.Op Fl q 139.Op Fl F 140.Op Fl n Ar name 141.Op Fl g Ar gid 142.Op Fl l Ar name 143.Op Fl M Ar members 144.Op Fl m Ar newmembers 145.Op Fl h Ar fd 146.Op Fl N 147.Op Fl P 148.Op Fl Y 149.Nm pw 150.Ar groupshow 151.Op group|gid 152.Op Fl n Ar name 153.Op Fl g Ar gid 154.Op Fl F 155.Op Fl P 156.Op Fl a 157.Nm pw 158.Ar groupnext 159.Op Fl C Ar config 160.Op Fl q 161.Sh DESCRIPTION 162.Nm Pw 163is a command-line based editor for the system 164.Ar user 165and 166.Ar group 167files, allowing the superuser an easy to use and standardized way of adding, 168modifying and removing users and groups. 169Note that 170.Nm 171only operates on the local user and group files. NIS users and groups must be 172maintained on the NIS server. 173.Nm Pw 174handles updating the 175.Pa passwd , 176.Pa master.passwd , 177.Pa group 178and the secure and insecure 179password database files, and must be run as root. 180.Pp 181The first one or two keywords provided to 182.Nm 183on the command line provide the context for the remainder of the arguments. 184The keywords 185.Ar user 186and 187.Ar group 188may be combined with 189.Ar add , 190.Ar del , 191.Ar mod , 192.Ar show , 193or 194.Ar next 195in any order. (For example, 196.Ar showuser , 197.Ar usershow , 198.Ar show user , and 199.Ar user show 200all mean the same thing.) 201This flexibility is useful for interactive scripts calling 202.Nm 203for user and group database manipulation. 204Following these keywords, you may optionally specify the user or group name or numeric 205id as an alternative to using the 206.Fl n Ar name , 207.Fl u Ar uid , 208.Fl g Ar gid 209options. 210.Pp 211The following flags are common to most modes of operation; 212.Pp 213.Bl -tag -width "-G grouplist" 214.It Fl C Ar config 215By default, 216.Nm 217reads the file 218.Pa /etc/pw.conf 219to obtain policy information on how new user accounts and groups are to be created. 220The 221.Fl C 222option specifies a different configuration file. 223While most of the contents of the configuration file may be overridden via 224command-line options, it may be more convenient to keep standard information in a 225configuration file. 226.It Fl q 227Use of this option causes 228.Nm 229to suppress error messages, which may be useful in interactive environments where it 230is preferable to interpret status codes returned by 231.Nm 232rather than messing up a carefully formatted display. 233.It Fl N 234This option is available in 235.Ar add 236and 237.Ar modify 238operations, and tells 239.Nm 240to output the result of the operation without updating the user or group 241databases. 242You may use the 243.Fl P 244option to switch between standard passwd and readable formats. 245.It Fl Y 246Using this option with any of the update modes causes 247.Nm 248to run 249.Xr make 1 250after changing to the directory 251.Pa /var/yp . 252This is intended to allow automatic updating of NIS database files. 253If separate passwd and group files are being used by NIS, then use the 254.Fl y Ar path 255option to specify the location of the NIS passwd database so that 256.Nm 257will concurrently update it with the system password 258databases. 259.El 260.Pp 261.Sh USER OPTIONS 262The following options apply to the 263.Ar useradd 264and 265.Ar usermod 266commands: 267.Pp 268.Bl -tag -width "-G grouplist" 269.It Fl n Ar name 270Specify the user/account name. 271.It Fl u Ar uid 272Specify the user/account numeric id. 273.Pp 274Usually, you only need to provide one or the other of these options, as the account 275name will imply the uid, or vice versa. 276However, there are times when you need to provide both. 277For example, when changing the uid of an existing user with 278.Ar usermod , 279or overriding the default uid when creating a new account. 280If you wish 281.Nm 282to automatically allocate the uid to a new user with 283.Ar useradd , 284then you should 285.Em not 286use the 287.Ql Fl u 288option. 289You may also provide either the account or userid immediately after the 290.Ar useradd , 291.Ar userdel , 292.Ar usermod 293or 294.Ar usershow 295keywords on the command line without using the 296.Ql Fl n 297or 298.Ql Fl u 299options. 300.El 301.Pp 302.Bl -tag -width "-G grouplist" 303.It Fl c Ar comment 304This field sets the contents of the passwd GECOS field, which normally contains up 305to four comma-separated fields containing the user's full name, office or location, 306and work and home phone numbers. 307These sub-fields are used by convention only, however, and are optional. 308If this field is to contain spaces, you need to quote the comment itself with double 309quotes 310.Ql \&" . 311Avoid using commas in this field as these are used as sub-field separators, and the 312colon 313.Ql \&: 314character also cannot be used as this is the field separator for the passwd 315file itself. 316.It Fl d Ar dir 317This option sets the account's home directory. 318Normally, you will only use this if the home directory is to be different from the 319default determined from 320.Pa /etc/pw.conf 321- normally 322.Pa /home 323with the account name as a subdirectory. 324.It Fl e Ar date 325Set the account's expiration date. 326Format of the date is either a UNIX time in decimal, or a date in 327.Ql dd-mmm-yy[yy] 328format, where dd is the day, mmm is the month, either in numeric or alphabetic format 329('Jan', 'Feb', etc) and year is either a two or four digit year. 330This option also accepts a relative date in the form 331.Ql \&+n[mhdwoy] 332where 333.Ql \&n 334is a decimal, octal (leading 0) or hexadecimal (leading 0x) digit followed by the 335number of Minutes, Hours, Days, Weeks, Months or Years from the current date at 336which the expiration date is to be set. 337.It Fl p Ar date 338Set the account's password expiration date. 339This field is similar to the account expiration date option, except that it 340applies to forced password changes. 341This is set in the same manner as the 342.Ql Fl e 343option. 344.It Fl g Ar group 345Set the account's primary group to the given group. 346.Ar group 347may be defined by either its name or group number. 348.It Fl G Ar grouplist 349Sets additional group memberships for an account. 350.Ar grouplist 351is a comma-separated list of group names or group numbers. 352The user's name is added to the group lists in 353.Pa /etc/group , 354and 355removed from any groups not specified in 356.Ar grouplist . 357Note: a user should not be added to their primary group with 358.Ar grouplist . 359Also, group membership changes do not take effect for current user login 360sessions, requiring the user to reconnect to be affected by the changes. 361.It Fl L Ar class 362This option sets the login class for the user being created. 363See 364.Xr login.conf 5 365for more information on user login classes. 366.It Fl m 367This option instructs 368.Nm 369to attempt to create the user's home directory. 370While primarily useful when adding a new account with 371.Ar useradd , 372this may also be of use when moving an existing user's home directory elsewhere on 373the filesystem. 374The new home directory is populated with the contents of the 375.Ar skeleton 376directory, which typically contains a set of shell configuration files that the 377user may personalize to taste. 378When 379.Ql Fl m 380is used on an account with 381.Ar usermod , 382existing configuration files in the user's home directory are 383.Em not 384overwritten from the skeleton files. 385.Pp 386When a user's home directory is created, it will by default be a subdirectory of the 387.Ar basehome 388directory as specified by the 389.Ql Fl b 390option (see below), bearing the name of the new account. 391This can be overridden by the 392.Ql Fl d 393option on the command line, if desired. 394.It Fl k Ar dir 395Set the 396.Ar skeleton 397directory, from which basic startup and configuration files are copied when 398the user's home directory is created. 399This option only has meaning when used with the 400.Ql Fl d 401or 402.Ql Fl m 403flags. 404.It Fl s Ar shell 405Set or changes the user's login shell to 406.Ar shell . 407If the path to the shell program is omitted, 408.Nm 409searches the 410.Ar shellpath 411specified in 412.Pa /etc/pw.conf 413and fills it in as appropriate. 414Note that unless you have a specific reason to do so, you should avoid 415specifying the path - this will allow 416.Nm 417to validate that the program exists and is executable. 418Specifying a full path (or supplying a blank "" shell) avoids this check 419and allows for such entries as 420.Pa /nonexistent 421that should be set for accounts not intended for interactive login. 422.It Fl L Ar class 423Set the 424.Em class 425field in the user's passwd record. 426This field is not currently used, but will be used in the future to specify a 427.Em termcap 428entry like tag. See 429.Xr passwd 5 430for details. 431.It Fl h Ar fd 432This option provides a special interface by which interactive scripts can 433set an account password using 434.Nm pw . 435Because the command line and environment are fundamentally insecure mechanisms 436by which programs can accept information, 437.Nm 438will only allow setting of account and group passwords via a file descriptor 439(usually a pipe between an interactive script and the program). 440.Ar sh , 441.Ar bash , 442.Ar ksh 443and 444.Ar perl 445all possess mechanisms by which this can be done. 446Alternatively, 447.Nm 448will prompt for the user's password if 449.Ql Fl h Ar 0 450is given, nominating 451.Em stdin 452as the file descriptor on which to read the password. 453Note that this password will be read only once and is intended 454for use by a script rather than for interactive use. 455If you wish to have new password confirmation along the lines of 456.Xr passwd 1 , 457this must be implemented as part of an interactive script that calls 458.Nm pw . 459.Pp 460If a value of 461.Ql \&- 462is given as the argument 463.Ar fd , 464then the password will be set to 465.Ql \&* , 466rendering the account inaccessible via password-based login. 467.El 468.Pp 469It is possible to use 470.Ar useradd 471to create a new account that duplicates an existing user id. 472While this is normally considered an error and will be rejected, the 473.Ql Fl o 474option overrides the check for duplicates and allows the duplication of 475the user id. 476This may be useful if you allow the same user to login under 477different contexts (different group allocations, different home 478directory, different shell) while providing basically the same 479permissions for access to the user's files in each account. 480.Pp 481The 482.Ar useradd 483command also has the ability to set new user and group defaults by using the 484.Ql Fl D 485option. 486Instead of adding a new user, 487.Nm 488writes a new set of defaults to its configuration file, 489.Pa /etc/pw.conf . 490When using the 491.Ql Fl D 492option, you must not use either 493.Ql Fl n Ar name 494or 495.Ql Fl u Ar uid 496or an error will result. 497Use of 498.Ql Fl D 499changes the meaning of several command line switches in the 500.Ar useradd 501command. 502These are: 503.Bl -tag -width "-G grouplist" 504.It Fl D 505Set default values in 506.Pa /etc/pw.conf 507configuration file, or a different named configuration file if the 508.Ql Fl C Ar config 509option is used. 510.It Fl b Ar dir 511Set the root directory in which user home directories are created. 512The default value for this is 513.Pa /home , 514but it may be set elsewhere as desired. 515.It Fl e Ar days 516Set the default account expiration period in days. 517Unlike use without 518.Ql Fl D , 519the argument must be numeric, which specifies the number of days after creation when 520the account is to expire. 521A value of 0 suppresses automatic calculation of the expiry date. 522.It Fl p Ar days 523Set the default password expiration period in days. 524.It Fl g Ar group 525Set the default group for new users. 526If a blank group is specified using 527.Ql Fl g Ar \&"" , 528then new users will be allocated their own private primary group 529with the same name as their login name. 530If a group is supplied, either its name or uid may be given as an argument. 531.It Fl G Ar grouplist 532Set the default groups in which new users are granted membership. 533This is a separate set of groups from the primary group, and you should avoid 534nominating the same group as both primary and extra groups. 535In other words, these extra groups determine membership in groups 536.Em other than 537the primary group. 538.Ar grouplist 539is a comma-separated list of group names or ids, and are always 540stored in 541.Pa /etc/pw.conf 542by their symbolic names. 543.It Fl L Ar class 544This option sets the default login class for new users. 545.It Fl k Ar dir 546Set the default 547.Em skeleton 548directory, from which prototype shell and other initialization files are copied when 549.Nm 550creates a user's home directory. 551.It Fl u Ar min,max , Fl i Ar min,max 552These options set the minimum and maximum user and group ids allocated for new accounts 553and groups created by 554.Nm pw . 555The default values for each is 1000 minimum and 32000 maximum. 556.Ar min 557and 558.Ar max 559are both numbers, where max must be greater than min, and both must be between 0 560and 32767. 561In general, user and group ids less than 100 are reserved for use by the system, 562and numbers greater than 32000 may also be reserved for special purposes (used by 563some system daemons). 564.It Fl w Ar method 565The 566.Ql Fl w 567option sets the default method used to set passwords for newly created user accounts. 568.Ar method 569is one of: 570.Pp 571.Bl -tag -width random -offset indent -compact 572.It no 573disable login on newly created accounts 574.It yes 575force the password to be the account name 576.It none 577force a blank password 578.It random 579generate a random password 580.El 581.Pp 582The 583.Ql \&random 584or 585.Ql \&no 586methods are the most secure; in the former case, 587.Nm 588generates a password and prints it to stdout, which is suitable where you issue 589users with passwords to access their accounts rather than having the user nominate 590their own (possibly poorly chosen) password. 591The 592.Ql \&no 593method requires that the superuser use 594.Xr passwd 1 595to render the account accessible with a password. 596.It Fl y Ar path 597This sets the pathname of the database used by NIS if you are not sharing 598the information from 599.Pa /etc/master.passwd 600directly with NIS. 601You should only set this option for NIS servers. 602.El 603.Pp 604The 605.Ar userdel 606command has only three valid options. The 607.Ql Fl n Ar name 608and 609.Ql Fl u Ar uid 610options have already been covered above. 611The additional option is: 612.Bl -tag -width "-G grouplist" 613.It Fl r 614This tells 615.Nm 616to remove the user's home directory and all of its contents. 617.Nm Pw 618errs on the side of caution when removing files from the system. 619Firstly, it will not do so if the uid of the account being removed is also used by 620another account on the system, and the 'home' directory in the password file is 621a valid path that commences with the character 622.Ql \&/ . 623Secondly, it will only remove files and directories that are actually owned by 624the user, or symbolic links owned by anyone under the user's home directory. 625Finally, after deleting all contents owned by the user only empty directories 626will be removed. 627If any additional cleanup work is required, this is left to the administrator. 628.El 629.Pp 630Mail spool files and crontabs are always removed when an account is deleted as these 631are unconditionally attached to the user name. 632Jobs queued for processing by 633.Ar at 634are also removed if the user's uid is unique and not also used by another account on the 635system. 636.Pp 637The 638.Ar usershow 639command allows viewing of an account in one of two formats. 640By default, the format is identical to the format used in 641.Pa /etc/master.passwd 642with the password field replaced with a 643.Ql \&* . 644If the 645.Ql Fl P 646option is used, then 647.Nm 648outputs the account details in a more human readable form. 649The 650.Ql Fl a 651option lists all users currently on file. 652.Pp 653The command 654.Ar usernext 655returns the next available user and group ids separated by a colon. 656This is normally of interest only to interactive scripts or front-ends 657that use 658.Nm pw . 659.Pp 660.Sh GROUP OPTIONS 661The 662.Ql Fl C 663and 664.Ql Fl q 665options (explained at the start of the previous section) are available 666with the group manipulation commands. 667Other common options to all group-related commands are: 668.Bl -tag -width "-m newmembers" 669.It Fl n Ar name 670Specify the group name. 671.It Fl g Ar gid 672Specify the group numeric id. 673.Pp 674As with the account name and id fields, you will usually only need 675to supply one of these, as the group name implies the uid and vice 676versa. 677You will only need to use both when setting a specific group id 678against a new group or when changing the uid of an existing group. 679.Ql Fl M Ar memberlist 680This option provides an alternative way to add existing users to a 681new group (in groupadd) or replace an existing membership list (in 682groupmod). 683.Ar memberlist 684is a comma separated list of valid and existing user names or uids. 685.It Fl m Ar newmembers 686Similar to 687.Ql Fl M , 688this option allows the 689.Em addition 690of existing users to a group without replacing the existing list of 691members. 692Login names or user ids may be used, and duplicate users are 693silently eliminated. 694.El 695.Pp 696.Ar groupadd 697also has a 698.Ql Fl o 699option that allows allocation of an existing group id to a new group. 700The default action is to reject an attempt to add a group, and this option overrides 701the check for duplicate group ids. 702There is rarely any need to duplicate a group id. 703.Pp 704The 705.Ar groupmod 706command adds one additional option: 707.Pp 708.Bl -tag -width "-m newmembers" 709.It Fl l Ar name 710This option allows changing of an existing group name to 711.Ql \&name . 712The new name must not already exist, and any attempt to duplicate an existing group 713name will be rejected. 714.El 715.Pp 716Options for 717.Ar groupshow 718are the same as for 719.Ar usershow , 720with the 721.Ql Fl g Ar gid 722replacing 723.Ql Fl u Ar uid 724to specify the group id. 725.Pp 726The command 727.Ar groupnext 728returns the next available group id on standard output. 729.Sh DIAGNOSTICS 730.Nm Pw 731returns EXIT_SUCCESS on successful operation, otherwise 732.Nm 733returns one of the 734following exit codes defined by 735.Xr sysexits 3 736as follows: 737.Bl -tag -width xxxx 738.It EX_USAGE 739.Bl -bullet -compact 740.It 741Command line syntax errors (invalid keyword, unknown option). 742.El 743.It EX_NOPERM 744.Bl -bullet -compact 745.It 746Attempting to run one of the update modes as non-root. 747.El 748.It EX_OSERR 749.Bl -bullet -compact 750.It 751Memory allocation error. 752.It 753Read error from password file descriptor. 754.El 755.It EX_DATAERR 756.Bl -bullet -compact 757.It 758Bad or invalid data provided or missing on the command line or 759via the password file descriptor. 760.It 761Attempted to remove, rename root account or change its uid. 762.El 763.It EX_OSFILE 764.Bl -bullet -compact 765.It 766Skeleton directory is invalid or does not exist. 767.It 768Base home directory is invalid or does not exist. 769.It 770Invalid or non-existent shell specified. 771.El 772.It EX_NOUSER 773.Bl -bullet -compact 774.It 775User, user id, group or group id specified does not exist. 776.It 777User or group recorded, added, or modified unexpectedly disappeared. 778.El 779.It EX_SOFTWARE 780.Bl -bullet -compact 781.It 782No more group or user ids available within specified range. 783.El 784.It EX_IOERR 785.Bl -bullet -compact 786.It 787Unable to rewrite configuration file. 788.It 789Error updating group or user database files. 790.It 791Update error for passwd or group database files. 792.El 793.It EX_CONFIG 794.Bl -bullet -compact 795.It 796No base home directory configured. 797.El 798.El 799.Pp 800.Sh NOTES 801For a summary of options available with each command, you can use 802.Dl pw [command] help 803For example, 804.Dl pw useradd help 805lists all available options for the useradd operation. 806.Pp 807.Nm Pw 808allows 8-bit characters in the passwd GECOS field (user's full name, 809office, work and home phone number subfields), but disallows them in 810user login and group names. 811Use 8-bit characters with caution, as connection to the Internet will 812require that your mail transport program supports 8BITMIME, and will 813convert headers containing 8-bit characters to 7-bit quoted-printable 814format. 815.Xr sendmail 8 816does support this. 817Use of 8-bit characters in the GECOS field should be used in 818conjunction with the user's default locale and character set 819and should not be implemented without their use. 820Using 8-bit characters may also affect other 821programs that transmit the contents of the GECOS field over the 822Internet, such as 823.Xr fingerd 8 , 824and a small number of TCP/IP clients, such as IRC, where full names 825specified in the passwd file may be used by default. 826.Sh FILES 827.Bl -tag -width /etc/master.passwd.new -compact 828.It Pa /etc/master.passwd 829The user database 830.It Pa /etc/passwd 831A Version 7 format password file 832.It Pa /etc/login.conf 833The user capabilities database 834.It Pa /etc/group 835The group database 836.It Pa /etc/master.passwd.new 837Temporary copy of the master password file 838.It Pa /etc/passwd.new 839Temporary copy of the Version 7 password file 840.It Pa /etc/group.new 841Temporary copy of the group file 842.It Pa /etc/pw.conf 843Pw default options file 844.El 845.Sh SEE ALSO 846.Xr chpass 1 , 847.Xr passwd 1 , 848.Xr group 5 , 849.Xr login.conf 5 , 850.Xr passwd 5 , 851.Xr pw.conf 5 , 852.Xr pwd_mkdb 8 , 853.Xr vipw 8 854.Sh HISTORY 855.Nm Pw 856was written to mimic many of the options used in the SYSV 857.Em shadow 858support suite, but is modified for passwd and group fields specific to 859the 860.Bx 4.4 861operating system, and combines all of the major elements 862into a single command. 863