--- trunk/mage/usr/lib/mage/museradd 2011/04/27 09:45:07 1273 +++ trunk/mage/usr/lib/mage/museradd 2011/08/30 10:37:48 1500 @@ -55,6 +55,13 @@ echo "${FIXED_GROUP_OPTS}" } +if [[ ! -z ${MROOT} ]] && [[ ${MROOT} != / ]] +then + chroot="chroot ${MROOT} " +else + chroot="" +fi + while getopts "o:-" opt ; do case "${opt}" in o) @@ -84,26 +91,30 @@ # busybox support needed? if need_busybox_support adduser then - echo " Adding user '${USER_TO_ADD}' ..." - adduser -D $(busybox_fix_user_opts ${USER_OPTS}) "${USER_TO_ADD}" + echo -n " Adding user '${USER_TO_ADD}'" + [[ ! -z ${chroot} ]] && echo -n " into MROOT='${MROOT}'" + echo " ..." + ${chroot} adduser -D $(busybox_fix_user_opts ${USER_OPTS}) "${USER_TO_ADD}" for grp in $(busybox_fix_group_opts ${USER_OPTS}) do - addgroup "${USER_TO_ADD}" "${grp}" + ${chroot} addgroup "${USER_TO_ADD}" "${grp}" done # normal systems else - #start nscd to cache passwd - $(which nscd) -i passwd # get the info - my_user="$(getent passwd ${USER_TO_ADD})" + my_user="$(${chroot} getent passwd ${USER_TO_ADD})" if [ -z "${my_user}" ] then - echo " Adding user '${USER_TO_ADD}' ..." - useradd ${USER_OPTS} "${USER_TO_ADD}" + echo -n " Adding user '${USER_TO_ADD}'" + [[ ! -z ${chroot} ]] && echo -n " into MROOT='${MROOT}'" + echo " ..." + ${chroot} useradd ${USER_OPTS} "${USER_TO_ADD}" else - echo " Modifing user '${USER_TO_ADD}' ..." - usermod ${USER_OPTS} "${USER_TO_ADD}" + echo -n " Modifing user '${USER_TO_ADD}'" + [[ ! -z ${chroot} ]] && echo -n " in MROOT='${MROOT}'" + echo " ..." + ${chroot} usermod ${USER_OPTS} "${USER_TO_ADD}" fi fi