🌐samba

Samba is an open-source software suite that provides file and print services for Windows clients. It's easy to use, secure, and highly customizable.

Samba is an open-source software suite that provides file and print services for Windows clients using the SMB/CIFS protocol. It allows Unix-based systems to share files and printers with Windows-based systems, and vice versa. Samba is a popular tool for network administrators and IT professionals, and is widely used in enterprise environments.

Samba provides a range of features and capabilities that make it a powerful tool for file and print sharing. It supports file sharing across multiple platforms, including Unix, Linux, macOS, and Windows. It also supports a wide range of protocols, including SMB, CIFS, and FTP, and provides support for both IPv4 and IPv6 networks.

One of the key benefits of Samba is its ease of use. It is designed to be simple and intuitive to configure and manage, with a range of tools and utilities that make it easy to set up and maintain file and print services. Additionally, Samba provides a range of security features, including support for encryption and authentication protocols, that help to ensure the privacy and security of shared data.

Samba is also highly customizable, and can be extended with a range of plugins and scripts to provide additional functionality. For example, there are plugins available for integrating Samba with LDAP directories, for providing print services, and for integrating with other network services.

Despite its many strengths, Samba is not without its limitations. It can be challenging to configure in complex network environments, and may require advanced knowledge of networking and security concepts. Additionally, it may not be suitable for all file and print sharing scenarios, particularly those involving high-performance or high-throughput workloads.

In summary, Samba is a powerful and flexible tool for providing file and print services in a mixed-platform environment. Its ease of use, security features, and extensibility make it an essential tool for network administrators and IT professionals. While it may not be suitable for all file and print sharing scenarios, it is a valuable addition to any enterprise or organizational network.

Packages and Binaries:

ctdb

CTDB is a cluster implementation of the TDB database used by Samba and other projects to store temporary data. If an application is already using TDB for temporary data it is very easy to convert that application to be cluster aware and use CTDB instead.

CTDB provides the same types of functions as TDB but in a clustered fashion, providing a TDB-style database that spans multiple physical hosts in a cluster.

Features include:

  • CTDB provides a TDB that has consistent data and consistent locking across all nodes in a cluster.

  • CTDB is very fast.

  • In case of node failures, CTDB will automatically recover and repair all TDB databases that it manages.

  • CTDB is the core component that provides pCIFS (“parallel CIFS”) with Samba3/4.

  • CTDB provides HA features such as node monitoring, node failover, and IP takeover.

  • CTDB provides a reliable messaging transport to allow applications linked with CTDB to communicate to other instances of the application running on different nodes in the cluster.

  • CTDB has pluggable transport backends. Currently implemented backends are TCP and Infiniband.

  • CTDB supports a system of application specific management scripts, allowing applications that depend on network or filesystem resources to be managed in a highly available manner on a cluster.

Installed size: 3.67 MB How to install: sudo apt install ctdb

Dependencies:
  • iproute2

  • libbsd0

  • libc6

  • libpopt0

  • libtalloc2

  • libtdb1

  • libtevent0

  • libtirpc3

  • psmisc

  • samba-libs

  • sudo

  • tdb-tools

  • time

ctdb

CTDB management utility Clustered TDB

:~# ctdb --help
Usage: [OPTION...]
  -d, --debug=STRING       debug level
  -t, --timelimit=INT      timelimit (in seconds)
  -n, --node=INT           node specification - integer
  -Y                       enable machine readable output
  -x, --separator=CHAR     specify separator for machine readable output
  -X                       enable machine parsable output with separator |
  -v, --verbose            enable verbose output
  -T, --maxruntime=INT     die if runtime exceeds this limit (in seconds)

Help options:
  -?, --help               Show this help message
      --usage              Display brief usage message

ctdb_diagnostics

Dump diagnostic information about CTDB/Samba installation

:~# ctdb_diagnostics -h
Failed to read nodes file "/etc/ctdb/nodes"
Usage: ctdb_diagnostics [OPTION] ...
  options:
    -n <nodes>  Comma separated list of nodes to operate on
    -c          Ignore comment lines (starting with '#') in file comparisons
    -w          Ignore whitespace in file comparisons
    --no-ads    Do not use commands that assume an Active Directory Server

ctdbd

The CTDB cluster daemon

:~# ctdbd --help
Usage: [OPTION...]
  -i, --interactive     don't fork, log to stderr

Help options:
  -?, --help            Show this help message
      --usage           Display brief usage message

ltdbtool

Manipulate CTDB’s local TDB files

:~# ltdbtool -h
Usage: ltdbtool [options] <command>

Options:
   -s {0|32|64}    specify how to determine the ctdb record header size
                   for the input database:
                   0: no ctdb header
                   32: ctdb header size of a 32 bit system (20 bytes)
                   64: ctdb header size of a 64 bit system (24 bytes)
                   default: 32 or 64 depending on the system architecture

   -S <num>        the number of bytes to interpret as ctdb record header
                   for the input database (beware!)

   -o {0|32|64}    specify how to determine the ctdb record header size
                   for the output database
                   0: no ctdb header
                   32: ctdb header size of a 32 bit system (20 bytes)
                   64: ctdb header size of a 64 bit system (24 bytes)
                   default: 32 or 64 depending on the system architecture

   -O <num>        the number of bytes to interpret as ctdb record header
                   for the output database (beware!)

   -e              Include empty records, defaults to off

   -p              print header (for the dump command), defaults to off

   -h              print this help

Commands:
  help                         print this help
  dump <db>                    dump the db to stdout
  convert <in_db> <out_db>     convert the db

onnode

Run commands on CTDB cluster nodes

:~# onnode --help
/usr/bin/onnode: illegal option -- -
Usage: onnode [OPTION] ... <NODES> <COMMAND> ...
  options:
    -c          Run in current working directory on specified nodes.
    -f          Specify nodes file, overriding default.
    -i          Keep standard input open - the default is to close it.
    -n          Allow nodes to be specified by name.
    -p          Run command in parallel on specified nodes.
    -P          Push given files to nodes instead of running commands.
    -q          Do not print node addresses (overrides -v).
    -v          Print node address even for a single node.
  <NODES>       "all", "any", "ok" (or "healthy"), "con" (or "connected") ; or
                a node number (0 base); or
                a hostname (if -n is specified); or
                list (comma separated) of <NODES>; or
                range (hyphen separated) of node numbers.

ping_pong

Measures the ping-pong byte range lock latency

:~# man ping_pong
PING_PONG(1)             CTDB - clustered TDB database            PING_PONG(1)

NAME
       ping_pong - measures the ping-pong byte range lock latency

SYNOPSIS
       ping_pong {-r | -w | -rw} [-m] [-c] {FILENAME} {NUM-LOCKS}

DESCRIPTION
       ping_pong measures the byte range lock latency. It is especially useful
       on a cluster of nodes sharing a common lock manager as it will give
       some indication of the lock manager's performance under stress.

       FILENAME is a file on shared storage to use for byte range locking
       tests.

       NUM-LOCKS is the number of byte range locks, so needs to be (strictly)
       greater than the number of nodes in the cluster.

OPTIONS
       -r
           test read performance

       -w
           test write performance

       -m
           use mmap

       -c
           validate the locks

EXAMPLES
       Testing lock coherence

                 ping_pong test.dat N

       Testing lock coherence with lock validation

                 ping_pong -c test.dat N

       Testing IO coherence

                 ping_pong -rw test.dat N

SEE ALSO
       ctdb(7), https://wiki.samba.org/index.php/Ping_pong

AUTHOR
       This documentation was written by Mathieu Parent

COPYRIGHT
       Copyright (C) 2002 Andrew Tridgell

       This program is free software; you can redistribute it and/or modify it
       under the terms of the GNU General Public License as published by the
       Free Software Foundation; either version 3 of the License, or (at your
       option) any later version.

       This program is distributed in the hope that it will be useful, but
       WITHOUT ANY WARRANTY; without even the implied warranty of
       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
       General Public License for more details.

       You should have received a copy of the GNU General Public License along
       with this program; if not, see http://www.gnu.org/licenses.

ctdb                              02/04/2023                      PING_PONG(1)

ldb-tools

ldb is a LDAP-like embedded database built on top of TDB.

What ldb does is provide a fast database with an LDAP-like API designed to be used within an application. In some ways it can be seen as a intermediate solution between key-value pair databases and a real LDAP database.

This package contains bundled test and utility binaries

Installed size: 195 KB How to install: sudo apt install ldb-tools

Dependencies:
  • libc6

  • libldb2

  • libpopt0

  • libtalloc2

ldbadd

Command-line utility for adding records to an LDB

