tail head cat sleep
QR code linking to this page

Manual Pages  — CTLD


ctld – CAM Target Layer / iSCSI target daemon



ctld [-d] [-f config-file] [-u]


The ctld daemon is responsible for managing the CAM Target Layer configuration, accepting incoming iSCSI connections, performing authentication and passing connections to the kernel part of the native iSCSI target.

Upon startup, the ctld daemon parses the configuration file and exits, if it encounters any errors. Then it compares the configuration with the kernel list of LUNs managed by previously running ctld instances, removes LUNs no longer existing in the configuration file, and creates new LUNs as necessary. After that it listens for the incoming iSCSI connections, performs authentication, and, if successful, passes the connections to the kernel part of CTL iSCSI target, cfiscsi(4), which handles it from that point.

When it receives a SIGHUP signal, the ctld reloads its configuration and applies the changes to the kernel. Changes are applied in a way that avoids unnecessary disruptions; for example removing one LUN does not affect other LUNs.

When exiting gracefully, the ctld daemon removes LUNs it managed and forcibly disconnects all the clients. Otherwise - for example, when killed with SIGKILL - LUNs stay configured and clients remain connected.

To perform administrative actions that apply to already connected sessions, such as forcing termination, use ctladm(8).

The following options are available:
-f config-file
  Specifies the name of the configuration file. The default is /etc/ctl.conf.
-d Debug mode. The daemon sends verbose debug output to standard error, and does not put itself in the background. The daemon will also not fork and will exit after processing one connection. This option is only intended for debugging the target.
-u Use UCL configuration file format instead of the traditional non-UCL format.


/etc/ctl.conf The configuration file for ctld. The file format and configuration options are described in ctl.conf(5).
  The default location of the ctld PID file.


The ctld utility exits 0 on success, and >0 if an error occurs.


cfiscsi(4), ctl(4), ctl.conf(5), ctladm(8), ctlstat(8)


The ctld command appeared in FreeBSD 10.0 .


The ctld was developed by Edward Tomasz Napierala <Mt trasz@FreeBSD.org> under sponsorship from the FreeBSD Foundation.

CTLD (8) May 28, 2017

tail head cat sleep
QR code linking to this page

Please direct any comments about this manual page service to Ben Bullock. Privacy policy.

Do you laugh when the waiter drops a tray full of dishes? Unix weenies do. They're the first ones to laugh at hapless users, trying to figure out an error message that doesn't have anything to do with what they just typed.
— The Unix Haters' handbook