The libpam's has an error when generating the rootfs:
chmod: cannot access `/usr/sbin/unix_chkpwd': No such file or directory
This is because the following code in libpam_1.1.5.bb:
pkg_postinst_pam-plugin-unix () {
# below is necessary to allow unix_chkpwd get user info from shadow file
# on lsb images
chmod 4755 ${sbindir}/unix_chkpwd
}
This is to set the setuid permission for unix_chkpwd (the lsb test
requires this), but it lacks a "${D}", and we can do this in the install
stage.
[YOCTO #2049]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
LICENSE = "GPLv2+ | BSD"
LIC_FILES_CHKSUM = "file://COPYING;md5=ca0395de9a86191a078b8b79302e3083"
-PR = "r2"
+PR = "r3"
SRC_URI = "https://fedorahosted.org/releases/l/i/linux-pam/Linux-PAM-${PV}.tar.bz2 \
file://99_pam \
install -d ${D}${sysconfdir}/pam.d/
install -m 0644 ${WORKDIR}/pam.d/* ${D}${sysconfdir}/pam.d/
-}
-pkg_postinst_pam-plugin-unix () {
- # below is necessary to allow unix_chkpwd get user info from shadow file
- # on lsb images
- chmod 4755 ${sbindir}/unix_chkpwd
+ # The lsb requires unix_chkpwd has setuid permission
+ chmod 4755 ${D}${sbindir}/unix_chkpwd
}