DOKK / manpages / debian 11 / samba-common-bin / samba-tool.8.en
SAMBA-TOOL(8) System Administration tools SAMBA-TOOL(8)

samba-tool - Main Samba administration tool.

samba-tool [-h] [-W myworkgroup] [-U user] [-d debuglevel] [--v]

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

-h|--help

Show this help message and exit

--realm=REALM

Set the realm name

--simple-bind-dn=DN

DN to use for a simple bind

--password=PASSWORD

Password

-U USERNAME|--username=USERNAME

Username

-W WORKGROUP|--workgroup=WORKGROUP

Workgroup

-N|--no-pass

Don't ask for a password

-k KERBEROS|--kerberos=KERBEROS

Use Kerberos

--ipaddress=IPADDRESS

IP address of the server

-d|--debuglevel=level

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

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 smb.conf file.

-V|--version

Prints the program version number.

-s|--configfile=<configuration file>

The file specified contains the configuration details required by the server. The information in this file includes server-specific information such as what printcap file to use, as well as descriptions of all the services that the server is to provide. See smb.conf for more information. The default configuration file name is determined at compile time.

-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.

--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.

Manage computer accounts.

Create a new computer in the Active Directory Domain.

The new computer name specified on the command is the sAMAccountName, with or without the trailing dollar sign.

--computerou=COMPUTEROU

DN of alternative location (with or without domainDN counterpart) to default CN=Computers in which new computer object will be created. E.g. 'OU=OUname'.

--description=DESCRIPTION

The new computers's description.

--ip-address=IP_ADDRESS_LIST

IPv4 address for the computer's A record, or IPv6 address for AAAA record, can be provided multiple times.

--service-principal-name=SERVICE_PRINCIPAL_NAME_LIST

Computer's Service Principal Name, can be provided multiple times.

--prepare-oldjoin

Prepare enabled machine account for oldjoin mechanism.

Delete an existing computer account.

The computer name specified on the command is the sAMAccountName, with or without the trailing dollar sign.

Edit a computer AD object.

The computer name specified on the command is the sAMAccountName, with or without the trailing dollar sign.

--editor=EDITOR

Specifies the editor to use instead of the system default, or 'vi' if no system default is set.

List all computers.

This command moves a computer account into the specified organizational unit or container.

The computername specified on the command is the sAMAccountName, with or without the trailing dollar sign.

The name of the organizational unit or container can be specified as a full DN or without the domainDN component.

Display a computer AD object.

The computer name specified on the command is the sAMAccountName, with or without the trailing dollar sign.

--attributes=USER_ATTRS

Comma separated list of attributes, which will be printed.

Manage contacts.

Create a new contact in the Active Directory Domain.

The name of the new contact can be specified by the first argument 'contactname' or the --given-name, --initial and --surname arguments. If no 'contactname' is given, contact's name will be made up of the given arguments by combining the given-name, initials and surname. Each argument is optional. A dot ('.') will be appended to the initials automatically.

--ou=OU

DN of alternative location (with or without domainDN counterpart) in which the new contact will be created. E.g. 'OU=OUname'. Default is the domain base.

--description=DESCRIPTION

The new contacts's description.

--surname=SURNAME

Contact's surname.

--given-name=GIVEN_NAME

Contact's given name.

--initials=INITIALS

Contact's initials.

--display-name=DISPLAY_NAME

Contact's display name.

--job-title=JOB_TITLE

Contact's job title.

--department=DEPARTMENT

Contact's department.

--company=COMPANY

Contact's company.

--mail-address=MAIL_ADDRESS

Contact's email address.

--internet-address=INTERNET_ADDRESS

Contact's home page.

--telephone-number=TELEPHONE_NUMBER

Contact's phone number.

--mobile-number=MOBILE_NUMBER

Contact's mobile phone number.

--physical-delivery-office=PHYSICAL_DELIVERY_OFFICE

Contact's office location.

Delete an existing contact.

The contactname specified on the command is the common name or the distinguished name of the contact object. The distinguished name of the contact can be specified with or without the domainDN component.

Modify a contact AD object.

The contactname specified on the command is the common name or the distinguished name of the contact object. The distinguished name of the contact can be specified with or without the domainDN component.

--editor=EDITOR

Specifies the editor to use instead of the system default, or 'vi' if no system default is set.

List all contacts.

--full-dn

Display contact's full DN instead of the name.

This command moves a contact into the specified organizational unit or container.

