Using FreeBSD's sysrc and serving tftp resources
sysrc tool is very handy for administering FreeBSD hosts. I've never shied away from
vim /etc/rc.conf (though really
emacs /etc/rc.conf for tidy editing, I'm an Emacser) so its not a tool that would have been sought out in my case. That said, any programmatic access to the system configuration is always welcomed with open arms.
Nevertheless, having more tools in the pragmatic belt makes for a better belt – as long as it makes things more practical and pragmatic in approach. In my case, I wanted to setup a tFTP server to allow me to install a fresh image on my network hardware. They require a
tftp://$serverip/junos/$release_blob.tgz URL to load themselves up from and this means.. well that you need a tFTP server.
So, to set up the server we'll need have
inetd start it and then start (or restart) inetd:
# Enable inetd services sysrc inetd_enable=YES # Configure tFTP to start (by inetd) sed -i '' -E 's/#(tftp.*udp[[:blank:]])/\1/' /etc/inetd.conf # Start it up! service inetd start
My host uses ZFS as its root filesystem, so I also added a filesystem where
zfs create -o mountpoint=/tftpboot $rootfs/tftpboot
With that, you can place files in
/tftpboot that'll be retrievable by clients. Neat & simple.