SAMBA-DCERPCD(8)

πŸ’– SAMBA-DCERPCD πŸ’–

okay bestie, so this is the manual page for samba-dcerpcd, and it lives in the System Administration tools section of the manual (that's the whole "8" thing, iykyk). Buckle up, it's giving helper-process realness ✨


🌸 NAME 🌸

samba-dcerpcd β€” this is one of Samba's DCERPC server processes, and she can listen on sockets where RPC services are offered, and she is also the parent process of the DCERPC services she invokes. Unless she's separately invoked, she gets started on demand from smbd or winbind, and she serves DCERPC only over named pipes (np) as a helper process. This is the standard setup for most installations (standalone / member server / AD server), unless somebody goes and modifies their startup scripts. πŸŽ€

Note (this part matters, fr fr): when Samba is configured as an Active Directory Domain Controller, the samba process that invokes smbd will still provide its normal DCERPC services, not samba-dcerpcd. πŸ’…

And when she's separately invoked by system startup scripts or a daemon, the global smb.conf option rpc start on demand helpers = false MUST be set to allow samba-dcerpcd to start standalone. No cap.


πŸ¦‹ SYNOPSIS πŸ¦‹

samba-dcerpcd [-D|--daemon] [-i|--interactive] [-F|--foreground]
 [--no-process-group] [-d <debug level>] [--debug-stdout]
 [--configfile=<configuration file>] [--option=<name>=<value>]
 [--leak-report] [--leak-report-full] [-V|--version] [--libexec-rpcds]
 [--np-helper] [--ready-signal-fd=<fd>] [<SERVICE_1>] [<SERVICE_2>]
 [<...>]
just a heads up: the synopsis up there lists some flags that the OPTIONS section below doesn't expand on. I'm not gonna invent lore for them, so we're keeping it exactly as the page says. πŸ’œ

✨ DESCRIPTION ✨

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

samba-dcerpcd can be used in two ways, bestie:

  1. The normal case β€” no startup script modification, and the global smb.conf option rpc start on demand helpers = true is set (that's the default setting). She gets invoked on demand from smbd or winbind with a command line containing --np-helper, to serve DCERPC over named pipes (np).
  2. The standalone mode β€” she's started separately from smbd or winbind via system startup scripts. If invoked as a standalone daemon, or started from system startup scripts, the global smb.conf option rpc start on demand helpers = false MUST be set to false.
🚨 and listen: if the global smb.conf option rpc start on demand helpers = true is set to true or left as the default, samba-dcerpcd will fail to start and log an error message. So like, don't do that. πŸ™ˆ

Note that when Samba is run in the Active Directory Domain Controller mode, the samba AD code will still provide its normal DCERPC services whilst allowing samba-dcerpcd to provide services like SRVSVC in the same way that smbd used to in this configuration. iconic behaviour honestly πŸ‘‘

The standalone mode can also be useful for use outside of the Samba framework β€” for example, use with the Linux kernel SMB2 server ksmbd, or possibly other SMB2 server implementations. In this mode she behaves like inetd and listens on sockets on behalf of RPC server implementations. 🫢

When a client connects, samba-dcerpcd will start the relevant RPC service binary on demand and hand over the connection to that service. And when an RPC service has been idle for a while, samba-dcerpcd will ask it to shut down again. so polite of her honestly 😭


πŸ’… OPTIONS πŸ’…

  • -D|--daemon β€” if specified, this parameter causes the server to operate as a daemon. That is, she detaches herself and runs in the background, fielding requests on the appropriate port. Operating the server as a daemon is useful for running samba-dcerpcd outside of the Samba framework. However, it can also be used this way within Samba for member servers if configured to start up via system startup scripts. This switch is assumed if samba-dcerpcd is executed on the command line of a shell. πŸŽ€
  • -i|--interactive β€” if this parameter is specified, it causes the server to run "interactively", not as a daemon, even if the server is executed on the command line of a shell. Setting this parameter negates the implicit daemon mode when run from the command line. samba-dcerpcd will only accept one connection and terminate. She will also log to standard output, as if the -S parameter had been given. πŸ’–
  • -F|--foreground β€” if specified, this parameter causes the main samba-dcerpcd process to not daemonize, i.e. no double-fork and disassociate with the terminal. Child processes are still spawned as normal to service each connection request, but the main process does not exit. This operation mode is suitable for running samba-dcerpcd under process supervisors such as supervise and svscan from Daniel J. Bernstein's daemontools package, or the AIX process monitor. 🌸
  • --no-process-group β€” do not create a new process group for samba-dcerpcd. simple as that bestie πŸ¦‹
  • --libexec-rpcds β€” offer RPC services for all daemons in Samba's LIBEXECDIR; all programs starting with "rpcd_" are assumed to offer RPC services. If you don't use the --libexec-rpcds option, you can explicitly list all RPC service helpers explicitly on the command line. πŸ’œ
  • --np-helper β€” run samba-dcerpcd on demand, opening named pipe sockets as helpers for smbd or winbind. In order to run in this mode, the global smb.conf option rpc start on demand helpers = true must be set to true (this is the default setting). ✨
  • --ready-signal-fd=<fd> β€” report service readiness via this fd to smbd or winbind. Only for internal use. πŸ‘€

🌟 AUTHOR 🌟

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. absolute legends, no notes πŸ«ΆπŸ‘‘


πŸŽ€ SEE ALSO πŸŽ€

(the page doesn't list one, bestie β€” I'm not gonna manifest references out of thin air ✨)


okay that's the whole vibe check, you ate that πŸ’– this was Samba 4.24.7, dated 09/09/2026, written down by the Samba Team, and honestly? she slays. periodt. πŸ’…πŸŒΈ

πŸ“¦ where this page comes from