[Pkg-shadow-devel] Bug#1006216: shadow: suggestions for man 8 groupadd

Markus Hiereth translation at hiereth.de
Mon Feb 21 13:24:01 GMT 2022


Source: shadow
Version: 4.8.1
Severity: minor

Hi Serge,

I withdrew the changes you did not appreciate, kept the ones you did no 
comment on and used the suggustions you made.

Attached the respective xml and diff files.

Best regards
Markus

------------------------------------------------------------------------

"Serge E. Hallyn" <serge at hallyn.com> schrieb am 20. Februar 2022 um 10:33
> On Thu, Feb 17, 2022 at 09:43:59PM +0100, Markus Hiereth wrote:
> > Hi Serge,
> > 
> > today I worked on the message catalogue for groupadd.8
> > 
> > I have no problems with understanding or translating this manual
> > page. Nevertheless there are paragraphs for which I would suggest
> > alternatives explanations. They are alreay in an attached xml-file.
> > 
> > Below, there is a diff with commments that allows you to jugde the
> > suggestions.
> > 
> > Feel free to tell me what changes are welcome.
> > 
> > Best regards
> > Markus
> > 
> > 
> > --- shadow-4.8.1/man/groupadd.8.xml	2019-07-23 17:26:08.000000000 +0200
> > +++ shadow-4.8.1_mh/man/groupadd.8.xml	2022-02-17 16:30:14.284465573 +0100
> > 

> > Elsewhere, capital letters are used for such arguments 
> > 
> > @@ -72,10 +72,10 @@
> >      <cmdsynopsis>
> >        <command>groupadd</command>
> >        <arg choice='opt'>
> > -	<replaceable>options</replaceable>
> > +	<replaceable>OPTIONS</replaceable>
> >        </arg>
> >        <arg choice='plain'>
> > -	<replaceable>group</replaceable>
> > +	<replaceable>NEWGROUP</replaceable>
> >        </arg>
> >      </cmdsynopsis>
> >    </refsynopsisdiv>
> > 

> > These two paragraphs come from section CAVEATS, but I think the are
> > necessary parts of the section DESCRIPTION
> > @@ -87,6 +87,15 @@
> >        values from the system. The new group will be entered into the system
> >        files as needed.
> >      </para>
> > +     <para>
> > +       Groupnames must start with a lower case letter or an underscore,
> > +       followed by lower case letters, digits, underscores, or dashes.
> > +       They can end with a dollar sign.
> > +       In regular expression terms: [a-z_][a-z0-9_-]*[$]?
> > +     </para>
> > +     <para>
> > +       Groupnames may only be up to &GROUP_NAME_MAX_LENGTH; characters long.
> > +     </para>
> >    </refsect1>
> > 
> > 

> > Changed due to my different view on the attribute "unique". For me, an
> > ID that appears only once is an unique but in our context, it always
> > deals with the relation between names and IDs.
> > @@ -103,10 +112,11 @@
> >  	<listitem>
> >  	  <para>
> >  	    This option causes the command to simply exit with success
> > -	    status if the specified group already exists. When used with
> > -	    <option>-g</option>, and the specified GID already exists,
> > -	    another (unique) GID is chosen (i.e. <option>-g</option> is
> > -	    turned off).
> > +	    status if the specified group already exists. When used
> > +	    with <option>-g</option> and the specified GID already
> > +	    exists, another one is chosen. As result, option
> > +	    <option>-g</option> is turned off and the GID points in a
> > +	    unique way to <replaceable>NEWGROUP</replaceable>.
> 
> Sorry, the new language is confusing to me.
> 
> Would simply doing 's/another (unique)/a different, unused, /' be
> clearer to you?

Yes it would.

 
> > I just replaced "this value" with "GID" which is used in the line above
> > 
> > @@ -115,8 +125,8 @@
> >  	  <option>-g</option>, <option>--gid</option> <replaceable>GID</replaceable>
> >  	</term>
> >  	<listitem>
> > -	  <para>The numerical value of the group's ID. This value must be
> > -	    unique, unless the <option>-o</option> option is used. The value
> > +	  <para>The numerical value of the group's ID. <replaceable>GID</replaceable> 
> > +	    must be unique, unless the <option>-o</option> option is used. The value
> >  	    must be non-negative. The default is to use the smallest ID
> >  	    value greater than or equal to <option>GID_MIN</option> and
> >  	    greater than every other group.
> 
> Ok.

