The default configuration for net-misc/atftp-0.6.2 is incomplete. At this point I am not quite sure what is missing. calling /etc/init.d/atftp start results in: * Starting tftpd... Usage: tftpd [options] [directory] [options] may be: -t, --tftpd-timeout <value>: number of second of inactivity before exiting -r, --retry-timeout <value>: time to wait a reply before retransmition -m, --maxthread <value> : number of concurrent thread allowed -v, --verbose [value] : increase or set the level of output messages --no-timeout : disable 'timeout' from RFC2349 --no-tisize : disable 'tsize' from RFC2349 --no-blksize : disable 'blksize' from RFC2348 --no-multicast : disable 'multicast' from RFC2090 --logfile : logfile to log logs to ;-) --daemon : run atftpd standalone (no inetd) --no-fork : run as a daemon, don't fork --user <user name> : default is nobdy --group <group name> : default is nogroup --port : port the server will listen --mcast_ttl : ttl to used for multicast --mcast_addr <address list>: list/range of IP address to use for multicast transfer --mcast_port <port range> : ports to use for multicast transfer -h, --help : print this help -V, --version : print version information [directories] must be a world readable/writable directories. By default /tftpboot is assumed. [ !! ] /tftpboot is not created, so I create it, and try again: [directories] must be a world readable/writable directories. By default /tftpboot is assumed. [ !! ] World readable and writeable? This is not sane. Trying anyway: [directories] must be a world readable/writable directories. By default /tftpboot is assumed. [ !! ] drwxrwxrwx 2 root root 48 Jan 21 13:27 tftpboot So perhaps this is a script problem in init.d? There are instances of ${TFTPD_ROOT} and ${TFTPD_OPTS} , but I see this set nowhere. There is nothing in /etc/conf.d/ related to this. I created my own /etc/conf.d/atftp with the following: TFTPD_ROOT=/tftpboot #TFTPD_OPTS= Tried again: [directories] must be a world readable/writable directories. By default /tftpboot is assumed. [ !! ] So back to world rw. Fine, we'll do chmod 777 /tftpboot: And we get the same result. /tftpboot exists, owned by root.root and is mode 0777. I am doing what it wants. So maybe it wants at least one option passed through $TFTPD_OPTS, so we make it "--user nobody --group nobody". Still the same errors. Let's try to run it manually: # atftpd --no-fork /tftpboot Same error. # atftpd --daemon --no-fork /tftpboot This worked. --help was misleading in that it made it sound like --no-fork implied --daemon. Curiously I changed the mode of /tftpboot to 755 and it did not complain about world rw dirs. So the problems are: - /etc/init.d/atftp calling for variables which should be defined by /etc/conf.d/atftp . This file does not exist. - Creating that file and putting in the variables it seems to want did not solve the problem. - Due to these problems atftpd cannot be run from the script put in /etc/init.d/ . It can be run manually, however. - /tftpboot is not created. I would like to present a solution but unfortunately I don't know what it is.
I was able to get atftp to start from the init.d script with the following inside of the file /etc/conf.d/atftp that I had to create: TFTPD_ROOT="/tftpboot" TFTPD_OPTS="--daemon --user nobody --group nobody" The critical missing part seems to have been --daemon.
Fixed typo in ebuild, thanks for the bug report.
Thanks for the quick fix :) atftp works great for me, btw.