CTLD(8)

NAME
ctld - CAM Target Layer / iSCSI target daemon

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

DESCRIPTION
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. If it encounters any errors, ctld exits. It then 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.

-t  Test the configuration file for validity and exit.

-u  Use UCL configuration file format instead of the traditional non-UCL format.

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

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

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

HISTORY
The ctld command appeared in FreeBSD 10.0.

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