:~# ldbadd --help
Usage: [OPTION...]
  -H, --url=URL                   database URL
  -b, --basedn=DN                 base DN
  -e, --editor=PROGRAM            external editor
  -s, --scope=SCOPE               search scope
  -v, --verbose                   increase verbosity
      --trace                     enable tracing
  -i, --interactive               input from stdin
  -r, --recursive                 recursive delete
      --modules-path=PATH         modules path
      --num-searches=INT          number of test searches
      --num-records=INT           number of test records
  -a, --all                       (|(objectClass=*)(distinguishedName=*))
      --nosync                    non-synchronous transactions
  -S, --sorted                    sort attributes
  -o OPTION                       ldb_connect option
      --controls=STRING           controls
      --show-binary               display binary LDIF
      --paged                     use a paged search
      --show-deleted              show deleted objects
      --show-recycled             show recycled objects
      --show-deactivated-link     show deactivated links
      --reveal                    reveal ldb internals
      --relax                     pass relax control
      --cross-ncs                 search across NC boundaries
      --extended-dn               show extended DNs

Help options:
  -?, --help                      Show this help message
      --usage                     Display brief usage message

ldbdel

Command-line program for deleting LDB records

:~# ldbdel --help
Usage: [OPTION...]
  -H, --url=URL                   database URL
  -b, --basedn=DN                 base DN
  -e, --editor=PROGRAM            external editor
  -s, --scope=SCOPE               search scope
  -v, --verbose                   increase verbosity
      --trace                     enable tracing
  -i, --interactive               input from stdin
  -r, --recursive                 recursive delete
      --modules-path=PATH         modules path
      --num-searches=INT          number of test searches
      --num-records=INT           number of test records
  -a, --all                       (|(objectClass=*)(distinguishedName=*))
      --nosync                    non-synchronous transactions
  -S, --sorted                    sort attributes
  -o OPTION                       ldb_connect option
      --controls=STRING           controls
      --show-binary               display binary LDIF
      --paged                     use a paged search
      --show-deleted              show deleted objects
      --show-recycled             show recycled objects
      --show-deactivated-link     show deactivated links
      --reveal                    reveal ldb internals
      --relax                     pass relax control
      --cross-ncs                 search across NC boundaries
      --extended-dn               show extended DNs

Help options:
  -?, --help                      Show this help message
      --usage                     Display brief usage message

ldbedit

Edit LDB databases using your preferred editor

:~# ldbedit --help
Usage: [OPTION...]
  -H, --url=URL                   database URL
  -b, --basedn=DN                 base DN
  -e, --editor=PROGRAM            external editor
  -s, --scope=SCOPE               search scope
  -v, --verbose                   increase verbosity
      --trace                     enable tracing
  -i, --interactive               input from stdin
  -r, --recursive                 recursive delete
      --modules-path=PATH         modules path
      --num-searches=INT          number of test searches
      --num-records=INT           number of test records
  -a, --all                       (|(objectClass=*)(distinguishedName=*))
      --nosync                    non-synchronous transactions
  -S, --sorted                    sort attributes
  -o OPTION                       ldb_connect option
      --controls=STRING           controls
      --show-binary               display binary LDIF
      --paged                     use a paged search
      --show-deleted              show deleted objects
      --show-recycled             show recycled objects
      --show-deactivated-link     show deactivated links
      --reveal                    reveal ldb internals
      --relax                     pass relax control
      --cross-ncs                 search across NC boundaries
      --extended-dn               show extended DNs

Help options:
  -?, --help                      Show this help message
      --usage                     Display brief usage message

ldbmodify

Modify records in a LDB database

:~# ldbmodify --help
Usage: [OPTION...]
  -H, --url=URL                   database URL
  -b, --basedn=DN                 base DN
  -e, --editor=PROGRAM            external editor
  -s, --scope=SCOPE               search scope
  -v, --verbose                   increase verbosity
      --trace                     enable tracing
  -i, --interactive               input from stdin
  -r, --recursive                 recursive delete
      --modules-path=PATH         modules path
      --num-searches=INT          number of test searches
      --num-records=INT           number of test records
  -a, --all                       (|(objectClass=*)(distinguishedName=*))
      --nosync                    non-synchronous transactions
  -S, --sorted                    sort attributes
  -o OPTION                       ldb_connect option
      --controls=STRING           controls
      --show-binary               display binary LDIF
      --paged                     use a paged search
      --show-deleted              show deleted objects
      --show-recycled             show recycled objects
      --show-deactivated-link     show deactivated links
      --reveal                    reveal ldb internals
      --relax                     pass relax control
      --cross-ncs                 search across NC boundaries
      --extended-dn               show extended DNs

Help options:
  -?, --help                      Show this help message
      --usage                     Display brief usage message

ldbrename

