Caution: This version of this document is no longer maintained. For the latest documentation, see


DARPA trivial file transfer protocol daemon

Note: You must be root to start this daemon.


tftpd [-dln] [-g group] [-p port] [-s directory]
      [-u user] [directory ...]

Runs on:



Increase the debugging level.
-g group
Change the group ID to that of group on startup. If you don't specify this option, the group ID is set to that of the user specified with the -u option.
Log all requests using syslogd.
Suppress negative acknowledgement of requests for nonexistent relative filenames.
-p port
The UDP port to bind when running tftpd standalone.
-s directory
The root directory that you want tftpd to change to on startup. This is recommended for security reasons (so that files other than those in the /tftpboot directory aren't accessable). If the remote host passes the directory name as part of the file name to transfer, you may have to create a symbolic link from tftpboot to . under /tftpboot.
-u user
Change the user ID to that of user on startup. If you don't specify this option, the user defaults to nobody. If you don't specify -g, tftpd uses the group ID of user as well.
The name of the directory where files are accessed.


The tftpd daemon is a server that supports the DARPA Trivial File Transfer Protocol.

The tftpd daemon is started when inetd receives a service request at the port indicated by the tftp entry (inetd listens for service requests specified in the inetd.conf at a port defined in the services file).

Because tftp doesn't require an account or password on the remote system, tftpd allows only publicly readable files to be accessed. Files may be written only if they already exist and are publicly writable.

Note: This extends the concept of “public” to include all users on all hosts that can be reached through the network—this may not be appropriate on all systems, and its implications should be considered before enabling the tftp service. The daemon should have the user ID with the lowest possible privilege.

Filenames must start with a /. If a list of directories is given to tftpd, filenames must be in that list. To get a file, the file must have world-read privileges; to put a file, the file must have world-write privileges.

The bootpd utility works with tftpd to provide the client with a boot image.


The tftpd daemon requires the shared library.

See also:

bootpd, ftpd, inetd, tftp

TCP/IP Networking in the Neutrino User's Guide

Based on RFC 1350