> > Again, "unique-and-non-unique" stuff 
> > 
> > @@ -159,7 +169,10 @@
> >  	</term>
> >  	<listitem>
> >  	  <para>
> > -	    This option permits to add a group with a non-unique GID.
> > +	    permits the creation of a group with an already used
> > +	    numerical ID. In turn, for this
> > +	    <replaceable>GID</replaceable>, the mapping towards group
> > +	    <replaceable>NEWGROUP</replaceable> will not be unique.
> 
> The more I see the substitutions, the more I think we should stick to
> using the term "unique" everywhere.

OK

> > Explanation similar to the one in useradd.8 and usermod.8. Provides more information about the implications.
> > 
> > @@ -169,11 +182,17 @@
> >  	</term>
> >  	<listitem>
> >  	  <para>
> > -	    The encrypted password, as returned by <citerefentry>
> > -	    <refentrytitle>crypt</refentrytitle><manvolnum>3</manvolnum>
> > -	    </citerefentry>. The default is to disable the password.
> > +	    defines an initial password for the group account. PASSWORD is expected to
> > +            be encrypted, as returned by <citerefentry><refentrytitle>crypt
> > +            </refentrytitle><manvolnum>3</manvolnum></citerefentry>. 
> 
> Good.

> 
> >  	  </para>
> >  	  <para>
> > +            Without this option, the group account will be locked and
> > +            with no password defined, i.e. a single exclamation mark
> > +            in the respective field of ths system account file 
> > +            <filename>/etc/group</filename> or <filename>/etc/gshadow</filename>.
> > +          </para>
> > +	  <para>
> >  	    <emphasis role="bold">Note:</emphasis> This option is not
> >  	    recommended because the password (or encrypted password) will
> >  	    be visible by users listing the processes.
 


> > Probably a more precise explanation, similar to the one in usermod.8.  
> > @@ -218,14 +237,13 @@
> >  	</term>
> >  	<listitem>
> >  	  <para>
> > -	    Apply changes in the <replaceable>PREFIX_DIR</replaceable>
> > -	    directory and use the configuration files from the
> > -	    <replaceable>PREFIX_DIR</replaceable> directory.
> > -		This option does not chroot and is intended for preparing 
> > -		a cross-compilation target.
> > -		Some limitations: NIS and LDAP users/groups are not verified.
> > -		PAM authentication is using the host files.
> > -		No SELINUX support.
> > +	    Apply changes within the directory tree starting with
> 
> How about 'Apply changes under the directory tree'.


> > +	    <replaceable>PREFIX_DIR</replaceable> and use as well the
> > +	    configuration files located there.  This option does not
> > +	    chroot and is intended for preparing a cross-compilation
> > +	    target.  Some limitations: NIS and LDAP users/groups are
> > +	    not verified.  PAM authentication is using the host files.
> > +	    No SELINUX support.
> >  	  </para>
> >  	</listitem>
> >        </varlistentry>
> > 
> > Just deleted period signs.
> > @@ -252,19 +270,19 @@
> >        <varlistentry>
> >  	<term><filename>/etc/group</filename></term>
> >  	<listitem>
> > -	  <para>Group account information.</para>
> > +	  <para>Group account information</para>
 
> Why do you want to get rid of these?

As mentioned: Period would finish sentences, but we do not have a
sentence/phrase. But the periods are inserted again. They are not
worth being discussed.


> >  	</listitem>
> >        </varlistentry>
> >        <varlistentry condition="gshadow">
> >  	<term><filename>/etc/gshadow</filename></term>
> >  	<listitem>
> > -	  <para>Secure group account information.</para>
> > +	  <para>Secure group account information</para>
> >  	</listitem>
> >        </varlistentry>
> >        <varlistentry>
> >  	<term><filename>/etc/login.defs</filename></term>
> >  	<listitem>
> > -	  <para>Shadow password suite configuration.</para>
> > +	  <para>Shadow password suite configuration</para>
> >  	</listitem>
> >        </varlistentry>
> >      </variablelist>
> > 
> > Two paragraphs moved towards section DESCRIPTION
> > @@ -273,15 +291,6 @@
> >     <refsect1 id='caveats'>
> >       <title>CAVEATS</title>
> >       <para>
> > -       Groupnames must start with a lower case letter or an underscore,
> > -       followed by lower case letters, digits, underscores, or dashes.
> > -       They can end with a dollar sign.
> > -       In regular expression terms: [a-z_][a-z0-9_-]*[$]?
> > -     </para>
> > -     <para>
> > -       Groupnames may only be up to &GROUP_NAME_MAX_LENGTH; characters long.
> > -     </para>
> > -     <para>
> >         You may not add a NIS or LDAP group. This must be performed on the
> >         corresponding server.
> >       </para>
-------------- next part --------------
--- shadow-4.8.1/man/groupadd.8.xml	2019-07-23 17:26:08.000000000 +0200
+++ shadow-4.8.1_mh/man/groupadd.8.xml	2022-02-21 14:10:58.360297207 +0100
@@ -72,10 +72,10 @@
     <cmdsynopsis>
       <command>groupadd</command>
       <arg choice='opt'>