Edit LDB databases using your favorite editor

:~# ldbrename --help
Usage: [OPTION...]
  -H, --url=URL                   database URL
  -b, --basedn=DN                 base DN
  -e, --editor=PROGRAM            external editor
  -s, --scope=SCOPE               search scope
  -v, --verbose                   increase verbosity
      --trace                     enable tracing
  -i, --interactive               input from stdin
  -r, --recursive                 recursive delete
      --modules-path=PATH         modules path
      --num-searches=INT          number of test searches
      --num-records=INT           number of test records
  -a, --all                       (|(objectClass=*)(distinguishedName=*))
      --nosync                    non-synchronous transactions
  -S, --sorted                    sort attributes
  -o OPTION                       ldb_connect option
      --controls=STRING           controls
      --show-binary               display binary LDIF
      --paged                     use a paged search
      --show-deleted              show deleted objects
      --show-recycled             show recycled objects
      --show-deactivated-link     show deactivated links
      --reveal                    reveal ldb internals
      --relax                     pass relax control
      --cross-ncs                 search across NC boundaries
      --extended-dn               show extended DNs

Help options:
  -?, --help                      Show this help message
      --usage                     Display brief usage message

ldbsearch

Search for records in a LDB database

:~# ldbsearch --help
Usage: [OPTION...]
  -H, --url=URL                   database URL
  -b, --basedn=DN                 base DN
  -e, --editor=PROGRAM            external editor
  -s, --scope=SCOPE               search scope
  -v, --verbose                   increase verbosity
      --trace                     enable tracing
  -i, --interactive               input from stdin
  -r, --recursive                 recursive delete
      --modules-path=PATH         modules path
      --num-searches=INT          number of test searches
      --num-records=INT           number of test records
  -a, --all                       (|(objectClass=*)(distinguishedName=*))
      --nosync                    non-synchronous transactions
  -S, --sorted                    sort attributes
  -o OPTION                       ldb_connect option
      --controls=STRING           controls
      --show-binary               display binary LDIF
      --paged                     use a paged search
      --show-deleted              show deleted objects
      --show-recycled             show recycled objects
      --show-deactivated-link     show deactivated links
      --reveal                    reveal ldb internals
      --relax                     pass relax control
      --cross-ncs                 search across NC boundaries
      --extended-dn               show extended DNs

Help options:
  -?, --help                      Show this help message
      --usage                     Display brief usage message

libldb-dev

ldb is a LDAP-like embedded database built on top of TDB.

What ldb does is provide a fast database with an LDAP-like API designed to be used within an application. In some ways it can be seen as a intermediate solution between key-value pair databases and a real LDAP database.

This package contains the development files.

Installed size: 171 KB How to install: sudo apt install libldb-dev

Dependencies:
  • libc6-dev

  • libldb2

  • libtalloc-dev

  • libtdb-dev

  • libtevent-dev

  • pkg-config


libldb2

ldb is a LDAP-like embedded database built on top of TDB.

It provides a fast database with an LDAP-like API designed to be used within an application. In some ways it can be seen as a intermediate solution between key-value pair databases and a real LDAP database.

This package contains the shared library file.

Installed size: 614 KB How to install: sudo apt install libldb2

Dependencies:
  • libc6

  • libldap-2.5-0

  • liblmdb0

  • libtalloc2

  • libtdb1

  • libtevent0


libnss-winbind

Samba is an implementation of the SMB/CIFS protocol for Unix systems, providing support for cross-platform file and printer sharing with Microsoft Windows, OS X, and other Unix systems. Samba can also function as an NT4-style domain controller, and can integrate with both NT4 domains and Active Directory realms as a member server.

This package provides nss_winbind, a plugin that integrates with a local winbindd server to provide user/group name lookups to the system; and nss_wins, which provides hostname lookups via both the NBNS and NetBIOS broadcast protocols.

Installed size: 185 KB How to install: sudo apt install libnss-winbind

Dependencies:
  • libbsd0

  • libc6

  • winbind


libpam-winbind

Samba is an implementation of the SMB/CIFS protocol for Unix systems, providing support for cross-platform file and printer sharing with Microsoft Windows, OS X, and other Unix systems. Samba can also function as an NT4-style domain controller, and can integrate with both NT4 domains and Active Directory realms as a member server.

This package provides pam_winbind, a plugin that integrates with a local winbindd server to provide Windows domain authentication to the system.

Installed size: 168 KB How to install: sudo apt install libpam-winbind

