This is a write up about some of the computer work that I did for our home at the beginning of the year. It will be nerdy, so don’t expect it to be entertaining unless you like this kind of stuff.
Back in early 2010, I built my first linux server. It was a Foxconn R10-S4. It ran on an Intel Atom 330 processor. It has worked fine for starting out and for moderate usage. However, I’m starting to find more things to ask of it, and I need to use it for something else. Around the first part of this year, I built a new server. Here is a list of the parts for the new server. Here is a link to the list of what I bought.
- CPU – Intel Xeon E3-1246 V3 (3.5GHz Quad-Core Processor)
- MB – ASRock H97 PRO4 ATX
- Memory – Crucial Ballistix Tactical 16 GB DDR 1600 Memory
- HD – WD Red 4 TB HD (two), WD Blue 1 TB 7200 RPM
- Case – Inwin PE689 ATX Mid Tower
- PSU – Corsair CSM 450W 80+ Gold
- Fan – Cooler Master 120 mm
I also put a couple of WD Green 2 TB hard drives in there that I had been using in the old server. They will be holding local backup data.
I chose to put Ubuntu 14.04 on my new server which is the latest LTS for Ubuntu. I had previously been using Ubuntu 12.04 on the old server. Because of my familiarity with Ubuntu and its wide support, I chose to stay with that distribution. As a server should be, it is command line only.
Some of the software packages I’m using it for:
- Subsonic – streams personal music library
- Serviio – media server, mostly for videos and photos locally
- Backuppc – local backups of computers on network
- Transmission – BitTorrent server for legal BitTorrents
- Piwigo – Web based photo library for family to view photos remotely
- Owncloud – Drobbox replacement for accessing/synchronizing files across computers/devices
- Crashplan – Cloud backup
- Samba – Access to the network drives
- Apache – web server
- OpenSSH – for accessing the server by command line through the terminal
- Pydio – web based interface for accessing network share, mostly for the Chromebook
I have now turned my old server into a Pfsense router. Now that I have children at home, I want to be able to filter the Internet traffic to make sure they aren’t coming across things I don’t want them exposed to. I also wanted to be able to have a guest wireless network. The Pfsense software package allows me to do some more control of QoS and create a guest wireless network. Pfsense is a very robust piece of software that runs on BSD. It is very powerful and suited for use in large comercial settings, but it also adaptable for home use. Since Gigabit Internet service is already in Salt Lake, I believe it will make its way out to the suburbs some time soon. According to the documentation for Pfsense, this hardware will not be able to handle Gigabit speeds as a router. In the mean time, using my old server will give me something to work with. I am moving from a Linksys 54 router with Tomato custom firmware installed.
Since the wireless radio I was using was on my old Linksys down in the basement, I added a wireless access point to the network. I bought a Ubiquit Unifi AC AP. I ran an ethernet wire from my basement where the router is, up through the top floor of our house, and into the attic so the new access point would have good coverage of the whole property. I get signal on both floors of the house as well as all of my front and back yards.
Once I got all of that put in, I built a new desktop computer for me. The primary decision for selecting what I wanted had to do with wanting to play games. Specifically Arma 3, Star Citizen, and DCS World. I was tired of playing on my old system which ran not too smoothly at low graphic settings. The parts I bought for the new system are as follows:
- Intel i7 4790K
- Asus Z97 Pro ATX Mother board
- Two Gigabyte GTX 970s running in SLI
- Samsung 850 EVO SSD 500 GB
- Western Digital Black 3 TB HDD
- Crucial Ballistix Tactical 16 GB RAM DDR3-1600
- Phanteks Enthoo Pro ATX Full Tower Case
- Corsair 850 W 80+ Gold Powersupply
- DAS 4 Pro Keyboard
- Three Asus 24″ monitors
Since I wanted to play games and also use the computer for other things, I decided to dual boot the computer with Windows 8.1 and Arch Linux. I installed Windows first because that is what was recommended. This enabled me to make sure all of the hardware was working correctly.
Then I began the journey of understanding and installing Arch. It is what is known as a rolling release distro. That was one of the reasons I chose it as software packages are released as soon as they are ready instead of waiting for a distro to add it to its repository. I also wanted to learn more about how Linux works. Understanding how to install Arch forces some learning. Arch is not a Linux distro for the novice. There is no on screen guide to help you install it. Everything is done by the command line. I used the Arch Beginner’s Guide Wiki to help guide me along the way. It didn’t answer all of my questions, but it got me most of the way through the installation process. I took notes along the way in a Google Doc in case I had to do it again or needed to go back and change something.
The new desktop runs really well. I am still having frustrations in getting everything to run on Arch like I want it to. Like the triple monitor setup often gets reset to all three monitors showing the same thing when I reboot, but it doesn’t happen every time. Also, I haven’t been able to get WebEx meetings to work on it as I use that for some continuing education that meets online. I chose to use KDE’s Plasma 5 for my desktop environment. I like it a lot and I have more to learn to customize it if I ever get the time for it. I’ve also become a big fan of Cairo Dock for my app launcher / panel.
Unfortunately, with children, one being an infant, I haven’t had much time to enjoy playing games on the computer. It was a consideration as I was deciding on the parts, but when I do get the time I will be able to play without the frustration of a slow computer. This is also why it has taken me most of the year to get around to writing this up.