Booting Gentoo from LVM in RAID

I run Gentoo Linux on my personal servers, including my RAID server.  (I have a dedicated server for raid and file dumps.  What, you don’t?).  When I first set this machine up 2-3 years ago, I gave it a single HDD (yes, spinning iron!) to boot from.  At the time, my rationale was “hey, if it dies, the RAID is intact, I just have to rebuild the system”.  Now, I’m changing from having several home directories scattered over all my machines to keeping a unified home directory in AFS.  This means that my RAID is suddenly critical - it goes away and I loose access to my files.  For various reasons, I chose to do this install as a mostly-from-scratch - primarily after three years, spanning the linux 2.6 to 3.x kernel change, quite a lot of useless, outdated or just dead config has built up.

In these instructions, we assume that you wish to set up a bios-booting machine, using GPT partition tables, mdadm software raid, lvm volume management, and grub2.  We also assume …

Continue reading

New software - GCode splitter!

Over the last few months, I’ve been silent as I transitioned from the life of a student to the life of a professional.  But!  I have finished that transition (for the most part) and am now back.  I even bring new software with me.

This new software (which has the rather uncreative name “gcode splitter”) is a utility for use in 3D printing.  I have acquired a 3D printer for me to experiment with.  The printer I own has one printhead.  However, many of my designs require two or more materials.  (I’m using a lot of “exotics”, like conductive or flexible plastics).  It occurred to me that as long as the two materials never shared a layer (or only shared one layer at the interface), I could split the print into parts, change the plastic between prints and thereby end up with multi-material objects.

The code is available on my github.  The utility has fairly simple inputs - it takes a (specially formatted) gcode file, followed by the locations in which the …

Continue reading

Introducing Shrubbery: a cheap BMC-equivalent for Linux Machines

I run a little server on my apartment network for small services (an IRC bouncer, some screens, SSH and MD-Raid).  However, I’m not always at the machine when I’m working on it.  I have, in the past, been lucky and not taken it totally offline when doing upgrades remotely.  Until this week.

Having now accidentally removed myself from all the services I usually use, I’m frustrated.  In my work life, I often use servers which have Baseboard Management Controllers (BMC).  The BMC is a device which sits on the motherboard of a machine and is able to do many things - report on sensors, whether the machine is powered or not, change the power status and connect a serial console.  A properly configured BMC makes it possible to do pretty much anything to a machine remotely, save for adjusting the hardware.  In my current conundrum (a kernel which won’t boot), this would be immensely helpful - I could use the serial console to select an older, working kernel and then fix …

Continue reading