10.71. Shadow-4.0.16 32 Bit Libraries

The Shadow package contains programs for handling passwords in a secure way.

10.71.1. Installation of Shadow

[Note]

Note

If you would like to enforce the use of strong passwords, refer to http://www.linuxfromscratch.org/blfs/view/svn/postlfs/cracklib.html for installing Cracklib prior to building Shadow. Then add --with-libcrack to the configure command below.

Prepare Shadow for compilation:

CC="gcc ${BUILD32}" ./configure --libdir=/lib --sysconfdir=/etc \
   --enable-shared --without-libpam --without-audit --without-selinux

The meaning of the configure options:

--sysconfdir=/etc

Tells Shadow to install its configuration files into /etc, rather than /usr/etc.

--without-libpam

Support for Linux-PAM is enabled by default in Shadow, however PAM is not installed on a base CLFS system, so this switch disables PAM support in Shadow. For instructions to install PAM and link Shadow to it, you can look at http://www.linuxfromscratch.org/blfs/view/svn/postlfs/shadow.html.

--without-audit

Support for auditing is enabled by default, but a library that it needs is not installed in a base CLFS system. This switch disables auditing support.

--without-selinux

Support for selinux is enabled by default, but selinux is not built in a base CLFS system and configure will fail without this switch.

Disable the installation of the groups program and its man pages, as Coreutils provides a better version:

sed -i 's/groups$(EXEEXT) //' src/Makefile
sed -i '/groups/d' man/Makefile

Compile the package:

make

This package does not come with a test suite.

Install the package:

make install

Move a misplaced program to its proper location:

mv -v /usr/bin/passwd /bin

Move Shadow's dynamic libraries to a more appropriate location:

mv -v /lib/libshadow.*a /usr/lib
rm -v /lib/libshadow.so
ln -svf ../../lib/libshadow.so.0 /usr/lib/libshadow.so

Details on this package are located in Section 10.73.4, “Contents of Shadow.”