#!/usr/bin/bash # # Initial script for UBLinux # This script are launching before starting init from initrd script # Current dir allways must be set to root (/) # All system path must be relative, except initrd dirs ENABLED=no [[ ${ENABLED} == "yes" ]] || exit 0 DEBUGMODE=no PATH=.:/:/usr/bin:/usr/local/bin:/usr/local/sbin unset ROOTFS; [[ -d /usr/lib/ublinux ]] || ROOTFS=. SOURCE=${ROOTFS}/usr/lib/ublinux/functions; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null || exit 0 SOURCE=${ROOTFS}/usr/lib/ublinux/default; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null || exit 0 debug_mode "$0" "$@" SYSCONF="${ROOTFS}${SYSCONF}" SOURCE=${SYSCONF}/config; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null SOURCE=${SYSCONF}/network; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null if [[ -n ${ADSERVER} && -n ${DOMAIN} ]]; then [[ -z ${KERBEROS_REALM} ]] && KERBEROS_REALM=${DOMAIN^^} [[ -z ${SAMBADOMAIN} ]] && SAMBADOMAIN=$(echo ${KERBEROS_REALM} | awk -F . '{print $1}') sed -i s/kerberos.ublinux.ru/$ADSERVER/ etc/krb5.conf sed -i s/LOCAL.UBLINUX.RU/$KERBEROS_REALM/ etc/krb5.conf sed -i s/local.ublinux.ru/$DOMAIN/ etc/krb5.conf sed -i '/realm =/d' etc/samba/smb.conf sed -i '/security =/d' etc/samba/smb.conf sed -i '/password server =/d' etc/samba/smb.conf sed -i '/\[global\]/ s/$/'"\n realm = ${KERBEROS_REALM}\n security = ADS\n password server = ${ADSERVER}"/ etc/samba/smb.conf sed -i s/'^passwd:.*$'/'passwd: files winbind'/ etc/nsswitch.conf sed -i s/'^shadow:.*$'/'shadow: files winbind'/ etc/nsswitch.conf sed -i s/'^group:.*$'/'group: files winbind'/ etc/nsswitch.conf cp -pf etc/pam.d/system-auth-krb etc/pam.d/system-auth fi if [[ -n "${SAMBADOMAIN}" ]]; then sed -i s/"workgroup = .*"/"workgroup = ${SAMBADOMAIN}"/ etc/samba/smb.conf sed -i s/"^NT_DOMAIN=.*"/"NT_DOMAIN=${SAMBADOMAIN}"/ etc/ntlmaps.cfg fi