amd doesn't like NIS maps from a Windows NIS server

Jim Hatfield subscriber at insignia.com
Wed Jan 11 08:46:51 PST 2006


We've been using NIS-based automounter maps for ages, using a
Solaris NIS server. Some of our machines use autofs type maps,
and some use amd, notably the FreeBSD boxes.

As part of a move to single sign-on I've implemented a NIS server
using Microsoft's Services for Unix installed on an Active Directory
domain controller, and (painfully) created the automounting maps.

The autofs-using machines are OK, but amd just doesn't want to play.
It seems to be OK about the top-level "master" map, but not the ones
referenced by that. As an experiment I've mixed file-based and NIS
maps. My rc.conf contains:

>amd_enable="YES"
>amd_map_program="cat /usr/local/etc/amd.master"
>amd_flags="-x all -D info -l syslog:local7"

/usr/local/etc/amd.master contains:

>/home   amd.home
>/mp     /usr/local/etc/amd.mp
>/net    /usr/local/etc/amd.net
>/users  /usr/local/etc/amd.users

When the machine starts I get:

>Jan 11 11:52:30 speyburn amd[408]: /mp: disabling nfs congestion window
>Jan 11 11:52:30 speyburn amd[410]: /users: disabling nfs congestion window
>Jan 11 11:52:30 speyburn amd[411]: /net: disabling nfs congestion window
>Jan 11 11:52:30 speyburn amd[409]: /home: disabling nfs congestion window
>Jan 11 11:52:30 speyburn amd[407]: first time load of map /usr/local/etc/amd.mp
>succeeded
>Jan 11 11:52:30 speyburn amd[407]: /usr/local/etc/amd.mp mounted fstype toplvl o
>n /mp
>Jan 11 11:52:30 speyburn amd[407]: first time load of map /usr/local/etc/amd.use
>rs succeeded
>Jan 11 11:52:30 speyburn amd[407]: /usr/local/etc/amd.users mounted fstype toplv
>l on /users
>Jan 11 11:52:30 speyburn amd[407]: first time load of map /usr/local/etc/amd.net
> succeeded
>Jan 11 11:52:30 speyburn amd[407]: /usr/local/etc/amd.net mounted fstype toplvl
>on /net
>Jan 11 11:52:30 speyburn amd[407]: No source data for map amd.home
>Jan 11 11:52:30 speyburn amd[407]: amd.home mounted fstype toplvl on /home

So the file-based ones work fine, but the single NIS map, amd.home,
does not.

And yet if I do a "ypcat -k amd.home" I get exactly the same as when I
was talking to the Solaris NIS server - but it just doesn't work. If I
replace it with a file with the same contents, it works fine. Aaargh!

I've looked at the source of amd but my C experience is 15 years old
now and I'm struggling a bit!


More information about the freebsd-questions mailing list