-	<replaceable>options</replaceable>
+	<replaceable>OPTIONS</replaceable>
       </arg>
       <arg choice='plain'>
-	<replaceable>group</replaceable>
+	<replaceable>NEWGROUP</replaceable>
       </arg>
     </cmdsynopsis>
   </refsynopsisdiv>
@@ -87,6 +87,15 @@
       values from the system. The new group will be entered into the system
       files as needed.
     </para>
+     <para>
+       Groupnames must start with a lower case letter or an underscore,
+       followed by lower case letters, digits, underscores, or dashes.
+       They can end with a dollar sign.
+       In regular expression terms: [a-z_][a-z0-9_-]*[$]?
+     </para>
+     <para>
+       Groupnames may only be up to &GROUP_NAME_MAX_LENGTH; characters long.
+     </para>
   </refsect1>
 
   <refsect1 id='options'>
@@ -102,11 +111,11 @@
 	</term>
 	<listitem>
 	  <para>
-	    This option causes the command to simply exit with success
-	    status if the specified group already exists. When used with
-	    <option>-g</option>, and the specified GID already exists,
-	    another (unique) GID is chosen (i.e. <option>-g</option> is
-	    turned off).
+            This option causes the command to simply exit with success
+            status if the specified group already exists. When used with
+            <option>-g</option>, and the specified GID already exists,
+            another (unique) GID is chosen (i.e. <option>-g</option> is
+            turned off).
 	  </para>
 	</listitem>
       </varlistentry>
@@ -115,8 +124,8 @@
 	  <option>-g</option>, <option>--gid</option> <replaceable>GID</replaceable>
 	</term>
 	<listitem>
-	  <para>The numerical value of the group's ID. This value must be
-	    unique, unless the <option>-o</option> option is used. The value
+	  <para>The numerical value of the group's ID. <replaceable>GID</replaceable> 
+	    must be unique, unless the <option>-o</option> option is used. The value
 	    must be non-negative. The default is to use the smallest ID
 	    value greater than or equal to <option>GID_MIN</option> and
 	    greater than every other group.
@@ -159,7 +168,10 @@
 	</term>
 	<listitem>
 	  <para>
-	    This option permits to add a group with a non-unique GID.
+	    permits the creation of a group with an already used
+	    numerical ID. In turn, for this
+	    <replaceable>GID</replaceable>, the mapping towards group
+	    <replaceable>NEWGROUP</replaceable> will not be unique.
 	  </para>
 	</listitem>
       </varlistentry>
@@ -169,11 +181,17 @@
 	</term>
 	<listitem>
 	  <para>
-	    The encrypted password, as returned by <citerefentry>
-	    <refentrytitle>crypt</refentrytitle><manvolnum>3</manvolnum>
-	    </citerefentry>. The default is to disable the password.
+	    defines an initial password for the group account. PASSWORD is expected to
+            be encrypted, as returned by <citerefentry><refentrytitle>crypt
+            </refentrytitle><manvolnum>3</manvolnum></citerefentry>. 
 	  </para>
 	  <para>
+            Without this option, the group account will be locked and
+            with no password defined, i.e. a single exclamation mark
+            in the respective field of ths system account file 
+            <filename>/etc/group</filename> or <filename>/etc/gshadow</filename>.
+          </para>
+	  <para>
 	    <emphasis role="bold">Note:</emphasis> This option is not
 	    recommended because the password (or encrypted password) will
 	    be visible by users listing the processes.
@@ -218,14 +236,13 @@
 	</term>
 	<listitem>
 	  <para>
