diff --git a/ublinux/rc.preinit.d/51-autologin b/ublinux/rc.preinit.d/51-autologin index 8521571..604b8c7 100755 --- a/ublinux/rc.preinit.d/51-autologin +++ b/ublinux/rc.preinit.d/51-autologin @@ -21,7 +21,10 @@ SOURCE=${SYSCONF}/config; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null SOURCE=${SYSCONF}/desktop; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null PASS_ADMUID=$(grep "^$(grep ":${ADMUID}:${ADMUID}:" ${ROOTFS}/etc/passwd | cut -d: -f1):" ${ROOTFS}/etc/shadow | cut -d: -f2) #" - if [[ -z ${AUTOLOGINUSER} ]] && [[ ${PASS_ADMUID} == ${NOSECUREROOTPASSWD} && ${PASS_ADMUID} == ${DEFAULTPASSWD} ]]; then + #UID_MIN=$(grep "^UID_MIN" ${ROOTFS}/etc/login.defs | cut -d' ' -f2) + UID_MIN=$(read -d '' < "${ROOTFS}/etc/login.defs"; [[ "${REPLY}" =~ [^#[^:space:]]*UID_MIN[[:space:]]+([[:digit:]]+) ]]; echo -n "${BASH_REMATCH[1]}") + ONLY_ONE_USER=$(awk -F':' -v USER_MIN=${UID_MIN} '$3 > USER_MIN && $1 != "nobody" { print $1}' ${ROOTFS}/etc/passwd) + if [[ -z ${AUTOLOGINUSER} && -z ${ONLY_ONE_USER} && ${PASS_ADMUID} == ${NOSECUREROOTPASSWD} && ${PASS_ADMUID} == ${DEFAULTPASSWD} ]]; then echo "AUTOLOGINUSER=yes" >> ${SYSCONF}/desktop AUTOLOGINUSER=yes fi