Install ESXi 6.5 on a Supermicro X10SBA

January 19, 2018
virtualization, homelab

Trying to install VMware ESXi on a number of Intel Bay-Trail boards apparently fails with a hanged installation right after a message like Relocating modules and starting the kernel. There’s multiple forum posts around the internet where people suggest various workarounds, which never seemed to work for me. One suggestion which stood out to me as most promising was completely disabling the internal graphics chip and using a dicrete graphics card in the PCI Express slot. ...

Create a CentOS mirror for Kickstarting

June 29, 2017
linux, homelab

This is an update over my earlier post about PXE booting. I’ve learned a few more things and refined some rough edges.

Update: By now I’ve learned even more. See homelab/bootstrap for an updated guide.

My Motivation is similar to the last post: I started building my homelab with virtual machines. Most of them are based on a minimal CentOS 7 installation, and as such I have a lot of very similar systems. Yes, I could probably use containers to great effect. But I prefer the separation/isolation that I get from virtual machines on ESXi.


Truncated IPMI Passwords

April 6, 2017
homelab, security

I used KeePassX to generate a new, 24 character password with all character types enabled. This was supposed to replace the default ADMIN/ADMIN combination for IPMI on my ESXi box. So I opened the appropriate page through a browser, navigated to Configuration > Users and modified the ADMIN user.

It happily accepted the new password with no warning whatsoever and I logged out to test it .. oh well .. it didn’t work.


Local PXE Boot Server

March 9, 2017
linux, homelab

Today I set out to setup a local CentOS mirror for quicker PXE installations of my virtual machines. In the long run this will probably be superseded by a Spacewalk machine (update: discontinued on May 31, 2020) and until now has served me well. For the time being I just wanted a faster alternative.


Signed Npm Version Bumps

January 14, 2017

package.json # For a while now I’ve been using Visual Studio Code for a few JavaScript / TypeScript projects. Most of these projects come with a package.json file, which documents various aspects of the project. A tiny example of such a file: { "name": "foo", "version": "1.2.3", "description": "A packaged foo fooer for fooing foos", "main": "foo.js" } npm version # There’s that interesting property version. In conjunction with the npm version command it allows for very easy version bumping with automatic tagging. ...

On-Demand Socket Forwarding with Systemd

June 6, 2016
systemd, network, database, linux

Sooner or later when setting up a server you’ll want to create some MySQL databses and users. If you’re not proficient in writing SQL queries or just wanted to use a nice GUI tool for the task, you’d need to connect remotely to your databse host. But of course you do not want to expose your MySQL port to the internet … Or suppose you want to debug some remote service, which is only accessible locally on the remote machine …


Transforming an encrypted array from RAID 1 to RAID 6

May 16, 2016
linux, homelab, encryption

Introduction # Some context # I have a NAS at home which runs on Debian Jessie. A NAS wouldn’t be a NAS without some storage, so I put in two disks with 4 TB each when I built it. Those two disks have actually been used in a setup with OpenMediaVault before that and already had a software-RAID on them. When migrating the disks (to Ubuntu at first) I learned about mdadm and that OpenMediaVault uses it. ...

Install Ghost on an Arch VPS

April 29, 2016
linux, meta

I recently got myself a small VPS from Hetzner to play around with. Using their ‘rescue’ function you can mount different installer images in the virtual disc drive and install the system via VNC or web console. They provide an Arch installer too, so I chose that. I set up a very barebones system on a btrfs partition and with an nginx webserver. To me, Arch seemed like an interesting choice for a webserver and so I cloned my nginx config from my nas and began to go through all the directives again and tidy up all the configs in the process, making as much as possible a global directive inside the http { } block. ...