-	    Apply changes in the <replaceable>PREFIX_DIR</replaceable>
-	    directory and use the configuration files from the
-	    <replaceable>PREFIX_DIR</replaceable> directory.
-		This option does not chroot and is intended for preparing 
-		a cross-compilation target.
-		Some limitations: NIS and LDAP users/groups are not verified.
-		PAM authentication is using the host files.
-		No SELINUX support.
+	    Apply changes under the directory tree starting with
+	    <replaceable>PREFIX_DIR</replaceable> and use as well the
+	    configuration files located there. This option does not
+	    chroot and is intended for preparing a cross-compilation
+	    target.  Some limitations: NIS and LDAP users/groups are
+	    not verified.  PAM authentication is using the host files.
+	    No SELINUX support.
 	  </para>
 	</listitem>
       </varlistentry>
@@ -273,15 +290,6 @@
    <refsect1 id='caveats'>
      <title>CAVEATS</title>
      <para>
-       Groupnames must start with a lower case letter or an underscore,
-       followed by lower case letters, digits, underscores, or dashes.
-       They can end with a dollar sign.
-       In regular expression terms: [a-z_][a-z0-9_-]*[$]?
-     </para>
-     <para>
-       Groupnames may only be up to &GROUP_NAME_MAX_LENGTH; characters long.
-     </para>
-     <para>
        You may not add a NIS or LDAP group. This must be performed on the
        corresponding server.
      </para>
-------------- next part --------------
<?xml version="1.0" encoding="UTF-8"?>
<!--
   Copyright (c) 1991       , Julianne Frances Haugh
   Copyright (c) 2007 - 2011, Nicolas Fran?ois
   All rights reserved.
  
   Redistribution and use in source and binary forms, with or without
   modification, are permitted provided that the following conditions
   are met:
   1. Redistributions of source code must retain the above copyright
      notice, this list of conditions and the following disclaimer.
   2. Redistributions in binary form must reproduce the above copyright
      notice, this list of conditions and the following disclaimer in the
      documentation and/or other materials provided with the distribution.
   3. The name of the copyright holders or contributors may not be used to
      endorse or promote products derived from this software without
      specific prior written permission.
  
   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
   ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
   PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT
   HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.5//EN"
  "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY GID_MAX               SYSTEM "login.defs.d/GID_MAX.xml">