Dependencies:
  • libbsd0

  • libc6

  • libpam-runtime

  • libpam0g

  • libtalloc2

  • winbind


libsmbclient

This package provides a shared library that enables client applications to talk to Microsoft Windows and Samba servers using the SMB/CIFS protocol.

Installed size: 232 KB How to install: sudo apt install libsmbclient

Dependencies:
  • libbsd0

  • libc6

  • libtalloc2

  • libtevent0

  • samba-libs


libsmbclient-dev

This package provides the development files (static library and headers) required for building applications against libsmbclient, a library that enables client applications to talk to Microsoft Windows and Samba servers using the SMB/CIFS protocol.

Installed size: 268 KB How to install: sudo apt install libsmbclient-dev

Dependencies:
  • libsmbclient


libwbclient-dev

Samba is an implementation of the SMB/CIFS protocol for Unix systems, providing support for cross-platform file and printer sharing with Microsoft Windows, OS X, and other Unix systems.

This package provides the development files (static library and headers) required for building applications against libwbclient, a library for client applications that interact via the winbind pipe protocol with a Samba winbind server.

Installed size: 110 KB How to install: sudo apt install libwbclient-dev

Dependencies:
  • libwbclient0


libwbclient0

Samba is an implementation of the SMB/CIFS protocol for Unix systems, providing support for cross-platform file and printer sharing with Microsoft Windows, OS X, and other Unix systems.

This package provides a library for client applications that interact via the winbind pipe protocol with a Samba winbind server.

Installed size: 128 KB How to install: sudo apt install libwbclient0

Dependencies:
  • libbsd0

  • libc6


python3-ldb

ldb is a LDAP-like embedded database built on top of TDB.

This package contains the Python 3 bindings.

Installed size: 182 KB How to install: sudo apt install python3-ldb

Dependencies:
  • libc6

  • libldb2

  • libpython3.11

  • libtalloc2

  • python3

  • python3


python3-ldb-dev

ldb is a LDAP-like embedded database built on top of TDB.

It is a fast database with an LDAP-like API designed to be used within an application. In some ways it can be seen as a intermediate solution between key-value pair databases and a real LDAP database.

This package contains the development files for the Python 3 bindings.

Installed size: 60 KB How to install: sudo apt install python3-ldb-dev

Dependencies:
  • libc6-dev

  • libldb-dev

  • pkg-config

  • python3-ldb


python3-samba

Samba is an implementation of the SMB/CIFS protocol for Unix systems, providing support for cross-platform file sharing with Microsoft Windows, OS X, and other Unix systems. Samba can also function as a domain controller or member server in both NT4-style and Active Directory domains.

This package contains Python 3 bindings for most Samba libraries.

Installed size: 21.40 MB How to install: sudo apt install python3-samba

Dependencies:
  • libbsd0

  • libc6

  • libgnutls30

  • libldb2

  • libpython3.11

  • libtalloc2

  • libtevent0

  • python3

  • python3

  • python3-ldb

  • python3-talloc

  • python3-tdb

  • samba-libs


registry-tools

Samba is an implementation of the SMB/CIFS protocol for Unix systems, providing support for cross-platform file sharing with Microsoft Windows, OS X, and other Unix systems. Samba can also function as a domain controller or member server in both NT4-style and Active Directory domains.

This package contains tools for viewing and manipulating the binary “registry” found on Windows machines, both locally and remote.

Installed size: 153 KB How to install: sudo apt install registry-tools

Dependencies:
  • libc6

  • libpopt0

  • libreadline8

  • libtalloc2

  • samba-libs

regdiff

Diff program for Windows registry files

:~# regdiff --help
Usage: regdiff [OPTION...]
  -o, --output=STRING                          output file to use
  -n, --null                                   Diff from NULL
  -R, --remote=STRING                          Connect to remote server
  -L, --local                                  Open local registry

Help options:
  -?, --help                                   Show this help message
      --usage                                  Display brief usage message

Common Samba options:
  -d, --debuglevel=DEBUGLEVEL                  Set debug level
      --debug-stdout                           Send debug output to standard
                                               output
  -s, --configfile=CONFIGFILE                  Use alternative configuration
                                               file
      --option=name=value                      Set smb.conf option from
                                               command line
  -l, --log-basename=LOGFILEBASE               Basename for log/debug files
      --leak-report                            enable talloc leak reporting on
                                               exit
      --leak-report-full                       enable full talloc leak
                                               reporting on exit

