shadowのビルド
shadowは、安全なパスワード管理を行うためのコマンド群です。 login コマンド、passwd コマンド、useradd コマンドなどが含まれます。
ビルド・インストール前リストの生成
最初に、ビルド・インストール前リストを生成します。
/sources/genprevlist.sh > /dev/null 2>&1
/sources/genprevlist.sh > /dev/null 2>&1

ソースファイルの展開
ソースファイルを展開します。
cd /sourcestar xvf shadow-4.2.1.tar.xz cd shadow-4.2.1
cd /sources
tar xvf shadow-4.2.1.tar.xz
cd shadow-4.2.1



ソースファイルの修正
展開したソースファイルを修正します。
sed -i -e 's,groups$(EXEEXT) ,,' src/Makefile.infind man -name Makefile.in -exec sed -i -e 's,groups\.1 , ,' {} \; sed -i \ -e 's,#ENCRYPT_METHOD DES,ENCRYPT_METHOD SHA512,' \ -e 's,/var/spool/mail,/var/mail,' \ etc/login.defs sed -i -e 's/1000/999/' etc/useradd
sed -i -e 's,groups$(EXEEXT) ,,' src/Makefile.in
find man -name Makefile.in -exec sed -i -e 's,groups\.1 , ,' {} \;
sed -i \
-e 's,#ENCRYPT_METHOD DES,ENCRYPT_METHOD SHA512,' \
-e 's,/var/spool/mail,/var/mail,' \
etc/login.defs
sed -i -e 's/1000/999/' etc/useradd







configure
configureを実行します。
./configure \--sysconfdir=/etc \ --with-group-name-max-length=32 > ../../logs/configurelog.shadow 2>&1
./configure \
--sysconfdir=/etc \
--with-group-name-max-length=32 > ../../logs/configurelog.shadow 2>&1



configureが終了したら、ログファイルに出力された内容を参照し、正常に終了したことを確認します。
cat ../../logs/configurelog.shadow
cat ../../logs/configurelog.shadow

インストール後の追加作業
インストール後の追加作業を行います。 実行ファイルを、本来あるべきディレクトリに移動します。
mv -v /usr/bin/passwd /bin
mv -v /usr/bin/passwd /bin

続いて、シャドウパスワード、シャドウグループを有効にします。
pwconvgrpconv
pwconv
grpconv


pwconv コマンドは、/etc/passwd から /etc/shadow を、grpconv コマンドは、/etc/group から /etc/gshadow を生成します。
root のパスワードを設定します。
passwd root
passwd root

パスワードの入力を求められますので、任意のパスワードを入力してください。
ソースファイル付属文書のインストール
ソースファイルに付属している文書のインストールを行います。
mkdir -vp /usr/share/doc/shadow-4.2.1cp -va ABOUT-NLS /usr/share/doc/shadow-4.2.1 cp -va COPYING /usr/share/doc/shadow-4.2.1 cp -va ChangeLog /usr/share/doc/shadow-4.2.1 cp -va NEWS /usr/share/doc/shadow-4.2.1 cp -va README /usr/share/doc/shadow-4.2.1 cp -va TODO /usr/share/doc/shadow-4.2.1 cp -va doc/HOWTO /usr/share/doc/shadow-4.2.1 cp -va doc/README.limits /usr/share/doc/shadow-4.2.1 cp -va doc/README.platforms /usr/share/doc/shadow-4.2.1 cp -va doc/WISHLIST /usr/share/doc/shadow-4.2.1 cp -va doc/console.c.spec.txt /usr/share/doc/shadow-4.2.1
mkdir -vp /usr/share/doc/shadow-4.2.1
cp -va ABOUT-NLS /usr/share/doc/shadow-4.2.1
cp -va COPYING /usr/share/doc/shadow-4.2.1
cp -va ChangeLog /usr/share/doc/shadow-4.2.1
cp -va NEWS /usr/share/doc/shadow-4.2.1
cp -va README /usr/share/doc/shadow-4.2.1
cp -va TODO /usr/share/doc/shadow-4.2.1
cp -va doc/HOWTO /usr/share/doc/shadow-4.2.1
cp -va doc/README.limits /usr/share/doc/shadow-4.2.1
cp -va doc/README.platforms /usr/share/doc/shadow-4.2.1
cp -va doc/WISHLIST /usr/share/doc/shadow-4.2.1
cp -va doc/console.c.spec.txt /usr/share/doc/shadow-4.2.1












インストールリストの生成
最後に、インストールリストを生成します。
/sources/genpostlist.sh > /dev/null 2>&1/sources/gendifflist.sh shadow
/sources/genpostlist.sh > /dev/null 2>&1
/sources/gendifflist.sh shadow







