I have never really found a good TFTP for macOS. Is it funny that macOS is much used by network people but there isn’t a decent TFTP server?
Well, there is. macOS has it built-in, no GUI though. But that’s also fine, as long as you know to use it. It’s disabled by default, but you can start and stop it with the following commands.
### Start TFTP
sudo launchctl load -F /System/Library/LaunchDaemons/tftp.plist
### Stop TFTP
sudo launchctl unload -F /System/Library/LaunchDaemons/tftp.plist
### Check if its running (no process means it not running)
netstat -atp UDP | grep tftp
The TFTP daemon uses the /private/tftpboot folder so we are going to copy the file there. Then set the correct permissions on the file.
### Copy file to tftp folder
cp FILENAME /private/tftpboot
### Set permissions for the folder and files within
chmod -R 766 /private/tftpboot
There is a gotcha with the TFTP daemon, which is you cant copy a file to the TFTP daemon if that file does not already exist there. To work around it you can just create a file and set the permission for it. Then your devices will just send data into the pre-created file.
### Create the file touch /private/tftpboot/FILENAME ### Set permissions chmod -R 766 /private/tftpboot