The contactname specified on the command is the common name or the distinguished name of the contact object. The distinguished name of the contact can be specified with or without the domainDN component.

Display a contact AD object.

The contactname specified on the command is the common name or the distinguished name of the contact object. The distinguished name of the contact can be specified with or without the domainDN component.

--attributes=CONTACT_ATTRS

Comma separated list of attributes, which will be printed.

Check the local AD database for errors.

Manage Delegations.

Add a service principal as msDS-AllowedToDelegateTo.

Delete a service principal as msDS-AllowedToDelegateTo.

Set/unset UF_TRUSTED_TO_AUTHENTICATE_FOR_DELEGATION (S4U2Proxy) for an account.

Set/unset UF_TRUSTED_FOR_DELEGATION for an account.

Show the delegation setting of an account.

Manage Domain Name Service (DNS).

Add a DNS record.

Delete a DNS record.

Query a name.

Query root hints.

Query server information.

Update a DNS record.

Create a zone.

Delete a zone.

Query zone information.

List zones.

Manage Domain.

Create or restore a backup of the domain.

Backup (with proper locking) local domain directories into a tar file.

Copy a running DC's current DB into a backup tar file.

Copy a running DC's DB to backup file, renaming the domain in the process.

Restore the domain's DB from a backup-file.

Upgrade from Samba classic (NT4-like) database to Samba AD DC database.

Promote an existing domain member or NT4 PDC to an AD DC.

Demote ourselves from the role of domain controller.

Dumps Kerberos keys of the domain into a keytab.

Print basic info about a domain and the specified DC.

Join a domain as either member or backup domain controller.

Show/raise domain and forest function levels.

Show/set password settings.

Manage fine-grained Password Settings Objects (PSOs).

Applies a PSO's password policy to a user or group.

Creates a new Password Settings Object (PSO).

Deletes a Password Settings Object (PSO).

Lists all Password Settings Objects (PSOs).

Modifies a Password Settings Object (PSO).

Displays a Password Settings Object (PSO).

Displays the Password Settings that apply to a user.

Updates a PSO to no longer apply to a user or group.

Promote an existing domain member or NT4 PDC to an AD DC.

Domain and forest trust management.

Create a domain or forest trust.

Delete a domain trust.

List domain trusts.

Manage forest trust namespaces.

Show trusted domain details.

Validate a domain trust.

Manage Directory Replication Services (DRS).

Show DRS capabilities of a server.

Trigger knowledge consistency center run.

Query or change options for NTDS Settings object of a domain controller.

Replicate a naming context between two DCs.

Show replication status. The [--json] option results in JSON output, and with the [--summary] option produces very little output when the replication status seems healthy.

Administer DS ACLs

Modify access list on a directory object.

Manage Forest configuration.

Manage directory_service behaviour for the forest.

Modify dsheuristics directory_service configuration for the forest.

Show current directory_service configuration for the forest.

Manage Flexible Single Master Operations (FSMO).

Seize the role.

Show the roles.

Transfer the role.

Manage Group Policy Objects (GPO).

Create an empty GPO.

Delete GPO.

Delete GPO link from a container.

Download a GPO.

Get inheritance flag for a container.

List GPO Links for a container.

List GPOs for an account.

List all GPOs.

List all linked containers for a GPO.

Set inheritance flag on a container.

Add or Update a GPO link to a container.

Show information for a GPO.

Manage groups.

Create a new AD group.

Add members to an AD group.

Delete an AD group.

Edit a group AD object.

--editor=EDITOR

Specifies the editor to use instead of the system default, or 'vi' if no system default is set.

List all groups.

List all members of the specified AD group.

This command moves a group into the specified organizational unit or container.

The groupname specified on the command is the sAMAccountName.

The name of the organizational unit or container can be specified as a full DN or without the domainDN component.

Remove members from the specified AD group.

Show group object and it's attributes.

Show statistics for overall groups and group memberships.

Compare two LDAP databases.

Manage NT ACLs.

Change the domain SID for ACLs. Can be used to change all entries in acl_xattr when the machine's SID has accidentally changed or the data set has been copied to another machine either via backup/restore or rsync.

--use-ntvfs

Set the ACLs directly to the TDB or xattr. The POSIX permissions will NOT be changed, only the NT ACL will be stored.

--service=SERVICE

Specify the name of the smb.conf service to use. This option is required in combination with the --use-s3fs option.

