1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-22 13:34:15 +03:00

- document the "remote announce" option

- cleanup nmbd.8 quite a bit
This commit is contained in:
Andrew Tridgell 0001-01-01 00:00:00 +00:00
parent 46277e64a1
commit 525235135b
3 changed files with 55 additions and 311 deletions

View File

@ -4,34 +4,17 @@ nmbd \- provide netbios nameserver support to clients
.SH SYNOPSIS
.B nmbd
[
.B -B
.I broadcast address
] [
.B -I
.I IP address
] [
.B -D
] [
.B -C comment string
] [
.B -G
.I group name
] [
.B -H
.I netbios hosts file
] [
.B -N
.I netmask
] [
.B -d
.I debuglevel
] [
.B -l
.I log basename
] [
.B -n
.I netbios name
] [
.B -p
.I port number
] [
@ -65,23 +48,12 @@ that are not broadcasts, as long as it can resolve the name.
.B -B
.RS 3
On some systems, the server is unable to determine the broadcast address to
use for name registration requests. If your system has this difficulty, this
parameter may be used to specify an appropriate broadcast address. The
address should be given in standard "a.b.c.d" notation.
Only use this parameter if you are sure that the server cannot properly
determine the proper broadcast address.
The default broadcast address is determined by the server at run time. If it
encounters difficulty doing so, it makes a guess based on the local IP
number.
This option is obsolete. Please use the interfaces option in smb.conf
.RE
.B -I
.RS 3
On some systems, the server is unable to determine the correct IP
address to use. This allows you to override the default choice.
This option is obsolete. Please use the interfaces option in smb.conf
.RE
.B -D
@ -97,29 +69,13 @@ By default, the server will NOT operate as a daemon.
.B -C comment string
.RS 3
This allows you to set the "comment string" that is shown next to the
machine name in browse listings.
A %v will be replaced with the Samba version number.
A %h will be replaced with the hostname.
It defaults to "Samba %v".
This option is obsolete. Please use the "server string" option in smb.conf
.RE
.B -G
.RS 3
This option allows you to specify a netbios group (also known as
lanmanager domain) that the server should be part of. You may include
several of these on the command line if you like. Alternatively you
can use the -H option to load a netbios hosts file containing domain names.
At startup, unless the -R switch has been used, the server will
attempt to register all group names in the hosts file and on the
command line (from the -G option).
The server will also respond to queries on this name.
This option is obsolete. Please use the "workgroup" option in smb.conf
.RE
.B -H
@ -140,29 +96,17 @@ The second column is a netbios name. This is the name that the server
will respond to. It must be less than 20 characters long.
The third column is optional, and is intended for flags. Currently the
only flags supported are G, S and M. A G indicates that the name is a
group (also known as domain) name.
At startup all groups known to the server (either from this file or
from the -G option) are registered on the network (unless the -R
option has been selected).
A S or G means that the specified address is a broadcast address of a
network that you want people to be able to browse you from. Nmbd will
search for a master browser in that domain and will send host
announcements to that machine, informing it that the specified domain
is available.
only flag supported is M.
A M means that this name is the default netbios name for this
machine. This has the same affect as specifying the -n option to nmbd.
After startup the server waits for queries, and will answer queries to
any name known to it. This includes all names in the netbios hosts
file (if any), it's own name, and any names given with the -G option.
file (if any) and it's own name.
The primary intention of the -H option is to allow a mapping from
netbios names to internet domain names, and to allow the specification
of groups that the server should be part of.
netbios names to internet domain names.
.B Example:
@ -173,70 +117,24 @@ of groups that the server should be part of.
# if you want to include a name with a space in it then
# use double quotes.
# first put ourselves in the group LANGROUP
0.0.0.0 LANGROUP G
# next add a netbios alias for a faraway host
arvidsjaur.anu.edu.au ARVIDSJAUR
# finally put in an IP for a hard to find host
130.45.3.213 FREDDY
# now we want another subnet to be able to browse
# us in the workgroup UNIXSERV
192.0.2.255 UNIXSERV G
.RE
.B -M
.I workgroup name
.RS 3
If this parameter is given, the server will look for a master browser
for the specified workgroup name, report success or failure, then
exit. If successful, the IP address of the name located will be
reported.
If you use the workgroup name "-" then nmbd will search for a master
browser for any workgroup by using the name __MSBROWSE__.
This option is meant to be used interactively on the command line, not
as a daemon or in inetd.
.RE
.B -N
.RS 3
On some systems, the server is unable to determine the netmask. If
your system has this difficulty, this parameter may be used to specify
an appropriate netmask. The mask should be given in standard
"a.b.c.d" notation.
Only use this parameter if you are sure that the server cannot properly
determine the proper netmask.
The default netmask is determined by the server at run time. If it
encounters difficulty doing so, it makes a guess based on the local IP
number.
This option is obsolete. Please use the "interfaces" option in
smb.conf instead.
.RE
.B -d
.I debuglevel
.RS 3
debuglevel is an integer from 0 to 5.
The default value if this parameter is not specified is zero.
The higher this value, the more detail will be logged to the log files about
the activities of the server. At level 0, only critical errors and serious
warnings will be logged. Level 1 is a reasonable level for day to day running
- it generates a small amount of information about operations carried out.
Levels above 1 will generate considerable amounts of log data, and should
only be used when investigating a problem. Levels above 3 are designed for
use only by developers and generate HUGE amounts of log data, most of which
is extremely cryptic.
This option set the debug level. See smb.conf(5)
.RE
.B -l
@ -251,29 +149,16 @@ will be logged.
The default base name is specified at compile time.
The base name is used to generate actual log file names. For example, if the
name specified was "log", the following files would be used for log data:
.RS 3
log.nmb (containing debugging information)
log.nmb.in (containing inbound transaction data)
log.nmb.out (containing outbound transaction data)
.RE
The log files generated are never removed by the server.
name specified was "log" then the file log.nmb would contain debug
info.
.RE
.B -n
.I netbios name
.RS 3
This parameter tells the server what netbios name to respond with when
queried. The same name is also registered on startup unless the -R
parameter was specified.
The default netbios name used if this parameter is not specified is the
name of the host on which the server is running.
This option allows you to override the Netbios name that Samba uses
for itself.
.RE
.B -p
@ -282,165 +167,17 @@ name of the host on which the server is running.
port number is a positive integer value.
The default value if this parameter is not specified is 137.
This number is the port number that will be used when making connections to
the server from client software. The standard (well-known) port number for the
server is 137, hence the default. If you wish to run the server as an ordinary
user rather than as root, most systems will require you to use a port number
greater than 1024 - ask your system administrator for help if you are in this
situation.
Note that the name server uses UDP, not TCP!
This parameter is not normally specified except in the above situation.
.RE
.SH FILES
.B /etc/inetd.conf
.RS 3
If the server is to be run by the inetd meta-daemon, this file must contain
suitable startup information for the meta-daemon. See the section
"INSTALLATION" below.
.RE
.B /etc/rc.d/rc.inet2
.RS 3
(or whatever initialisation script your system uses)
If running the server as a daemon at startup, this file will need to contain
an appropriate startup sequence for the server. See the section "Installation"
below.
.RE
.B /etc/services
.RS 3
If running the server via the meta-daemon inetd, this file must contain a
mapping of service name (eg., netbios-ns) to service port (eg., 137) and
protocol type (eg., udp). See the section "INSTALLATION" below.
.RE
.SH ENVIRONMENT VARIABLES
Not applicable.
.SH INSTALLATION
The location of the server and its support files is a matter for individual
system administrators. The following are thus suggestions only.
It is recommended that the server software be installed under the /usr/local
hierarchy, in a directory readable by all, writeable only by root. The server
program itself should be executable by all, as users may wish to run the
server themselves (in which case it will of course run with their privileges).
The server should NOT be setuid or setgid!
The server log files should be put in a directory readable and writable only
by root, as the log files may contain sensitive information.
The remaining notes will assume the following:
.RS 3
nmbd (the server program) installed in /usr/local/smb
log files stored in /var/adm/smblogs
.RE
The server may be run either as a daemon by users or at startup, or it may
be run from a meta-daemon such as inetd upon request. If run as a daemon, the
server will always be ready, so starting sessions will be faster. If run from
a meta-daemon some memory will be saved and utilities such as the tcpd
TCP-wrapper may be used for extra security.
When you've decided, continue with either "Running the server as a daemon" or
"Running the server on request".
.SH RUNNING THE SERVER AS A DAEMON
To run the server as a daemon from the command line, simply put the "-D" option
on the command line. There is no need to place an ampersand at the end of the
command line - the "-D" option causes the server to detach itself from the
tty anyway.
Any user can run the server as a daemon (execute permissions permitting, of
course). This is useful for testing purposes.
To ensure that the server is run as a daemon whenever the machine is started,
you will need to modify the system startup files. Wherever appropriate (for
example, in /etc/rc.d/rc.inet2), insert the following line, substituting
values appropriate to your system:
.RS 3
/usr/local/smb/nmbd -D -l/var/adm/smblogs/log
.RE
(The above should appear in your initialisation script as a single line.
Depending on your terminal characteristics, it may not appear that way in
this man page. If the above appears as more than one line, please treat any
newlines or indentation as a single space or TAB character.)
If the options used at compile time are appropriate for your system, all
parameters except the desired debug level and "-D" may be omitted. See the
section on "Options" above.
.SH RUNNING THE SERVER ON REQUEST
If your system uses a meta-daemon such as inetd, you can arrange to have the
SMB name server started whenever a process attempts to connect to it. This
requires several changes to the startup files on the host machine. If you are
experimenting as an ordinary user rather than as root, you will need the
assistance of your system administrator to modify the system files.
First, ensure that a port is configured in the file /etc/services. The
well-known port 137 should be used if possible, though any port may be used.
Ensure that a line similar to the following is in /etc/services:
.RS 3
netbios-ns 137/udp
.RE
Note for NIS/YP users: You may need to rebuild the NIS service maps rather
than alter your local /etc/services file.
Next, put a suitable line in the file /etc/inetd.conf (in the unlikely event
that you are using a meta-daemon other than inetd, you are on your own). Note
that the first item in this line matches the service name in /etc/services.
Substitute appropriate values for your system in this line (see
.B inetd(8)):
.RS 3
netbios-ns dgram udp wait root /usr/local/smb/nmbd -l/var/adm/smblogs/log
.RE
(The above should appear in /etc/inetd.conf as a single line. Depending on
your terminal characteristics, it may not appear that way in this man page.
If the above appears as more than one line, please treat any newlines or
indentation as a single space or TAB character.)
Note that there is no need to specify a port number here, even if you are
using a non-standard port number.
.SH TESTING THE INSTALLATION
If running the server as a daemon, execute it before proceeding. If
using a meta-daemon, either restart the system or kill and restart the
meta-daemon. Some versions of inetd will reread their configuration tables if
they receive a HUP signal.
To test whether the name server is running, start up a client
.I on a different machine
and see whether the desired name is now present. Alternatively, run
the nameserver
.I on a different machine
specifying "-L netbiosname", where "netbiosname" is the name you have
configured the test server to respond with. The command should respond
with success, and the IP number of the machine using the specified netbios
name. You may need the -B parameter on some systems. See the README
file for more information on testing nmbd.
Don't use this option unless you are an expert, in which case you
won't need help!
.SH VERSION
This man page is (mostly) correct for version 1.9.00 of the Samba suite, plus some
of the recent patches to it. These notes will necessarily lag behind
development of the software, so it is possible that your version of
the server has extensions or parameter semantics that differ from or are not
covered by this man page. Please notify these to the address below for
rectification.
This man page is (mostly) correct for version 1.9.16 of the Samba
suite, plus some of the recent patches to it. These notes will
necessarily lag behind development of the software, so it is possible
that your version of the server has extensions or parameter semantics
that differ from or are not covered by this man page. Please notify
these to the address below for rectification.
.SH SEE ALSO
.B inetd(8),
.B smbd(8),
@ -449,35 +186,13 @@ rectification.
.B testparm(1),
.B testprns(1)
.SH DIAGNOSTICS
[This section under construction]
Most diagnostics issued by the server are logged in the specified log file. The
log file name is specified at compile time, but may be overridden on the
command line.
The number and nature of diagnostics available depends on the debug level used
by the server. If you have problems, set the debug level to 3 and peruse the
log files.
Most messages are reasonably self-explanatory. Unfortunately, at time of
creation of this man page the source code is still too fluid to warrant
describing each and every diagnostic. At this stage your best bet is still
to grep the source code and inspect the conditions that gave rise to the
diagnostics you are seeing.
.SH BUGS
None known.
.SH CREDITS
The original Samba software and related utilities were created by
Andrew Tridgell (samba-bugs@anu.edu.au). Andrew is also the Keeper
of the Source for this project.
This man page written by Karl Auer (Karl.Auer@anu.edu.au)
See
.B smb.conf(5) for a full list of contributors and details on how to
submit bug reports, comments etc.
This man page originally written by Karl Auer (Karl.Auer@anu.edu.au)

View File

@ -73,7 +73,7 @@ If you wish to contribute to the Samba project, then I suggest you
join the Samba mailing list.
If you have patches to submit or bugs to report then you may mail them
directly to samba-bugs@anu.edu.au. Note, however, that due to the
directly to samba-bugs@samba.anu.edu.au. Note, however, that due to the
enormous popularity of this package I may take some time to repond to
mail. I prefer patches in "diff -u" format.

View File

@ -401,6 +401,8 @@ read raw
read size
remote announce
root
root dir
@ -532,6 +534,8 @@ preserve case
print command
printer driver
print ok
printable
@ -2125,6 +2129,31 @@ pointless and will cause you to allocate memory unnecessarily.
.B Example:
read size = 8192
.SS remote announce (G)
This option allows you to setup nmbd to periodically announce itself
to arbitrary IP addresses with an arbitrary workgroup name.
This is useful if you want your Samba server to appear in a remote
workgroup for which the normal browse propogation rules don't
work. The remote workgroup can be anywhere that you can send IP
packets to.
For example:
remote announce = 192.168.2.255/SERVERS 192.168.4.255/STAFF
the above line would cause nmbd to announce itself to the two given IP
addresses using the given workgroup names. If you leave out the
workgroup name then the one given in the "workgroup" option is used
instead.
The IP addresses you choose would normally be the broadcast addresses
of the remote networks, but can also be the IP addresses of known
browse masters if your network config is that stable.
This option replaces similar functionality from the nmbd lmhosts file.
.SS revalidate (S)
This options controls whether Samba will allow a previously validated