We’ve been using Microsoft’s Media Center for a few years now and have grown to like it a lot. We’ve also noticed that more and more Apple computers have shown up on our home network and decided it was time to get everything working together smoothly. Follow along as we walk you through the hoops we jumped through to get everything cooperating.
To make things really easy, we could have ditched Media Center and used Macs all around. One thing that the Macs lacked was a complete 10’ interface for the television. Sure, you have Plex, Front Row, and EyeTV available; while each has their merits none of them were able to give a user a complete single TV viewing experience like Microsoft’s Media Center.
MCE, as it’s commonly referred to, can play back DVDs, music, videos, and broadcast TV all from one interface using a single remote. We wanted to build a home network that would centralize all our media, provide Time Machine backups for the Apple computers, and also act as a bittorrent client and print server.
We knew we could easily set up another Windows machine to act like a server, but Time Machine only supports writing to Mac formatted drives. There is information out there that shows how to get around this, but we didn’t want to risk our backups using unsupported methods. Running a NAS box was out as well for the same reason.
A 1TB Time Capsule could have been the answer to our problem since that would support Time Machine backups, and we could plug in a FAT32 formatted USB drive for the Windows computer. The issue here would be with the 4GB file size limitation, as most of the HD shows recorded are between 6-15GB. We would need a file system that would support larger file sizes like NTFS or HFS+.
We decided to base our server on a Mac running Leopard. All the drives would be Mac formatted to deal with the large file sizes and this would allow native Time Machine backups. As long as we enabled SMB support in Leopard, the Windows computers would be able to read and write to the Mac drives without any issues.
Since this would be a fully functioning computer we can configure it as a print server as well as a bittorrent client. Our list is rather simple and shows that it doesn’t take much to get a mixed computer network up and running.
Hardware
- Mac desktop
- Client computers running Leopard and Windows Media Center
- 4 hard drives
- USB printer
Software
Additional setup information
- Working home network
- Static IP assigned to the server and MCE computers
- Wired connection from the router to the server and MCE computers
- Media Center computers should be setup with the same admin login and password and have auto login enabled.
- DVD movies ripped using the VIDEO_TS structure
Since our server would mainly be used to host the network drives, we really didn’t need the latest and the greatest computer. Our digital media hub is a first generation 1.42 GHz PPC Mac mini complete with 1GB of Ram, an 80GB hard drive, bluetooth and AirPort Extreme.
We used 3 375GB Seagate drives that we had laying around, each in their own FireWire enclosure. We also picked up a 500GB Iomega FireWire drive on clearance to act as our Time Machine disk. The reason we went with FireWire over USB was a matter of processor load. Since USB required the CPU to dictate where the data went unlike FireWire’s peer to peer method we felt it was best to unload as much strain from the CPU as possible.
We also thought about using a Power Mac G4/G5 but liked the size of the Mac mini. Even with the 4 external drives, the whole thing fits nicely in our bookshelf. Whatever Mac you decide to use, just make sure it meets the minimum specifications to run Leopard.
After the initial OS install and updates, we started on formatting the drives one by one. Using Leopard’s Disk Utilities we formatted each external drive as GUID Partition, Mac OS Extended (Journaled)
Next each drive was given a logical name in the order they were installed under the mini: HDD001, HDD002, HDD003, and Time Machine. HDD001 would serve as one of our DVD drives, as well as the drive used to keep our shared music, photos, and torrents, so we created the following folders: My DVDs, My Music, My Pictures, and Torrents. HDD002 would be only used for DVDs, so that drive only had one folder labeled My DVDs. That left HDD003 to serve as the drive for recording MCE shows, so a folder labeled RecordedTV was created. No folders were made on the Time Machine drive as each Mac connecting to it would be making their own folder when doing their backups.
We then proceeded to create the different user profiles that would be accessing the drives. To make it easier on ourselves we used the same admin login and passwords from the MCE computers, but instead of making them part of the Admin group we made them part of the Standard user group. Since we used the same login for each MCE computer we only had to make one user on the server. For the Mac computers we used individual login names and password that were in use on the computers themselves and gave them only sharing accounts.
From here we moved onto enabling file sharing setting, adding each of the 4 drives, and assigning the different users to each drives. The reason why we created different logins for the Mac accounts instead of using one generic one like the MCE account was to give different access to each user. Some only needed Time Machine access while others needed access to other drives. With the different accounts we were able to specify which accounts had access to which drives. Since we wanted to be able to map drives under Windows we enabled SMB support for the MCE user by clicking the Options button.
We also wanted to log into the computer remotely since this setup would be running without a monitor, keyboard or mouse connected directly to it. By enabling the Remote Management service we can now manage the computer via another mac or a computer running a VNC client, like on an iPhone.
Our Mac came with a built in WiFi card that we used as a secondary WiFi access point when guests come to visit. It’s an easy way to get them online without us having to give out the password to our main WiFi connection.
Under Internet Sharing we selected the Ethernet as the connection we wanted to share and Airport for the guest connection. Under the Airport options we gave it a different SSID than our main connection. Now when guest visit, we can remote into the server and enable the connection, when they leave we disable the service.
The last things we wanted our server to do was automate the download of torrents. This required the installation of Reader Notifier and Transmission. Reader Notifier works with Google Reader and will automatically download the torrent file based on our RSS subscription to our torrent directory. Transmission was then set to automatically monitor this directory for new torrent files, once Reader Notifier downloads the torrent, Transmission starts downloading.
If we wanted to add a new torrent feed we just have to add it to Google Reader. Because Transmission is set to monitor the torrent directory if anyone manually places a torrent file in that directory from any computer the download will start automatically as well.
Both 2005 and Vista versions of MCE do not support writing to a network attached drive. With a few changes in the registry, via TweakMCE, we corrected this and added a few enhancements along the way.
We started by locating the 3 media center services and stopping them for the time being. One at a time we double clicked each service and under the Log On tab changed the default setting to the “This account box” and entered in the admin name and password for the computer.
With the services still stopped we launched TweakMCE and navigated to TV > Storage Location For Recorded TV and replaced the current path with the UNC path to our new server (\\OSXServer\HDD003\RecordedTV). We did this as well to the Watched Folder For Recorded TV.
In order to take advantage of having our DVDs stored on the server we also enabled the My DVDs option under the DVD menu of TweakMCE.
After saving each of our changes and exiting out of TweakMCE, we proceed to map each of the network drives we would be using making sure to use the same user name and password and selecting the reconnect at log on option. This will ensure that the drives will always be reconnected in case of reboot.
We then rebooted the computer and once back, launched MCE. Under the Videos menu we added the new drives making sure to include the 2 My DVDs folders as MCE will use this information to populate the new My DVDs menu on the home screen. Adding the network paths to the My Music and My Pictures directory also allowed the MCE computers to have access to the same content.
Like the server, we wanted to manage these computers remotely so we enabled the Remote Desktop Service. Microsoft makes a free client for the Mac and XP MCE/Pro has the remote client built in. Except for the different codecs needed to playback the various files that we wanted no further configurations were needed.
Setting up the Mac was rather quick since we would be connecting to another Mac for the drives. After launching Finder, we located the server to the left of the window. Selecting the server, we entered the shared user name we created on the server saving our login information to the keychain.
Enabling Time Machine to use a network drive is the same as selecting a locally connected drive. In the Time Machine preference screen select the Change Disk option to display all the connected drives. After selecting the drive labeled Time Machine we exited the screen, no hacks needed.
Unlike a Windows computer, OS X won’t automatically mount network drives on reboots. If we fail to mount the drives, Time Machine wouldn’t be able to perform it’s backups.. The easiest way we found was to create an Automator script at login to mount the drives.
Our first step was having Automator call out each drive we wanted to mount via IP. Once we had specified which drives we wanted, the next step was to have Automator connect to the server to mount the drives. Once we had verified that it was connecting to the correct drives, via the Run button, we saved it as an application and placed it in our applications folder. We then added this to the login items for each user we wanted to have access to the drives. Now on login, the script will automatically run and connect to the drives.
With our server now up and running, the MCE computers can now access the drives for movies, music, pictures, and share recorded shows. If our living room computer records an episode of Battlestar Galatica, all the MCE computers in the house can access it. Also, with MCE we now have access to all our DVDs anywhere in the house.
Because we chose to go with a Mac as a server, the Macs on our network can now back up wirelessly with Time Machine and share a printer as well.
If we had to do it over again, we would have gone with an Intel based mini as it comes with the Gigabit ethernet unlike the G4’s fast ethernet. In addition to that we should have gone with larger drives and tried Leopard’s built in software RAID. Other than that, we are please with our new home network.
[digg=http://digg.com/television/Running_Media_Center_with_an_OSX_server]
Very cool and a great write-up.
Still, I’d recommend one use SageTV to do this since SageTV can do more than Windows Media Center and it supports XP, Vista, Mac and Linux out of the box.
If you drag the drive to your system pref=>accounts=>login items it will automatically connect
MACaday?
@aaron I thought there was something like that. I even have a drive that does it. I just could for the life of me figure out how I got that done. :P
Being new to Mac, why do great articles like this get printed on black backgrounds or brown on black. There should some way to save this as I have been waiting for this article for over a year.
its called a bookmark henry, or printing the article
henry cole: press ctrl+alt+cmd+8 on your keyboard.
…there’s also MediaPortal, which is free.
@aaron, @eliot phillips
Be careful with adding a drive to login items. I have found in the past that if the drive isn’t available at start-up the system takes a long time to boot or even hangs indefinitely. This problem may be fixed in Leopard, but I know it happens in Tiger. Additionally there are some really good ways to setup automounts talked about in this article http://rajeev.name/blog/2007/11/22/autofs-goodness-in-apples-leopard-105-part-i/.
Adding a network drive to your login items is certainly one way to automate the mounting process and was the first thing I tried to automate the mounting of the drives.
What I noticed was that upon login, it would open up a finder window for each drive being mounted, which of course required the closing of each window.
The automator method mounts the drive but does not open up a finder window on the desktop.
This is super awesome… I’ve been looking for a guide on how to build a storage/torrent/server box that plays nice with Mac/Windows…
Correct me if I’m wrong, but this setup seems to require a PC running MCE… is there a clever way to configure the server box so that an Xbox 360 will just happily stream media from its drives?
That would be excellent.
Dang! This is really genius. I’m not at the point of doing this yet, but bookmarked and saved until the day arrives. Interesting point brought up by Max – is there a way to integrate an xbox 360 into the mix?
A Microsoft multimedia invasion the week XBMC “atlantis” Beta is going out ? (xbmc dot org, without any wha wha wha)It seems a little bit provocative :-)
Same interface, same programm under Linux, Windows, OSX and Xbox… it rings me a bell … wait a minute.. holly cow, the “CUA”, the “common user application interface” IBM tried to lauch with OS/2, (Presentation Manager uber alles)
At last, we got it, and it’s an open source project
@max: you just a UPnP media server.
go on google and search for one (one such one that is not free is twonkymedia).
Maintain the excellent job and delivering in the crowd!