Credential options:
  -U, --user=[DOMAIN/]USERNAME[%PASSWORD]      Set the network username
  -N, --no-pass                                Don't ask for a password
      --password=STRING                        Password
      --pw-nt-hash                             The supplied password is the NT
                                               hash
  -A, --authentication-file=FILE               Get the credentials from a file
  -P, --machine-pass                           Use stored machine account
                                               password
      --simple-bind-dn=DN                      DN to use for a simple bind
      --use-kerberos=desired|required|off      Use Kerberos authentication
      --use-krb5-ccache=CCACHE                 Credentials cache location for
                                               Kerberos
      --use-winbind-ccache                     Use the winbind ccache for
                                               authentication
      --client-protection=sign|encrypt|off     Configure used protection for
                                               client connections

Version options:
  -V, --version                                Print version

regpatch

Applies registry patches to registry files

:~# regpatch --help
Usage: regpatch [OPTION...]
  -R, --remote=STRING                          connect to specified remote
                                               server
  -F, --file=STRING                            file path

Help options:
  -?, --help                                   Show this help message
      --usage                                  Display brief usage message

Common Samba options:
  -d, --debuglevel=DEBUGLEVEL                  Set debug level
      --debug-stdout                           Send debug output to standard
                                               output
  -s, --configfile=CONFIGFILE                  Use alternative configuration
                                               file
      --option=name=value                      Set smb.conf option from
                                               command line
  -l, --log-basename=LOGFILEBASE               Basename for log/debug files
      --leak-report                            enable talloc leak reporting on
                                               exit
      --leak-report-full                       enable full talloc leak
                                               reporting on exit

Credential options:
  -U, --user=[DOMAIN/]USERNAME[%PASSWORD]      Set the network username
  -N, --no-pass                                Don't ask for a password
      --password=STRING                        Password
      --pw-nt-hash                             The supplied password is the NT
                                               hash
  -A, --authentication-file=FILE               Get the credentials from a file
  -P, --machine-pass                           Use stored machine account
                                               password
      --simple-bind-dn=DN                      DN to use for a simple bind
      --use-kerberos=desired|required|off      Use Kerberos authentication
      --use-krb5-ccache=CCACHE                 Credentials cache location for
                                               Kerberos
      --use-winbind-ccache                     Use the winbind ccache for
                                               authentication
      --client-protection=sign|encrypt|off     Configure used protection for
                                               client connections

Version options:
  -V, --version                                Print version

regshell

Windows registry file browser using readline

:~# regshell --help
Usage: regshell [OPTION...]
  -F, --file=STRING                            open hive file
  -R, --remote=STRING                          connect to specified remote
                                               server

Help options:
  -?, --help                                   Show this help message
      --usage                                  Display brief usage message

Common Samba options:
  -d, --debuglevel=DEBUGLEVEL                  Set debug level
      --debug-stdout                           Send debug output to standard
                                               output
  -s, --configfile=CONFIGFILE                  Use alternative configuration
                                               file
      --option=name=value                      Set smb.conf option from
                                               command line
  -l, --log-basename=LOGFILEBASE               Basename for log/debug files
      --leak-report                            enable talloc leak reporting on
                                               exit
      --leak-report-full                       enable full talloc leak
                                               reporting on exit

Credential options:
  -U, --user=[DOMAIN/]USERNAME[%PASSWORD]      Set the network username
  -N, --no-pass                                Don't ask for a password
      --password=STRING                        Password
      --pw-nt-hash                             The supplied password is the NT
                                               hash
  -A, --authentication-file=FILE               Get the credentials from a file
  -P, --machine-pass                           Use stored machine account
                                               password
      --simple-bind-dn=DN                      DN to use for a simple bind
      --use-kerberos=desired|required|off      Use Kerberos authentication
      --use-krb5-ccache=CCACHE                 Credentials cache location for
                                               Kerberos
      --use-winbind-ccache                     Use the winbind ccache for
                                               authentication
      --client-protection=sign|encrypt|off     Configure used protection for
                                               client connections

Deprecated legacy options:
  -k, --kerberos=STRING                        DEPRECATED: Migrate to
                                               --use-kerberos

Version options:
  -V, --version                                Print version

regtree

Text-mode registry viewer

:~# regtree --help
Usage: regtree [OPTION...]
  -F, --file=STRING                            file path
  -R, --remote=STRING                          connect to specified remote
                                               server
  -f, --fullpath                               show full paths
  -V, --no-values                              don't show values

Help options:
  -?, --help                                   Show this help message
      --usage                                  Display brief usage message

