PXE Configuration Refer to PXE-Linux-Boot-Server on how to set up a PXE server before continuing.
Create a directory in your tftproot to store the pxelinux files and copy some files.
mkdir -p /tftproot/vmware/pxelinux.cfg cp /usr/share/syslinux/pxechn.c32 /tftproot/vmware/ This needs to be added to /tftproot/pxelinux.cfg/default for an entry to show up on your main boot screen.
LABEL vmwareesxi MENU LABEL ^VMWare ESXi COM32 /vmware/pxechn.c32 APPEND /vmware/pxelinux.0 -p /vmware/ For whatever reason, you can’t network boot VMWare ESXi with newer versions of SYSLINUX.
Installing Debian can be achieved by using booting your box from the network. This is how I set up my server to allow clients to boot from it.
PXE Configuration This needs to be added to your /tftproot/pxelinux.cfg/default file. Refer to PXE-Linux-Boot-Server on how to set up a PXE server.
label debianbuster-min-vm MENU LABEL ^Debian Autoinstall Buster Minimal VM LINUX /debian/buster/debian-installer/amd64/linux INITRD /debian/buster/debian-installer/amd64/initrd.gz APPEND vga=788 preseed/url=tftp://server/debian/preseed-buster-min-vm.txt debian-installer/locale=en_US debian-installer/country=US debian-installer/language=en debian-installer/allow_unauthenticated_ssl=true keyboard-configuration/xkb-keymap=us netcfg/get_hostname=debian netcfg/get_domain=local.
Install I use Gentoo Linux for my server so I used emerge to install the required server packages.
emerge tftp-hpa dhcp TFTP Configuration Edit your /etc/conf.d/in.tftpd file and uncomment one of the INTFTPD_PATH lines. You will then need to make the directory referenced in that variable. It will store all of your TFTP files used by your clients. We will refer to this as your tftproot in the rest of this article.
Updating DNS entries and static DHCP entries always seemed like a chore for me. Luckily, we can automate it. We will use DHCP to update/create entries in DNS. I used ISC BIND and ISC DHCP for my servers.
DHCP Config File Add these lines to /etc/dhcp/dhcpd.conf. Don’t forget to change your mydomain.lan to your domain and use the correct reverse subnet IP. The primary 127.0.0.1 line can be changed to the IP of where your DNS server is if it isn’t running locally.
Created a new ebuild for Hugo version 0.74.3. It was fairly straightforward. The hardest part was figuring out how to update the EGO_SUM variable in the ebuild file, but it was pretty simple in the end. All of what you need is in the go.sum file. I took that and used a python script to add the required tab and quotes so I could replace the contents of the original EGO_SUM variable with the new stuff.
I have decided to change over my site from using MediaWiki to Hugo, a static site generator. I like it because it doesn’t use a database or php/perl/python. It is also extremely fast to load static html pages than dynamically generated pages.
References Aspell, or another command-line spell checking utility, can be used to spell-check your pages before you post them: aspell -c filename This Markdown Cheat Sheet is useful for creating content.
Keeping Gentoo Up To Date These are a few steps I like to run to update my box. If you don’t know what the command does, look it up. I take no responsibility if it hoses your box.
Sync your portage:
emerge --sync Update all packages:
emerge -DuNqa world Remove old dependencies:
emerge --depclean -qa Check for and fix broken libraries:
revdep-rebuild -i -- -qa Verify you have removed old libraries and fix linking to them: