'\" t
.\" Title: smbstatus
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets vsnapshot
.\" Date: 10/14/2024
.\" Manual: User Commands
.\" Source: Samba 4.21.1
.\" Language: English
.\"
.TH "SMBSTATUS" "1" "10/14/2024" "Samba 4\&.21\&.1" "User Commands"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
smbstatus \- report on current Samba connections
.SH "SYNOPSIS"
.HP \w'\ 'u
smbstatus [\-p|\-\-processes] [\-v|\-\-verbose] [\-L|\-\-locks] [\-S|\-\-shares] [\-N|\-\-notify] [\-u|\-\-user=STRING] [\-b|\-\-brief] [\-P|\-\-profile] [\-R|\-\-profile\-rates] [\-B|\-\-byterange] [\-n|\-\-numeric] [\-f|\-\-fast] [\-j|\-\-json] [\-\-resolve\-uids] [\-?|\-\-help] [\-\-usage] [\-d|\-\-debuglevel=DEBUGLEVEL] [\-\-debug\-stdout] [\-\-configfile=CONFIGFILE] [\-\-option=name=value] [\-l|\-\-log\-basename=LOGFILEBASE] [\-\-leak\-report] [\-\-leak\-report\-full]
.SH "DESCRIPTION"
.PP
This tool is part of the
\fBsamba\fR(7)
suite\&.
.PP
smbstatus
is a very simple program to list the current Samba connections\&.
.SH "OPTIONS"
.PP
\-P|\-\-profile
.RS 4
If samba has been compiled with the profiling option, print only the contents of the profiling shared memory area\&.
.RE
.PP
\-R|\-\-profile\-rates
.RS 4
If samba has been compiled with the profiling option, print the contents of the profiling shared memory area and the call rates\&.
.RE
.PP
\-b|\-\-brief
.RS 4
gives brief output\&.
.RE
.PP
\-v|\-\-verbose
.RS 4
gives verbose output\&.
.RE
.PP
\-L|\-\-locks
.RS 4
causes smbstatus to only list locks\&.
.RE
.PP
\-B|\-\-byterange
.RS 4
causes smbstatus to include byte range locks\&.
.RE
.PP
\-p|\-\-processes
.RS 4
print a list of
\fBsmbd\fR(8)
processes and exit\&. Useful for scripting\&.
.RE
.PP
\-S|\-\-shares
.RS 4
causes smbstatus to only list shares\&.
.RE
.PP
\-N|\-\-notify
.RS 4
causes smbstatus to display registered file notifications
.RE
.PP
\-f|\-\-fast
.RS 4
causes smbstatus to not check if the status data is valid by checking if the processes that the status data refer to all still exist\&. This speeds up execution on busy systems and clusters but might display stale data of processes that died without cleaning up properly\&.
.RE
.PP
\-u|\-\-user=
.RS 4
selects information relevant to
\fIusername\fR
only\&.
.RE
.PP
\-n|\-\-numeric
.RS 4
causes smbstatus to display numeric UIDs and GIDs instead of resolving them to names\&.
.RE
.PP
\-j|\-\-json
.RS 4
Output more detailed information in JSON format instead of human readable\&. The output has the following format:
.sp
.if n \{\
.RS 4
.\}
.nf
{
"timestamp": "2022\-04\-15T18:25:15\&.364891+0200",
"version": "4\&.17\&.0pre1\-GIT\-a0f12b9c80b",
"smb_conf": "/opt/samba/etc/smb\&.conf",
"sessions": {
"3639217376": {
"session_id": "3639217376",
"server_id": {
"pid": "69650",
"task_id": "0",
"vnn": "4294967295",
"unique_id": "10756714984493602300"
},
"uid": 1000,
"gid": 1000,
"username": "johndoe",
"groupname": "johndoe",
"remote_machine": "127\&.0\&.0\&.1",
"hostname": "ipv4:127\&.0\&.0\&.1:59944",
"session_dialect": "SMB3_11",
"encryption": {
"cipher": "",
"degree": "none"
},
"signing": {
"cipher": "AES\-128\-GMAC",
"degree": "partial"
}
}
},
"tcons": {
"3813255619": {
"service": "sharename",
"server_id": {
"pid": "69650",
"task_id": "0",
"vnn": "4294967295",
"unique_id": "10756714984493602300"
},
"tcon_id": "3813255619",
"session_id": "3639217376",
"machine": "127\&.0\&.0\&.1",
"connected_at": "2022\-04\-15T17:30:37+0200",
"encryption": {
"cipher": "AES\-128\-GMAC",
"degree": "full"
},
"signing": {
"cipher": "",
"degree": "none"
}
}
},
"open_files": {
"/home/johndoe/testfolder/sample": {
"service_path": "/home/johndoe/testfolder",
"filename": "sample",
"fileid": {
"devid": 59,
"inode": 11404245,
"extid": 0
},
"num_pending_deletes": 0,
"opens": {
"56839/2": {
"server_id": {
"pid": "69650",
"task_id": "0",
"vnn": "4294967295",
"unique_id": "10756714984493602300"
},
"uid": 1000,
"share_file_id": 2,
"sharemode": {
"hex": "0x00000003",
"NONE": false,
"READ": true,
"WRITE": true,
"DELETE": false,
"text": "RW"
},
"access_mask": {
"hex": "0x00000003",
"READ_DATA": true,
"WRITE_DATA": true,
"APPEND_DATA": false,
"READ_EA": false,
"WRITE_EA": false,
"EXECUTE": false,
"READ_ATTRIBUTES": false,
"WRITE_ATTRIBUTES": false,
"DELETE_CHILD": false,
"DELETE": false,
"READ_CONTROL": false,
"WRITE_DAC": false,
"SYNCHRONIZE": false,
"ACCESS_SYSTEM_SECURITY": false,
"text": "RW"
},
"caching": {
"READ": false,
"WRITE": false,
"HANDLE": false,
"hex": "0x00000000",
"text": ""
},
"oplock": {},
"lease": {},
"opened_at": "2022\-04\-15T17:30:38+0200"
}
}
}
}
}
.fi
.if n \{\
.RE
.\}
.sp
If oplocks are used:
.sp
.if n \{\
.RS 4
.\}
.nf
"oplock": {
"EXCLUSIVE": false,
"BATCH": false,
"LEVEL_II": true,
"LEASE": false,
"text": "LEVEL_II"
}
.fi
.if n \{\
.RE
.\}
.sp
If leases are used:
.sp
.if n \{\
.RS 4
.\}
.nf
"lease": {
"lease_key": "29316055\-f55c\-de10\-c813\-af7bf5a430bb",
"hex": "0x00000005",
"READ": true,
"WRITE": true,
"HANDLE": false,
"text": "RW"
}
.fi
.if n \{\
.RE
.\}
.sp
With byte\-range locks (\-B, \-\-byterange):
.sp
.if n \{\
.RS 4
.\}
.nf
"byte_range_locks": {
"/home/johndoe/testfolder/sample": {
"fileid": {
"devid": 59,
"inode": 11404245,
"extid": 0
},
"file_name": "sample",
"share_path": "/home/johndoe/testfolder",
"locks": [
{
"server_id": {
"pid": "69650",
"task_id": "0",
"vnn": "4294967295",
"unique_id": "10756714984493602300"
},
"type": "R",
"flavour": "Posix",
"start": 0,
"size": 16
}
]
}
.fi
.if n \{\
.RE
.\}
.sp
With notifies (\-N, \-\-notify):
.sp
.if n \{\
.RS 4
.\}
.nf
"notify": {
"77247": {
"server_id": {
"pid": "69650",
"task_id": "0",
"vnn": "4294967295",
"unique_id": "10756714984493602300"
},
"path": "/home/johndoe/testfolder/testdir",
"filter": 4095,
"subdir_filter": 4095,
"creation_time": "1970\-01\-01T01:00:14\&.326582+01:00"
}
}
.fi
.if n \{\
.RE
.\}
.sp
For profiling (\-P, \-\-profile):
.sp
.if n \{\
.RS 4
.\}
.nf
{
"timestamp": "2022\-04\-15T18:40:43\&.112216+0200",
"version": "4\&.17\&.0pre1\-GIT\-a0f12b9c80b",
"smb_conf": "/opt/samba/etc/smb\&.conf",
"SMBD loop": {
"connect": {
"count": 2
},
"disconnect": {
"count": 1
},
\&.\&.\&.
},
"System Calls": {
"syscall_opendir": {
"count": 0,
"time": 0
},
\&.\&.\&.
},
"ACL Calls": {
"get_nt_acl": {
"count": 0,
"time": 0
},
\&.\&.\&.
},
"Stat Cache": {
"statcache_lookups": {
"count": 2
},
\&.\&.\&.
},
"SMB Calls": {
"SMBmkdir": {
"count": 0,
"time": 0
},
\&.\&.\&.
},
"Trans2 Calls": {
"Trans2_open": {
"count": 0,
"time": 0
},
\&.\&.\&.
},
"NT Transact Calls": {
"NT_transact_create": {
"count": 0,
"time": 0
},
\&.\&.\&.
},
"SMB2 Calls": {
"smb2_negprot": {
"count": 2,
"time": 3060,
"idle": 0,
"inbytes": 452,
"outbytes": 568
},
\&.\&.\&.
}
}
.fi
.if n \{\
.RE
.\}
.sp
.RE
.PP
\-?|\-\-help
.RS 4
Print a summary of command line options\&.
.RE
.PP
\-\-usage
.RS 4
Display brief usage message\&.
.RE
.PP
\-d|\-\-debuglevel=DEBUGLEVEL
.RS 4
\fIlevel\fR
is an integer from 0 to 10\&. The default value if this parameter is not specified is 1 for client applications\&.
.sp
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\&.
.sp
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\&.
.sp
Note that specifying this parameter here will override the
\m[blue]\fBlog level\fR\m[]
parameter in the
/etc/samba/smb\&.conf
file\&.
.RE
.PP
\-\-debug\-stdout
.RS 4
This will redirect debug output to STDOUT\&. By default all clients are logging to STDERR\&.
.RE
.PP
\-\-configfile=
.RS 4
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
\m[blue]\fBclient smb encrypt\fR\m[]\&. See
/etc/samba/smb\&.conf
for more information\&. The default configuration file name is determined at compile time\&.
.RE
.PP
\-\-option==
.RS 4
Set the
\fBsmb.conf\fR(5)
option "" to 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\&.
.RE
.PP
\-l|\-\-log\-basename=logdirectory
.RS 4
Base directory name for log/debug files\&. The extension
\fB"\&.progname"\fR
will be appended (e\&.g\&. log\&.smbclient, log\&.smbd, etc\&.\&.\&.)\&. The log file is never removed by the client\&.
.RE
.PP
\-\-leak\-report
.RS 4
Enable talloc leak reporting on exit\&.
.RE
.PP
\-\-leak\-report\-full
.RS 4
Enable full talloc leak reporting on exit\&.
.RE
.PP
\-V|\-\-version
.RS 4
Prints the program version number\&.
.RE
.SH "VERSION"
.PP
This man page is part of version 4\&.21\&.1 of the Samba suite\&.
.SH "SEE ALSO"
.PP
\fBsmbd\fR(8)
and
\fBsmb.conf\fR(5)\&.
.SH "AUTHOR"
.PP
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\&.