Common Samba options:
  -d, --debuglevel=DEBUGLEVEL                  Set debug level
      --debug-stdout                           Send debug output to standard
                                               output
  -s, --configfile=CONFIGFILE                  Use alternative configuration
                                               file
      --option=name=value                      Set smb.conf option from
                                               command line
  -l, --log-basename=LOGFILEBASE               Basename for log/debug files
      --leak-report                            enable talloc leak reporting on
                                               exit
      --leak-report-full                       enable full talloc leak
                                               reporting on exit

Credential options:
  -U, --user=[DOMAIN/]USERNAME[%PASSWORD]      Set the network username
  -N, --no-pass                                Don't ask for a password
      --password=STRING                        Password
      --pw-nt-hash                             The supplied password is the NT
                                               hash
  -A, --authentication-file=FILE               Get the credentials from a file
  -P, --machine-pass                           Use stored machine account
                                               password
      --simple-bind-dn=DN                      DN to use for a simple bind
      --use-kerberos=desired|required|off      Use Kerberos authentication
      --use-krb5-ccache=CCACHE                 Credentials cache location for
                                               Kerberos
      --use-winbind-ccache                     Use the winbind ccache for
                                               authentication
      --client-protection=sign|encrypt|off     Configure used protection for
                                               client connections

Version options:
  -V, --version                                Print version

samba

Samba is an implementation of the SMB/CIFS protocol for Unix systems, providing support for cross-platform file and printer sharing with Microsoft Windows, OS X, and other Unix systems. Samba can also function as an NT4-style domain controller, and can integrate with both NT4 domains and Active Directory realms as a member server.

This package provides the components necessary to use Samba as a stand-alone file and print server or as an NT4 or Active Directory domain controller. For use in an NT4 domain or Active Directory realm, you will also need the winbind package.

This package is not required for connecting to existing SMB/CIFS servers (see smbclient) or for mounting remote filesystems (see cifs-utils).

Installed size: 3.84 MB How to install: sudo apt install samba

Dependencies:
  • init-system-helpers

  • libbsd0

  • libc6

  • libcups2

  • libgnutls30

  • libldap-2.5-0

  • libldb2

  • libpam-modules

  • libpam-runtime

  • libpopt0

  • libtalloc2

  • libtasn1-6

  • libtdb1

  • libtevent0

  • passwd

  • procps

  • python3

  • python3-dnspython

  • python3-samba

  • samba-common

  • samba-common-bin

  • samba-libs

  • tdb-tools

dumpmscat


eventlogadm

Push records into the Samba event log store

:~# eventlogadm -h

Usage: eventlogadm [OPTION]

 -o write <Eventlog Name> 					Writes records to eventlog from STDIN
 -o addsource <EventlogName> <sourcename> <msgfileDLLname> 	Adds the specified source & DLL eventlog registry entry
 -o dump <Eventlog Name> <starting_record>					Dump stored eventlog entries on STDOUT

Miscellaneous options:
 -s <filename>							Use configuration file <filename>.
 -d								turn debug on
 -h								display help

Active eventlog names:
--------------------------------------
	<None specified>

mvxattr

Recursively rename extended attributes

:~# mvxattr --help
Usage: mvxattr -s STRING -d STRING PATH [PATH ...]
  -s, --from=STRING         xattr source name
  -d, --to=STRING           xattr destination name
  -l, --follow-symlinks     follow symlinks, the default is to ignore them
  -p, --print               print files where the xattr got renamed
  -v, --verbose             print files as they are checked
  -f, --force               force overwriting of destination xattr

Help options:
  -?, --help                Show this help message
      --usage               Display brief usage message

nmbd

NetBIOS name server to provide NetBIOS over IP naming services to clients

:~# nmbd --help
Usage: nmbd [OPTION...]
  -H, --hosts=STRING                 Load a netbios hosts file
  -p, --port=INT                     Listen on the specified port

Help options:
  -?, --help                         Show this help message
      --usage                        Display brief usage message

Common Samba options:
  -d, --debuglevel=DEBUGLEVEL        Set debug level
      --debug-stdout                 Send debug output to standard output
  -s, --configfile=CONFIGFILE        Use alternative configuration file
      --option=name=value            Set smb.conf option from command line
  -l, --log-basename=LOGFILEBASE     Basename for log/debug files
      --leak-report                  enable talloc leak reporting on exit
      --leak-report-full             enable full talloc leak reporting on exit

Daemon options:
  -D, --daemon                       Become a daemon (default)
  -i, --interactive                  Run interactive (not a daemon) and log to
                                     stdout
  -F, --foreground                   Run daemon in foreground (for
                                     daemontools, etc.)
      --no-process-group             Don't create a new process group

