Monday, January 19, 2009

Windows Home Server (WHS)

Windows Home Server (WHS). For some people, it conjures up visions of rack mounted systems with blinking lights heating up the basement. For others, it is just a way for Mr. Super Geek to show off his stuff. Well, WHS has been on the street for a while now (it's been out in final version since November 2007 and Service Pack 1 has been out for about six months). I finally got the chance to "play" with WHS. It's been 30 days now, and I'd like to let you know what I've discovered.

Let me start off with the fact that I didn't get one of those ready-made WHS boxen. No, I can never do that. I had an older desktop system that I replaced a year ago with my current AMD Phenom quad core from Gateway. I started out with an FIC K8-800T AMD Athlon 64 3000+ based system with an 80GB SATA primary hard drive, NEC DVD-RW drive, and an old Matshita LS-120 super floppy drive. [Just wanted to note here that Word 2007 just crashed on me and I lost the next paragraph or two, so I'll have to rewrite them. Anyone know of a better blog editor that works with Blogspot?] I then added a Maxtor 6L300R0 300GB EIDE drive and a Seagate ST3400832A 400GB drive. I would like to say that the K8-800T is a great motherboard, but I ran into some issues that I'll get to later.

The install was flawless. Booted off the DVD, wiped the drives clean, and then installed everything. It took a few reboots, but it was up and running in about two hours. If you're doing a user install of WHS, remember you need to name your server, so be ready. I named mine SERVER. I know, it's accurate but unimaginative; give me a break here, I can't always be creative! Once SERVER was up and running, I created user accounts for everyone in the house and created the client software install CD. Don't forget to create extra shares if you want them.

