smbstatus — 現在の Samba の接続を報告
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]
Samba が profiling オプション付きでコンパイルされた場合に、profile された共有メモリの内容だけを出力する。
Sambaが profiling オプションつきで コンパイルされた場合に、profiling 共有メモリ領域と call rates の内容を出力する。
簡単な出力を表示する。
詳細な出力を表示する。
ロックのリストだけを表示する。
バイト範囲のロック(byte range lock)を含めて表示する
smbd(8) のプロセスの一覧を表示し、終了する。 スクリプト作成時に有用である。
共有の一覧だけを表示する。 (訳注: "共有の" は "接続の" としたほうが正しい。)
smbstatusに、登録されたファイルの通知を表示させる。
smbstatusに、すべてを参照するステータスデータが、 引き続き有効であるプロセスかどうかのチェックにより、ステータスデータが 有効ならば、チェックしないようにさせる。これは、高負荷なシステム上や クラスターでの実行を高速化するが、適切に終了処理がされていないで終了した プロセスの古いデータが表示されるかもしれない。
username で
指定されたユーザーに関する情報だけを表示する。
smbstatus の表示において、UIDとGIDの値を、 名前ではなく、数字として表示する。
より詳細な情報を、人が読みやすい形の代わりに JSON 形式で出力する。出力は以下の形式である:
{
"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"
}
}
}
}
}
oplocks が使われている場合は:
"oplock": {
"EXCLUSIVE": false,
"BATCH": false,
"LEVEL_II": true,
"LEASE": false,
"text": "LEVEL_II"
}
If leases are used:
"lease": {
"lease_key": "29316055-f55c-de10-c813-af7bf5a430bb",
"hex": "0x00000005",
"READ": true,
"WRITE": true,
"HANDLE": false,
"text": "RW"
}
With byte-range locks (-B, --byterange):
"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
}
]
}
notifies (-N, --notify) がある場合は:
"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"
}
}
profiling (-P, --profile) の場合は:
{
"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
},
...
},
"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
},
...
}
}
コマンドラインオプションの要約を表示する。
簡単な使用法を表示する。
level は0から10までの整数値である。
このパラメータが設定されていない場合の規定の値は、
クライアントアプリケーションに対しては、1 である。
この値を大きくするほど、サーバーの動作に関するより詳細な情報が ログファイルに記録される。レベル 0 では、致命的なエラーと重大な警告 のみが記録される。レベル 1 は日々の運用に適しており、少量の稼働状況 に関する情報を生成する。
1 より上のレベルは大量のログが生成されるので、問題解決の時にのみ 使用すべきである。 3 より上のレベルは開発者だけが利用するように設計されて おり、莫大な量のログデータが生成される。そのほとんどは非常に謎めいた内容 となっている。
このパラメーターの指定は、${prefix}/etc/smb.conf ファイル中の、
log level パラメーターの
指定よりも優先する事に注意。
このパラメータはデバッグ出力を STDOUT にリダイレクトする。既定では、 すべてのクライアントはログを STDERR に出力する。
クライアントが必要とする詳細な設定を含むファイルを指定する。
このファイル中にある情報は、クライアントまたはサーバに対して
一般的であるか、あるいは、
client smb encrypt
のような、クライアント固有のオプションのみを提供することが
できる。詳細については ${prefix}/etc/smb.conf を参照のこと。既定の
設定ファイルの名前はコンパイル時に決定される。
コマンドラインから smb.conf(5) オプション "<name>" に値 "<value>" を設定する。 これはコンパイル時の既定値と設定ファイルから読み込まれた オプションを上書きする。名前または値に空白が入っていた場合、 引用符で --option=name=value 全体を囲む。
ログ/デバッグファイルのベースディレクトリ名。拡張子
".progname" が追加される (たとえば
log.smbclient, log.smbd など)。ログファイルは
クライアントによって削除されることはない。
終了時の talloc リークレポートを有効にする。
終了時の完全な talloc リークレポートを有効にする。
プログラムのバージョン番号を表示する。