SMBCONTROL(1) User Commands SMBCONTROL(1)

smbcontrol - send messages to smbd, nmbd or winbindd processes

smbcontrol [-?|--help] [--usage] [-t|--timeout] [-d|--debuglevel=DEBUGLEVEL] [--debug-stdout] [--configfile=CONFIGFILE] [--option=name=value] [-l|--log-basename=LOGFILEBASE] [--leak-report] [--leak-report-full]

smbcontrol [destination] [message-type] [parameter]

This tool is part of the samba(7) suite.

smbcontrol is a very small program, which sends messages to a smbd(8), a nmbd(8), or a winbindd(8) daemon running on the system.

-t|--timeout

Set timeout to seconds.

destination

One of nmbd, smbd, winbindd or a process ID.

The all destination causes the message to "broadcast" to all running daemons including nmbd and winbind. This is a change for Samba 3.3, prior to this the parameter smbd used to do this.

The smbd destination causes the message to be sent to the smbd daemon specified in the smbd.pid file.

The nmbd destination causes the message to be sent to the nmbd daemon specified in the nmbd.pid file.

The winbindd destination causes the message to be sent to the winbind daemon specified in the winbindd.pid file.

If a single process ID is given, the message is sent to only that process.

message-type

Type of message to send. See the section MESSAGE-TYPES for details.

parameters

any parameters required for the message-type

-?|--help

Print a summary of command line options.

--usage

Display brief usage message.

-d|--debuglevel=DEBUGLEVEL

level is an integer from 0 to 10. The default value if this parameter is not specified is 1 for client applications.

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.

Note that specifying this parameter here will override the log level parameter in the /etc/samba/smb.conf file.

--debug-stdout

This will redirect debug output to STDOUT. By default all clients are logging to STDERR.

--configfile=<configuration file>

The file specified contains the configuration details required by the client. The information in this file can be general for client and server or only provide client specific like options such as client smb encrypt. See /etc/samba/smb.conf for more information. The default configuration file name is determined at compile time.

--option=<name>=<value>

Set the smb.conf(5) option "<name>" to value "<value>" from the command line. This overrides compiled-in defaults and options read from the configuration file. If a name or a value includes a space, wrap whole --option=name=value into quotes.

-l|--log-basename=logdirectory

Base directory name for log/debug files. The extension ".progname" will be appended (e.g. log.smbclient, log.smbd, etc...). The log file is never removed by the client.

--leak-report

Enable talloc leak reporting on exit.

--leak-report-full

Enable full talloc leak reporting on exit.

-V|--version

Prints the program version number.

Available message types are:

close-share

Order smbd to close the client connections to the named share. Note that this doesn't affect client connections to any other shares. This message-type takes an argument of the share name for which client connections will be closed, or the "*" character which will close all currently open shares. This may be useful if you made changes to the access controls on the share. This message can only be sent to smbd.

close-denied-share

Behave like close-share, but don't disconnect users that are still allowed to access the share. It can safely be sent to all smbds after changing share access controls. It will only affect users who have been denied access since having connected initially. This message can only be sent to smbd.

debug

Set debug level to the value specified by the parameter. This can be sent to any of the destinations. If this message is sent to either the smbd or winbindd daemons, the parent process will rebroadcast the message to all child processes changing the debug level in each one.

kill-client-ip

Order smbd to close the client connections from a given IP address. This message-type takes an argument of the IP address from which client connections will be closed. This message can only be sent to smbd.

force-election

This message causes the nmbd daemon to force a new browse master election.

ping

Send specified number of "ping" messages and wait for the same number of reply "pong" messages. This can be sent to any of the destinations.

profile

Change profile settings of a daemon, based on the parameter. The parameter can be "on" to turn on profile stats collection, "off" to turn off profile stats collection, "count" to enable only collection of count stats (time stats are disabled), and "flush" to zero the current profile stats. This can be sent to any smbd or nmbd destinations.

debuglevel

Request debuglevel of a certain daemon and write it to stdout. This can be sent to any of the destinations.

profilelevel

Request profilelevel of a certain daemon and write it to stdout. This can be sent to any smbd or nmbd destinations.

printnotify

Order smbd to send a printer notify message to any Windows NT clients connected to a printer. This message-type takes the following arguments:

queuepause printername

Send a queue pause change notify message to the printer specified.

queueresume printername

Send a queue resume change notify message for the printer specified.

jobpause printername unixjobid

Send a job pause change notify message for the printer and unix jobid specified.

jobresume printername unixjobid

Send a job resume change notify message for the printer and unix jobid specified.

jobdelete printername unixjobid

Send a job delete change notify message for the printer and unix jobid specified.

Note that this message only sends notification that an event has occurred. It doesn't actually cause the event to happen.

This message can only be sent to smbd.

dmalloc-mark

Set a mark for dmalloc. Can be sent to both smbd and nmbd. Only available if samba is built with dmalloc support.

dmalloc-log-changed

Dump the pointers that have changed since the mark set by dmalloc-mark. Can be sent to both smbd and nmbd. Only available if samba is built with dmalloc support.

shutdown

Shut down specified daemon. Can be sent to both smbd and nmbd.

pool-usage

Print a human-readable description of all talloc(pool) memory usage by the specified daemon/process. Available for both smbd and nmbd.

ringbuf-log

Fetch and print the ringbuf log. Requires logging = ringbuf. Available for smbd, winbindd and nmbd.

drvupgrade

Force clients of printers using specified driver to update their local version of the driver. Can only be sent to smbd.

reload-config

Force daemon to reload smb.conf configuration file. Can be sent to smbd, nmbd, or winbindd.

reload-printers

Force smbd to reload printers. Can only be sent to smbd.

idmap

Notify about changes of id mapping. Can be sent to smbd or (not implemented yet) winbindd.

flush [uid|gid]

Flush caches for sid <-> gid and/or sid <-> uid mapping.

delete <ID>

Remove a mapping from cache. The mapping is given by <ID> which may either be a sid: S-x-..., a gid: "GID number" or a uid: "UID number".

kill <ID>

Remove a mapping from cache. Terminate smbd if the id is currently in use.

num-children

Query the number of smbd child processes. This message can only be sent to smbd.

reload-certs

Instruct the LDAP server of a Samba AD DC to reload the TLS certificates protecting ldaps:// connections. This message can only be sent to ldap_server.

This man page is part of version 4.21.1 of the Samba suite.

nmbd(8) and smbd(8).

The original Samba software and related utilities were created by Andrew Tridgell. Samba is now developed by the Samba Team as an Open Source project similar to the way the Linux kernel is developed.

10/14/2024 Samba 4.21.1