[Samba] Won't %L work anymore?
Gary Algier
gaa at ulticom.com
Wed Dec 4 22:04:16 GMT 2002
A followup to my own post:
I went ahead and implemented a configuration with %L. It works great.
One problem: Micro@!#$t broke Win2k with SP3.
My test PC was running Win2k SP2. When it connected to the server it
seems to have supplied the "netbios name" of my server. I went into
my boss's office to show him how great this works and his Win2k SP3
did not show the same shares. They showed the shares that would
show if the "real" host name is used.
Here's my basic config:
System OS: Solaris 2.6
Samba: 2.2.7
Hostname: tea
IP addresses assigned: 172.25.0.13 (tea) 172.25.0.33 (cup) 172.25.0.34 (mug)
Partial configs:
/etc/samba/smb.conf:
[global]
interfaces = 127.0.0.1 172.25.0.13 172.25.0.33 172.25.0.34
include = /etc/samba/smb.conf.host-%L
/etc/samba/smb.conf.host-tea:
[global]
workgroup = MTLAUREL
netbios name = TEA
...
[some-shares]
...
/etc/samba/smb.conf.host-cup:
[global]
workgroup = MTLAUREL
netbios name = Cup
[other-shares]
...
/etc/samba/smb.conf.host-mug:
[global]
workgroup = MTLAUREL
netbios name = Cup
[more-shares]
...
So, am I crazy to think of using %L? Should I use another (hidden) % code?
Should I hack in %s (for sockname) or %l (for alternate %L) as the result
of getsockname()? Will this even work? Is this any different in samba 3?
Gary Algier wrote:
> I am trying to run multiple instances of samba on the same unix host. This
> is being done so that I can functionally breakdown the usage into, for
> example, a "finance" server and an "engineering" server. This is not
> based upon the client or the user, but based upon the virtual server.
>
> My first attempts were a real problem in that, though the config file
> could be specified on the command line that starts smbd, the multiple
> instances would walk all over each others lock files, etc. I fixed this
> by compiling multiple versions of samba with different values for
> --prefix, etc.
>
> I later found that this is not the best way. Somebody suggested just using
> a line like:
> include = /etc/samba/smb.conf.%L
> in my smb.conf file. This would simplify things and would make
> "smbstatus" show all connections, etc.
>
> It is now time to upgrade from 2.2.5 to 2.2.7 and that is what I want to
> do.
> Unfortunately the latest man pages say:
> %L the NetBIOS name of the server. This allows you to
> change your config based on what the client calls you.
> Your server can have a "dual personality".
>
> Note that this paramater is not available when Samba
> listens on port 445, as clients no longer send this
> information
>
> So, the question is: how do I do it now? I tried %h but that does not
> seem
> to be the same thing? How can I get something based upon how the user
> refered to the server? Shouldn't there be a way to use the IP address from
> a getsockname() call? I do have interfaces set to several addresses, btw.
>
> Also, how do I know if samba is listening on port 445? There seems to be
> no other mention in the man page. (I do know it isn't because "lsof" does
> not show it).
>
>
--
Gary Algier, WB2FWZ gaa at ulticom.com +1 856 787 2758
Ulticom Inc., 1020 Briggs Rd, Mt. Laurel, NJ 08054 Fax:+1 856 866 2033
More information about the samba
mailing list