--use-s3fs

Set the ACLs for use with the default s3fs file server via the VFS layer. This option requires a smb.conf service, specified by the --service=SERVICE option.

--xattr-backend=[native|tdb]

Specify the xattr backend type (native fs or tdb).

--eadb-file=EADB_FILE

Name of the tdb file where attributes are stored.

--recursive

Set the ACLs for directories and their contents recursively.

--follow-symlinks

Follow symlinks when --recursive is specified.

--verbose

Verbosely list files and ACLs which are being processed.

Get ACLs on a file.

Set ACLs on a file.

Check sysvol ACLs match defaults (including correct ACLs on GPOs).

Reset sysvol ACLs to defaults (including correct ACLs on GPOs).

Manage organizational units (OUs).

Create an organizational unit.

The name of the organizational unit can be specified as a full DN or without the domainDN component.

--description=DESCRIPTION

Specify OU's description.

Delete an organizational unit.

The name of the organizational unit can be specified as a full DN or without the domainDN component.

--force-subtree-delete

Delete organizational unit and all children reclusively.

List all organizational units.

--full-dn

Display DNs including the base DN.

List all objects in an organizational unit.

The name of the organizational unit can be specified as a full DN or without the domainDN component.

--full-dn

Display DNs including the base DN.

-r|--recursive

List objects recursively.

Move an organizational unit.

The name of the organizational units can be specified as a full DN or without the domainDN component.

Rename an organizational unit.

The name of the organizational units can be specified as a full DN or without the domainDN component.

Manage Read-Only Domain Controller (RODC).

Preload one account for an RODC.

Manage and query schema.

Modify the behaviour of an attribute in schema.

Display an attribute schema definition.

Show objectclasses that MAY or MUST contain this attribute.

Display an objectclass schema definition.

Manage sites.

Create a new site.

Delete an existing site.

Manage Service Principal Names (SPN).

Create a new SPN.

Delete an existing SPN.

List SPNs of a given user.

Check the syntax of the configuration file.

Retrieve the time on a server.

Manage users.

Create a new user. Please note that this subcommand is deprecated and available for compatibility reasons only. Please use samba-tool user create instead.

Create a new user in the Active Directory Domain.

Delete an existing user account.

Disable a user account.

Edit a user account AD object.

--editor=EDITOR

Specifies the editor to use instead of the system default, or 'vi' if no system default is set.

Enable a user account.

List all users.

Set the primary group a user account.

Get the direct group memberships of a user account.

Display a user AD object.

--attributes=USER_ATTRS

Comma separated list of attributes, which will be printed.

This command moves a user account into the specified organizational unit or container.

The username specified on the command is the sAMAccountName.

The name of the organizational unit or container can be specified as a full DN or without the domainDN component.

Change password for a user account (the one provided in authentication).

Set the expiration of a user account.

Sets or resets the password of a user account.

Gets the password of a user account.

Syncs the passwords of all user accounts, using an optional script.

Note that this command should run on a single domain controller only (typically the PDC-emulator).

Join and synchronise a remote AD domain to the local server. Please note that samba-tool vampire is deprecated, please use samba-tool domain join instead.

Produce graphical representations of Samba network state. To work out what is happening in a replication graph, it is sometimes helpful to use visualisations.

There are two subcommands, two graphical modes, and (roughly) two modes of operation with respect to the location of authority.

samba-tool visualize ntdsconn

Looks at NTDS connections.

samba-tool visualize reps

Looks at repsTo and repsFrom objects.

samba-tool visualize uptodateness

Looks at replication lag as shown by the uptodateness vectors.

--distance

Distances between DCs are shown in a matrix in the terminal.

--dot

Generate Graphviz dot output (for ntdsconn and reps modes). When viewed using dot or xdot, this shows the network as a graph with DCs as vertices and connections edges. Certain types of degenerate edges are shown in different colours or line-styles.

--xdot

Generate Graphviz dot output as with [--dot] and attempt to view it immediately using /usr/bin/xdot.

-r

Normally, samba-tool talks to one database; with the [-r] option attempts are made to contact all the DCs known to the first database. This is necessary for samba-tool visualize uptodateness and for samba-tool visualize reps because the repsFrom/To objects are not replicated, and it can reveal replication issues in other modes.

Gives usage information.

This man page is complete for version 4.13.13-Debian of the Samba suite.

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.

08/09/2022 Samba 4.13.13-Debian