The Client Install CD ensures the client PC can see the WHS box, makes a link to the WHS shares on the desktop, ensures the passwords are in sync between the two boxen, and then installs the remote access software. It was about three hours total and I had my server (don't forget the name – SERVER; tough one to remember) and two clients up and running, sharing files and being all happy and stuff. Then I began the process of modifying SERVER.

If you know me, you know I can't leave well enough alone. I need to make it faster, better, smarter than it was. So, what's first? Let me start with explaining you can manage your server from any client using the Windows Home Server Console, which is a nice GUI that shows useful information about the status of your server. It's also extendable by adding in, well, add-ins. If you know me very well, or have been reading this blog, you can guess what my first add-in had to do with. My first add-in was TiVo Publisher. TiVo Publisher allows you to publish music, photos and video from your WHS to your TiVo. This is a one-way connection, so you can't pull video files off your TiVo to your server. More on that later. TiVo publisher installed easy (you can download the software on a client, copy it to the \\SERVER\Software\Add-Ins folder, then run the console and install the software). Now my TiVos can see the music, photos and video files on my WHS box. One down.

The next one was a little more difficult. You may remember me writing about Galleon
before. Galleon is a Java based TiVo client / server for any platform (did I mention it was Java?). Galleon is really cool and I've been playing with it for a few years now. I knew it would run on a WHS box because I had read about it (and everything you read on the Internets is true, right?). So, my first step was to install the Java JRE on the server. Luckily I had a monitor, keyboard and mouse connected to SERVER, so I could do this directly on the box. Not sure how you would do it otherwise. Once the JRE was installed, installing Galleon was quite easy. I got the windows install package and ran it on the server. Once Galleon started up, I noticed my Living Room TiVo was not talking to the network. Ok, no problem; it's on wireless, I'll just tweak it a little and it'll be good to go. Nope. It was dead. No lights, nothing. Wouldn't start up. More on this fix in a bit.

OK, so TiVo Publisher is installed so I can share files to my TiVo(s), and Galleon is installed, so I can pull video off the TiVo(s). Now I can share TiVo files to all the PCs on my home network, right? Yeah, I can share them, but they're *.TiVo files, so nothing can play them except TiVo Desktop and I don't want to load that on all my computers. There must be a solution to this problem! There IS!

The solution is the TiVo File Decoder. You see, the *.TiVo files are simply an encrypted mpeg2 file. All you need is a decryption tool and you're good to go. TiVoDecode is that tool. TiVoDecode uses the Media Access Key (MAK) assigned to your TiVo(s) when you get TiVoToGo to decrypt the files. That's all I know. I know if you have TiVo files, your files are encrypted with your MAK and mine are encrypted with my MAK, so in theory we can't share them unless we share MAKs. TiVoDecode uses your MAK to decrypt the files and saves them as an mpeg2 file. These files are playable with the standard mpeg2 CODEC. I haven't found (or written) a way to automate the decryption process, so I have to check the "daily downloads" for .TiVo files to decrypt. Once the decryption is done, I delete the *.TiVo file, but can still share the file back to the TiVo because of TiVo Publisher. SWEET!

I also tried a few other add-ins, but I'll talk about them another time. Now, here's the sad part.

I had SERVER up and running for about 3 days when the inevitable happened. If you remember, I had server issues when it was running Linux. Stupid me, same server, same drives. I thought wiping and low-level formatting the SATA 80GB drive would fix the problem. NOPE! Dead as a doornail. This is the reason I keep my hair short now; not long enough to grab onto to pull it out in frustration. I pulled the 80GB drive off the system and re-installed SERVER in the same software and data configuration (no backups, just did it all again from scratch / memory). So, I lost 80GB of space, but added to my experience by doing the install again. So when my birthday email from Best Buy came and they said I'd get triple reward points if I bought something this month, I knew what I was going to do. Seagate has a 1TB SATA drive (ST31000333AS) that would be perfect for my server. Best Buy had it for $120, and I had $40 in reward cash from getting my notebook in November.

I got the drive and waited until the weekend to install it. I thought "SATA is SATA, right?" so I just shut it down, installed on the same channel the 80GB was on, and powered back up. The server just sat there. After about five minutes (which seemed like an eternity) it booted, but didn't recognize the drive. Research time. It seems like SATA is not SATA. The new drives support 3.0Gbps throughput, vs. the old 1.5Gbps throughput, but Seagate puts a jumper on their drives to force the drives down to the 1.5Gbps speed. Shutdown the server, pull the drive, set the jumper (incorrectly the first time, but fixed it the second time), reinstall the drive, power up. The server just sat there. WHAT IS GOING ON?!

Research time again. After many hours of very frustrating research, I discovered that the K8-800T uses the VIA VT8237 south bridge chip. Why is this important? Well, it seems the VT8237 chip doesn't correctly support the 3.0 to 1.5 jumper and will not auto-negotiate the drives down to 1.5, so it won't even recognize the drive attached if it defaults to 3.0Gbps. Back to the store. This time, to Micro Center. My research had told me that the Silicon Image chip would recognize the drive. So I picked up a Syba SIL-3114 PCI SATA card. Once I installed the PCI card and connected the drive to it, BANG, it was recognized.

WHS is easy to add a drive to (assuming you don't have hardware issues, of course). Once the server came up and I logged into the console, I went to the Server Storage tab, noticed the nice juicy ST31000333AS 1TB drive sitting there, I told it to format and add it to the Data partition. Five minutes later, I had 1.55TB of space on my server with about 60% free, vs. the 18% free I had before the new drive. Now I'm down to 54% free. Too much TiVo.

So, what's the bottom line? I like WHS. I wouldn't say it's your mother's or grandmother's server, but if you are a light to moderate geek you should be able to set it up and configure it within a day if you're building your own, and less if you buy one off the shelf (I'd still like to try one of them if anyone from HP is out there reading this!). If you have a lot of media files (and who doesn't these days) I'd recommend the WHS because it's easy to use and configure.

Oh, and the dead TiVo in the living room? After more research, I found which sells TiVo replacement parts, and information pointing to the fact that my power supply was dead. I ordered a new power supply from, 2nd day air (which doesn't include weekends and holidays, so it took 4 days to get here!), but the replacement took about 10 minutes and it was back up and running again!


xraycat said...

Wow, your experience with building and upgrading the storage in your WHS is EXACTLY what I went through last fall. The main drive where WHS was installed on my first incarnation of my WHS died. Bad idea to install on my oldest drive I guess. Then when I went to add a 500GB SATA 3.0 drive I had the same chipset/jumper/auto-negotiate problem and had to exchange the drive for a different brand (ended up with Western Digital).

I have since moved my server onto a new platform; AMD S754 Athlon 3000+ from a mini ITX Via Epia SP13000 and have been loving my WHS so much since.