<!ENTITY MAX_MEMBERS_PER_GROUP SYSTEM "login.defs.d/MAX_MEMBERS_PER_GROUP.xml">
<!ENTITY SYS_GID_MAX           SYSTEM "login.defs.d/SYS_GID_MAX.xml">
<!-- SHADOW-CONFIG-HERE -->
]>
<refentry id='groupadd.8'>
  <!-- $Id$ -->
  <refentryinfo>
    <author>
      <firstname>Julianne Frances</firstname>
      <surname>Haugh</surname>
      <contrib>Creation, 1991</contrib>
    </author>
    <author>
      <firstname>Thomas</firstname>
      <surname>K?oczko</surname>
      <email>kloczek at pld.org.pl</email>
      <contrib>shadow-utils maintainer, 2000 - 2007</contrib>
    </author>
    <author>
      <firstname>Nicolas</firstname>
      <surname>Fran?ois</surname>
      <email>nicolas.francois at centraliens.net</email>
      <contrib>shadow-utils maintainer, 2007 - now</contrib>
    </author>
  </refentryinfo>
  <refmeta>
    <refentrytitle>groupadd</refentrytitle>
    <manvolnum>8</manvolnum>
    <refmiscinfo class="sectdesc">System Management Commands</refmiscinfo>
    <refmiscinfo class="source">shadow-utils</refmiscinfo>
    <refmiscinfo class="version">&SHADOW_UTILS_VERSION;</refmiscinfo>
  </refmeta>
  <refnamediv id='name'>
    <refname>groupadd</refname>
    <refpurpose>create a new group</refpurpose>
  </refnamediv>
  <!-- body begins here -->
  <refsynopsisdiv id='synopsis'>
    <cmdsynopsis>
      <command>groupadd</command>
      <arg choice='opt'>
	<replaceable>OPTIONS</replaceable>
      </arg>
      <arg choice='plain'>
	<replaceable>NEWGROUP</replaceable>
      </arg>
    </cmdsynopsis>
  </refsynopsisdiv>

  <refsect1 id='description'>
    <title>DESCRIPTION</title>
    <para>The <command>groupadd</command> command creates a new group
      account using the values specified on the command line plus the default
      values from the system. The new group will be entered into the system
      files as needed.
    </para>
     <para>
       Groupnames must start with a lower case letter or an underscore,
       followed by lower case letters, digits, underscores, or dashes.
       They can end with a dollar sign.
       In regular expression terms: [a-z_][a-z0-9_-]*[$]?
     </para>
     <para>
       Groupnames may only be up to &GROUP_NAME_MAX_LENGTH; characters long.
     </para>
  </refsect1>

  <refsect1 id='options'>
    <title>OPTIONS</title>
    <para>
      The options which apply to the <command>groupadd</command> command
      are:
    </para>
    <variablelist remap='IP'>
      <varlistentry>
	<term>
	  <option>-f</option>, <option>--force</option>
	</term>
	<listitem>
	  <para>
            This option causes the command to simply exit with success
            status if the specified group already exists. When used with
            <option>-g</option>, and the specified GID already exists,
            another (unique) GID is chosen (i.e. <option>-g</option> is
            turned off).
	  </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term>
	  <option>-g</option>, <option>--gid</option> <replaceable>GID</replaceable>
	</term>
	<listitem>
	  <para>The numerical value of the group's ID. <replaceable>GID</replaceable> 
	    must be unique, unless the <option>-o</option> option is used. The value
	    must be non-negative. The default is to use the smallest ID
	    value greater than or equal to <option>GID_MIN</option> and
	    greater than every other group.
	  </para>
	  <para>
	    See also the <option>-r</option> option and the
	    <option>GID_MAX</option> description.
	  </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term><option>-h</option>, <option>--help</option></term>
	<listitem>
	  <para>Display help message and exit.</para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term>
	  <option>-K</option>, <option>--key</option> <replaceable>KEY</replaceable>=<replaceable>VALUE</replaceable>
	</term>
	<listitem>
	  <para>
	    Overrides <filename>/etc/login.defs</filename> defaults 
	    (GID_MIN, GID_MAX and others). Multiple
	    <option>-K</option> options can be specified.
	  </para>
	  <para>
	     Example: <option>-K</option> <replaceable>GID_MIN</replaceable>=<replaceable>100</replaceable> 
	    <option>-K</option> <replaceable>GID_MAX</replaceable>=<replaceable>499</replaceable>
	  </para>
	  <para>
	    Note: <option>-K</option> <replaceable>GID_MIN</replaceable>=<replaceable>10</replaceable>,<replaceable>GID_MAX</replaceable>=<replaceable>499</replaceable>
	    doesn't work yet.
	  </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term>
	  <option>-o</option>, <option>--non-unique</option>
	</term>
	<listitem>
	  <para>
	    permits the creation of a group with an already used
	    numerical ID. In turn, for this
	    <replaceable>GID</replaceable>, the mapping towards group
	    <replaceable>NEWGROUP</replaceable> will not be unique.
	  </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term>
	  <option>-p</option>, <option>--password</option> <replaceable>PASSWORD</replaceable>
	</term>
	<listitem>
	  <para>
	    defines an initial password for the group account. PASSWORD is expected to
            be encrypted, as returned by <citerefentry><refentrytitle>crypt
            </refentrytitle><manvolnum>3</manvolnum></citerefentry>. 
	  </para>
	  <para>
            Without this option, the group account will be locked and
            with no password defined, i.e. a single exclamation mark
            in the respective field of ths system account file 
            <filename>/etc/group</filename> or <filename>/etc/gshadow</filename>.
          </para>
	  <para>
	    <emphasis role="bold">Note:</emphasis> This option is not
	    recommended because the password (or encrypted password) will
	    be visible by users listing the processes.
	  </para>
	  <para>
	    You should make sure the password respects the system's
	    password policy.
	  </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term>
	  <option>-r</option>, <option>--system</option>
	</term>
	<listitem>
	  <para>
	    Create a system group.
	  </para>
	  <para>
	    The numeric identifiers of new system groups are chosen in
	    the <option>SYS_GID_MIN</option>-<option>SYS_GID_MAX</option>
	    range, defined in <filename>login.defs</filename>, instead of
	    <option>GID_MIN</option>-<option>GID_MAX</option>.
	  </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term>
	  <option>-R</option>, <option>--root</option> <replaceable>CHROOT_DIR</replaceable>
	</term>
	<listitem>
	  <para>
	    Apply changes in the <replaceable>CHROOT_DIR</replaceable>
	    directory and use the configuration files from the
	    <replaceable>CHROOT_DIR</replaceable> directory.
	  </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term>
	  <option>-P</option>, <option>--prefix</option> <replaceable>PREFIX_DIR</replaceable>
	</term>
	<listitem>
	  <para>
	    Apply changes under the directory tree starting with
	    <replaceable>PREFIX_DIR</replaceable> and use as well the
	    configuration files located there. This option does not
	    chroot and is intended for preparing a cross-compilation
	    target.  Some limitations: NIS and LDAP users/groups are
	    not verified.  PAM authentication is using the host files.
	    No SELINUX support.
	  </para>
	</listitem>
      </varlistentry>
    </variablelist>
  </refsect1>

  <refsect1 id='configuration'>
    <title>CONFIGURATION</title>
    <para>
      The following configuration variables in
      <filename>/etc/login.defs</filename> change the behavior of this
      tool:
    </para>
    <variablelist>
      &GID_MAX; <!-- documents also GID_MIN -->
      &MAX_MEMBERS_PER_GROUP;
      &SYS_GID_MAX; <!-- documents also SYS_GID_MIN -->
    </variablelist>
  </refsect1>

  <refsect1 id='files'>
    <title>FILES</title>
    <variablelist>
      <varlistentry>
	<term><filename>/etc/group</filename></term>
	<listitem>
	  <para>Group account information.</para>
	</listitem>
      </varlistentry>
      <varlistentry condition="gshadow">
	<term><filename>/etc/gshadow</filename></term>
	<listitem>
	  <para>Secure group account information.</para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term><filename>/etc/login.defs</filename></term>
	<listitem>
	  <para>Shadow password suite configuration.</para>
	</listitem>
      </varlistentry>
    </variablelist>
  </refsect1>

   <refsect1 id='caveats'>
     <title>CAVEATS</title>
     <para>
       You may not add a NIS or LDAP group. This must be performed on the
       corresponding server.
     </para>
     <para>
       If the groupname already exists in an external group database such
       as NIS or LDAP, <command>groupadd</command> will deny the group
       creation request.
     </para>
   </refsect1>

  <refsect1 id='exit_values'>
    <title>EXIT VALUES</title>
    <para>
      The <command>groupadd</command> command exits with the following values:
      <variablelist>
	<varlistentry>
	  <term><replaceable>0</replaceable></term>
	  <listitem>
	    <para>success</para>
	  </listitem>
	</varlistentry>
	<varlistentry>
	  <term><replaceable>2</replaceable></term>
	  <listitem>
	    <para>invalid command syntax</para>
	  </listitem>
	</varlistentry>
	<varlistentry>
	  <term><replaceable>3</replaceable></term>
	  <listitem>
	    <para>invalid argument to option</para>
	  </listitem>
	</varlistentry>
	<varlistentry>
	  <term><replaceable>4</replaceable></term>
	  <listitem>
	    <para>GID not unique (when <option>-o</option> not used)</para>
	  </listitem>
	</varlistentry>
	<varlistentry>
	  <term><replaceable>9</replaceable></term>
	  <listitem>
	    <para>group name not unique</para>
	  </listitem>
	</varlistentry>
	<varlistentry>
	  <term><replaceable>10</replaceable></term>
	  <listitem>
	    <para>can't update group file</para>
	  </listitem>
	</varlistentry>
      </variablelist>
    </para>
  </refsect1>

  <refsect1 id='see_also'>
    <title>SEE ALSO</title>
    <para><citerefentry>
	<refentrytitle>chfn</refentrytitle><manvolnum>1</manvolnum>
      </citerefentry>,
      <citerefentry>
	<refentrytitle>chsh</refentrytitle><manvolnum>1</manvolnum>
      </citerefentry>,
      <citerefentry>
	<refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum>
      </citerefentry>,
      <citerefentry>
	<refentrytitle>gpasswd</refentrytitle><manvolnum>8</manvolnum>
      </citerefentry>,
      <citerefentry>
	<refentrytitle>groupdel</refentrytitle><manvolnum>8</manvolnum>
      </citerefentry>,
      <citerefentry>
	<refentrytitle>groupmod</refentrytitle><manvolnum>8</manvolnum>
      </citerefentry>,
      <citerefentry>
	<refentrytitle>login.defs</refentrytitle><manvolnum>5</manvolnum>
      </citerefentry>,
      <citerefentry>
	<refentrytitle>useradd</refentrytitle><manvolnum>8</manvolnum>
      </citerefentry>,
      <citerefentry>
	<refentrytitle>userdel</refentrytitle><manvolnum>8</manvolnum>
      </citerefentry>,
      <citerefentry>
	<refentrytitle>usermod</refentrytitle><manvolnum>8</manvolnum>
      </citerefentry>.
    </para>
  </refsect1>
</refentry>


More information about the Pkg-shadow-devel mailing list