Building a New Server
For some time I have wanted to build a dedicated server for my home LAN. For years I have been using my office desktop as both a file server and desktop. Overall that has worked well.
I have a home theater PC (HTPC). As I began devising server plans I decided that moving the HTPC media files to the new server might be a sane idea.
During this long planning period my office desktop motherboard died. To some degree that required me to play Keystone Kops.
I moved the HTPC into the office as a replacement. My office desktop has two hard drives. I moved those drives into the HTPC. I installed the HTPC hard drive as a third drive. I performed some fstab editing and magically the original HTPC was now my office desktop, HTPC, and LAN server.
I had a refurbished Windows 7 system seeing little action. I installed a spare drive and made that my new HTPC. I edited fstab to use the office “file server” as my primary media storage center. The new “HTPC” basically became a streaming device.
As I have CAT 5e in the house, there were no problems streaming. Video streaming even works well with my Thinkpad T400 wireless, which is limited to about 20 Mbps in real-world usage.
Thereafter I continually tweaked many of my shell scripts that were designed on the old model of a dedicated HTPC and an office desktop that also acted as a basic file server. Eventually everything started working as I wanted.
All of this tweaking was for the long-term good. Before the dead motherboard I had decided to move forward with my plans for a dedicated server. The server would host data files and media files. This temporary transitional period actually helped my plan. I was able to tweak things sufficiently such that when the new hardware arrived I expected almost everything to “just work.”
Throughout this planning and Keystone Kops period I was uncertain about the operating system I would use in the server. Originally I considered CentOS, either version 6 or 7. For many years the office system had been running Slackware. After noting Slackware’s simplicity, I decided I would keep using Slackware on the server.
Retaining Slackware eliminated migration issues and growing pains. A lot. Although I am comfortable using Fedora and CentOS 7 on my T400, I am not comfortable with systemd. My reasons are technical and not philosophical. I have a few shell scripts that have matured in a way that I do not know how to replace them or modify them within the systemd context. A status quo approach avoids the hurdles.
Another challenge is moving the server to 64-bit Slackware. I built my office system in 2007. At that time I installed 32-bit. I never had any strong motivation to change. While I do not mind updating user space apps on a regular basis, I tend to prefer leaving operating systems as is. Sleeping dogs and all that.
I will have to install 64-bit Slackware from scratch and then rebuild all additional packages. Not difficult but time consuming. I then have to diff my /etc directory from my 32-bit side and adjust as necessary. I am guessing a few shell scripts will break although for many years I have tried to include 64-bit as an option using a $SUFFIX variable.
I will wait until Slackware 14.2 is released to update to 64-bit. The proverbial kill two birds with one stone.
After the server is configured and well settled, I plan to install CentOS 7, Fedora, and LMDE on my office desktop along side Slackware. I have been using the former two on my T400 for about a year and half and LMDE almost as long as I have owned the laptop. I love the slow pace of change in CentOS but dislike the lack of non enterprise packages. Fedora fills that void but the development pace is fatiguing. LMDE is based on Debian Stable, which means all most all packages are stale. The important point is I never have run these systems on a desktop.
With a dedicated server and multiple computers running multiple distros, I need to design a local mirroring system for all distros. I face low data caps with the WISP I use. Much like the carpenter’s proverb to measure twice and cut once, I need to download once and install many. I already have a local mirror for Slackware but need to devise something similar with the other distros. I do not want to replicate entire mirrors but only the packages I use.