Version options:
  -V, --version                      Print version

oLschema2ldif

Converts LDAP schema’s to LDB-compatible LDIF

:~# oLschema2ldif --help
Usage: [OPTION...]
  -b, --basedn=DN             base DN
  -I, --input=inputfile       inputfile of OpenLDAP style schema otherwise
                              STDIN
  -O, --output=outputfile     outputfile otherwise STDOUT

Help options:
  -?, --help                  Show this help message
      --usage                 Display brief usage message

Version options:
  -V, --version               Print version

pdbedit

Manage the SAM database (Database of Samba Users)

:~# pdbedit --help
Usage: [OPTION...]
  -L, --list                            list all users
  -v, --verbose                         be verbose
  -w, --smbpasswd-style                 give output in smbpasswd style
  -u, --user=USER                       use username
  -N, --account-desc=STRING             set account description
  -f, --fullname=STRING                 set full name
  -h, --homedir=STRING                  set home directory
  -D, --drive=STRING                    set home drive
  -S, --script=STRING                   set logon script
  -p, --profile=STRING                  set profile path
  -I, --domain=STRING                   set a users' domain
  -U, --user SID=STRING                 set user SID or RID
  -M, --machine SID=STRING              set machine SID or RID
  -a, --create                          create user
  -r, --modify                          modify user
  -m, --machine                         account is a machine account
  -x, --delete                          delete user
  -b, --backend=STRING                  use different passdb backend as
                                        default backend
  -i, --import=STRING                   import user accounts from this backend
  -e, --export=STRING                   export user accounts to this backend
  -g, --group                           use -i and -e for groups
  -y, --policies                        use -i and -e to move account policies
                                        between backends
      --policies-reset                  restore default policies
  -P, --account-policy=STRING           value of an account policy (like
                                        maximum password age)
  -C, --value=LONG                      set the account policy to this value
  -c, --account-control=STRING          Values of account control
      --force-initialized-passwords     Force initialization of corrupt
                                        password strings in a passdb backend
  -z, --bad-password-count-reset        reset bad password count
  -Z, --logon-hours-reset               reset logon hours
      --time-format=STRING              The time format for time parameters
  -t, --password-from-stdin             get password from standard in
  -K, --kickoff-time=STRING             set the kickoff time
      --set-nt-hash=STRING              set password from nt-hash

Help options:
  -?, --help                            Show this help message
      --usage                           Display brief usage message

Common Samba options:
  -d, --debuglevel=DEBUGLEVEL           Set debug level
      --debug-stdout                    Send debug output to standard output
  -s, --configfile=CONFIGFILE           Use alternative configuration file
      --option=name=value               Set smb.conf option from command line
  -l, --log-basename=LOGFILEBASE        Basename for log/debug files
      --leak-report                     enable talloc leak reporting on exit
      --leak-report-full                enable full talloc leak reporting on
                                        exit

Version options:
  -V, --version                         Print version

profiles

A utility to report and change SIDs in registry files

:~# profiles --help
Usage: <profilefile>
  -c, --change-sid=STRING            Provides SID to change
  -n, --new-sid=STRING               Provides SID to change to
  -v, --verbose                      Verbose output

Help options:
  -?, --help                         Show this help message
      --usage                        Display brief usage message

Common Samba options:
  -d, --debuglevel=DEBUGLEVEL        Set debug level
      --debug-stdout                 Send debug output to standard output
  -s, --configfile=CONFIGFILE        Use alternative configuration file
      --option=name=value            Set smb.conf option from command line
  -l, --log-basename=LOGFILEBASE     Basename for log/debug files
      --leak-report                  enable talloc leak reporting on exit
      --leak-report-full             enable full talloc leak reporting on exit

Version options:
  -V, --version                      Print version

samba

A Windows AD and SMB/CIFS fileserver for UNIX Server to provide AD and SMB/CIFS services to clients

:~# samba --help
Usage: samba: root process [OPTION...]
  -M, --model=MODEL                  Select process model
      --maximum-runtime=seconds      set maximum runtime of the server
                                     process, till autotermination
  -b, --show-build                   show build info

Help options:
  -?, --help                         Show this help message
      --usage                        Display brief usage message

Common Samba options:
  -d, --debuglevel=DEBUGLEVEL        Set debug level
      --debug-stdout                 Send debug output to standard output
  -s, --configfile=CONFIGFILE        Use alternative configuration file