[Samba] samba member logon.. question.
Andrey Repin
anrdaemon at yandex.ru
Thu Apr 9 09:22:02 MDT 2015
Greetings, Rowland Penny!
>>>>> Ok, good.
>>>>> Now, how can I get RFC2307 attributes populated automatically upon
>>>>> users or
>>>>> groups creation?
>>>> You can't :-(
>>>> I'm experimenting with
>>>> https://github.com/laotse/SambaPosix
>>>> but it's quite buggy (at least regarding the features I'm trying,
>>>> namely, trying to assign uids the same way as ADUC).
>>>>
>>>>
>>>> Bye
>>> OH yes you can, well I can :-)
>> Can you share how?
>>
>> Bye
> You are using python, which to me is a very big snake, so I bash it :-D
> I just use these two functions in a bash script:
> # Finds the next useable user uidNumber or group gidNumber
> # Input : $1
> # $1 : msSFU30MaxUidNumber or msSFU30MaxGidNumber
> # Output : the first free uidNumber or gidNumber
> _findnext () {
> ATTR="$1"
> if [ -z "${ATTR}" ]; then
> error "No Attribute supplied"
> error "Cannot continue... Exiting."
> exit 1
> fi
> _NEXTID=$(ldbsearch -H ${LDBDB} -b
> "CN=${domainNETBios},CN=ypservers,CN=ypServ30,CN=RpcServices,CN=System,${domainDN}"
> -s sub '(objectClass=msSFU30DomainInfo)' ${ATTR} | grep "${ATTR}: " |
> awk '{print $NF}')
> if [ -z "$_NEXTID" ] || [ "$_NEXTID" -lt "10000" ]; then
> _NEXTID="10000"
> fi
> }
> # UPDATE msSFU30MaxUidNumber/msSFU30MaxGidNumber
> # Input : $1 $2
> # $1: what to update (msSFU30MaxUidNumber or msSFU30MaxGidNumber)
> # $2: Next Number
> #
> # Output : Nothing
> _updatemax () {
> ATTR="$1"
> IDNUM="$2"
> if [ -z "${ATTR}" ] || [ -z "${IDNUM}" ]; then
> error "Incomplete data supplied."
> error "Cannot continue... Exiting."
> exit 1
> fi
> echo "Updating ${ATTR}"
> IDLDIF="dn:
> CN=${domainNETBios},CN=ypservers,CN=ypServ30,CN=RpcServices,CN=System,${domainDN}
> changetype: modify
> replace: ${ATTR}
> ${ATTR}: ${IDNUM}"
> echo "${IDLDIF}" | ldbmodify -H ${LDBDB}
> if [ $? != 0 ]; then
> error "Error updating ${ATTR} in AD."
> echo "${LDIF}" > /tmp/update.ldif
> exit 1 # exits here if error
> fi
> unset IDLDIF
> echo "Successfully updated ${ATTR} in AD"
> }
That will only work on a domain controller. I don't want to touch it at all,
if I don't need to blow it apart.
Not to mention, it will not add "objectClass: posixAccount" to the user,
causing all sort of grief in a long run.
--
With best regards,
Andrey Repin
Thursday, April 9, 2015 18:13:07
Sorry for my terrible english...
More information about the samba
mailing list