MacDevCenter    
 Published on MacDevCenter (http://www.macdevcenter.com/)
 See this if you're having trouble printing code examples


Six Great Tips for Homemade Dot Mac Servers

by Alan Graham, contributor to Mac OS X Hacks: 100 Industrial Strength Tips and Tricks
02/04/2003

If you've taken the time to discover the wonders of setting up your own
home server, then you're familiar with some of the usefulness it has. I've got six great tips for squeezing even more value from your computer, and they're not only functional, they're fun.

Each tip is presented in an open-ended fashion. In other words, there's enough information here to get you started, but you'll probably want to customize them to suit your own serving needs. If you come up with something exciting, be sure to post a TalkBack at the end of the article so others can share in your discovery.

Tip 1: Central File Server

One of my favorite uses for my homemade dot Mac computer is having a central file server in the house. We have a number of Macintoshes here in the Graham home; depending on what we're doing, we often switch between these machines. There's an older iBook in the kitchen that serves as a music station and a database link (recipes, contacts, shopping, To Do), we have a new iBook that I use when traveling or surfing from the sofa (my wife also uses it as her
machine), and we also have a new eMac with 1GB of RAM that serves as my
main machine and our server.

Since we switch machines often, we need to have a central repository that has all of our files available with little or no duplication. I may head off to a meeting with the iBook, and my wife needs to be able to jump onto any other machine in the house to do her design work. My wife also works freelance in an office several days a week. This means we need flexibility and remote availability.

So I setup a central file server on the eMac, keeping all our files stored on its fat drive. This gives us the opportunity to keep our files in a safe location that we can access from anywhere. Also, since I have a SuperDrive in it, it makes backing up all our files a breeze.

How To Set Up the File Server:

  1. On your homemade dot Mac server, go into System Preferences -> Accounts, and create a separate identity for every person in your house who will be using the file server. This way files are kept separate from each other in their own account directories.

    Screen shot.

  2. To make a network drive accessible on login, mount the directory for that person and then go to System Preferences -> Login Items and click Add. Navigate to Home -> Library -> Recent Servers and select the drive you want to mount at startup.

    Screen shot.

  3. Note: It has been my experience that having a drive mount at startup/login can be tricky. You need to be sure the fileserver is available at all times. If not, I have found that the Finder often hangs for several minutes while trying to resolve the drive's location. Due to this, I recommend you use a Toolbar alias to mount your drives.

    Keep it in Sync

    Since iSync doesn't yet allow you to keep files synced between computers on the same network (and it likely never will without .Mac), I recommend using an application called ExecutiveSync. It allows you to keep certain folders and files synchronized so that when you pick up and go, you leave with the right files. You can even use this program to keep files synced from remote locations outside the home. It is probably the best syncing program I have found for the money, but be sure to read the instructions carefully. There is a lot more to syncing files than meets the eye.

    If you happen to forget a file or weren't able to sync, you can always download it from the server.

    Mac OS X Hacks

    Related Reading

    Mac OS X Hacks
    100 Industrial-Strength Tips & Tricks
    By Rael Dornfest, Kevin Hemenway

    Identical Identities

    If you want to take things one step further, you can copy many of the same preferences files from your Home library across to different machines. This way when you login to a different machine, the Dock and all your applications behave just like they do on any other machine. But be careful with this. Backup your old preferences before you go replacing them with new ones.

    Tip 2: iTunes Central

    One of my favorite solutions is a little ditty I discovered by accident. I've always wanted a central repository for all my music files. The problem is that when I've been out of the house or on another machine in the house, I've had to use third-party apps like iCommune to access my own playlists and music files. iCommune allowed other people's music libraries to appear in your iTunes source list.

    ICommune ran into a little rough water with Apple and had to make a few adjustments. But since you have your own homemade dot Mac server, you can stream audio files from a central server without iCommune. You already have all the power to keep iTunes in check, regardless of your location. In fact, you can switch to multiple machines anywhere in the world and keep your iTunes settings and playlists accessible (and without an iPod).

    How To Set Up iTunes Central

    1. Place all your music files and copy all your iTunes Preferences over to your home server.

    2. Go to your remote machine (the client, not the server) and in the Finder or your browser, connect to your Home directory (make sure Personal File Sharing is on -- then just type afp://yourdomainnameorip.com). You can do this from any location in the world, as long as you've already setup the homemade dot Mac server. This will mount the server directory in the Finder and it will appear as a network drive on the Desktop.

    3. Go into your server's Home directory and locate the folder where you store your music files. Make an alias of this folder's contents and copy them to the same directory location on the remote machine.

      Be sure to make aliases of the iTunes 3 Music Library, iTunes Music folder, and the iTunes Music Library XML. Do not copy the actual music files or folders to your remote machine or import files -- that defeats the purpose. You don't want to transfer the music files, you just want to point to them.

      Screen shot.

    4. Then go into Home -> Library -> Preferences and copy the two iTunes preferences files (com.apple.iTunes.eq.plist & com.apple.iTunes.plist) and paste them into the same directory location on your remote machine.

      Screen shot.

    5. Launch iTunes.

    6. Bingo, you've just built a perfect mirror of your server's copy of iTunes, complete with playlists and Eq settings. Your remote machine is using the preferences you already setup on the server, and it is using the iTunes alias files to locate the music and playlists located there. If you make changes to the remote preferences or vice versa, you can use ExecutiveSync to keep those preference files in check.

      The one caveat is that you have to be sure to mount the drive each time you want to play your music. And as long as your network connection is fast enough, you shouldn't experience any lag in playing those files, regardless of whether you are in the kitchen or 300 miles away.

      Screen shot.

      The downstairs wireless music machine pulling the music from the server upstairs and the iRock 300 wireless FM transmitter for playing the music through my Tivoli radios scattered around the house. Note the bread machine rocking out! Go bread! Go bread!

      Tivoli radio.
      The Model One from Tivoli

      Note: You should be able to play as many copies of iTunes as you have the bandwidth for (I've had three simultaneous streams), however, I have experienced on two occasions where the server's copy of iTunes had difficulty accessing the iTunes library because it was locked. Although it has happened on rare occasions, it has never damaged any of my files. A quick fix seems to be unmounting the server's drive on the client and restarting iTunes on the server. Of course it doesn't hurt to keep a backup of your iTunes library files just to be safe.

      Tip 3: Disk Image Repository

      If you've ever had a piece of software fail on a trip, you know the frustration of not being able to accomplish the tasks at hand. One protective measure is to carry multiple backup CDs/DVDs of your programs with you, but what if they fail, are misplaced, or even stolen? As my own extra security measure, I created a location on my server that contains Disk Images of all my important software. I also run a secure FileMaker Pro web database of all my software serial numbers and company support phone numbers.

      It isn't a replacement for using a CD or DVD (primarily because of speed), but it serves as a nice safety net.

      Tip 4: Collaboration -- WebDAV

      More about WebDAV

      WebDAV on OS X -- WebDav support in Mac OS X (Public Beta 1) allows for simple remote management of web content. Here's how to start using it now.

      Emerging Technology Briefs: WebDAV -- A brief look at WebDAV -- Web-based Distributed Authoring and Versioning.

      Serve Your iCal Calendars Using WebDAV -- Apple is more than happy to host your iCal calendars via its Dot-Mac service. But you can serve your own calendars, and even have them automatically update subscriber versions, by using WebDAV. Erik Ray shows you how.

      With a little bit of Terminal work, you can install and enable the WebDAV components for Apache which will allow you to turn your folders or drives into WebDAV drives. Whether you're an independent contractor, a small or a large company, sometimes you need to collaborate on files with others. What I like about using WebDAV drives on my home server is that most of the imaging and publishing tools I use have support for WebDAV collaborative working. This allows me to specify a location on my server that other people can access to work on the same files. It helps when working with other contractors that I hire to keep things current, foster creativity, and keep me from the added mess of shifting files through Emails.

      Another great reason for enabling WebDAV is something I stumbled upon recently. A friend bought a second coffee shop in another town. He wanted to buy another computer and be able to have two people working on the same QuickBooks file in different locations at the same time. According to him, QuickBooks Pro allows you to share network files. Since my friend is familiar with drives, but not handy with IP addresses, by setting up WebDAV on his small Homemade Dot Mac server, they can easily collaborate on the same file in multiple locations, without duplicating the file.

      Tip 5: The iPhoto Shuffle

      I stumbled onto this when trying to save myself a lot of time doing file conversions. My wife recently scanned 40 slides for a client in Classic mode (there is no OS X driver for our slide scanner), and she needed to supply a batch of high-res scans for archiving and low-res scans so the client could preview them remotely on a web page. She scanned them as PICT files, so we had some difficulty working with them and, of course, they were useless for the Web.

      So, I needed to convert all these files and then create a web page for viewing them.

      On a lark I imported the PICT files into iPhoto and was able to turn around and export them as JPGs within about two minutes. No macros required. Not only did iPhoto handle all my conversions, it also created an index page with thumbnails and links to the larger images. Two birds, one stone.

      Then it dawned on me. Using my home server and iPhoto, I can create archives of images that can be viewed by clients or family in a directory on my web server. You don't need to worry about cryptic URLs created by iPhoto for .Mac, or constantly having to build new index pages. When you export from iPhoto to the web server folder, creating a new directory is as easy as creating a new folder. Why bother creating an index page of all your directories, when they can just view the directories themselves?

      Screen shot.

      Notice the iPhoto directory in my web server folder. Inside you'll find three directories of photos and what that looks like in a browser window. iPhoto creates a nice little index page inside each directory. Note that I also have a movie folder for QuickTime files.

      Related Articles:

      Homemade Dot-Mac: Remote Control
      Ever dreamed of having remote access to your Mac? This edition of Homemade Dot-Mac proves that having remote access, actually getting to see your screen and take control of your mouse, is a lot easier than you ever imagined. Alan Graham promises that it's quick and painless using VNC.

      Homemade Dot Mac: Home Web Radio
      If the idea of having your own radio webcast intrigues you, then this article shows you how to create private playlists you can stream 24/7 to almost any Web-enabled device, inside or outside the home.

      Homemade Dot-Mac with OS X, Part 2
      In part one of this series, Alan Graham showed you how to make your OS X Mac a functional Web server, and essentially create your own .Mac site. Now he digs even deeper into firewalls, domain names, and FTP.

      Homemade Dot-Mac with OS X
      So you don't want to pony up the $99 annual fee for .Mac? No problem if you've switched to Mac OS X, because everything is built-in for you to set up your own .Mac suite of services. Alan Graham shows you how.

      Take this one step further and iPhoto also makes it handy to create QuickTime movies for friends and family to view from your server.

      Tip 6: The Safari Rendezvous mod

      When I first saw that Safari had a bookmark feature for Rendezvous-enabled web sites, I was really excited at the possibility of Rendezvous-based intranet publishing. It also excited me at all the possible uses I could come up with on my own intranet. However, the Apache web server included in OS X does not yet support Apple's new Rendezvous technology. Then I found Eric Seidel's mod_rendezvous.

      It's an Apache 1.3.x module that makes all running Apache 1.3.x web servers register themselves with Rendezvous. Once this is done, the Safari Rendezvous bookmarks or any other Rendezvous enabled apps should be able to view them.

      Now I'm not sure of every possible use for this, but I will say that small business users and even large companies can utilize this for effective intranet publishing. I'm personally very excited to try a few ideas of my own, and I'm excited to hear of any home uses people can come up with. I'm excited to have some fun experimenting with QT Broadcaster, webcams, and Rendezvous.

      Final Thoughts

      Now that I've whetted your appetite, I'm curious to hear what you do with some of these tips. Be sure to post any ideas you might have for this so I can try them out myself.


      Alan Graham is the creator of the Best of Blogs book series and is a frequent writer on the O'Reilly Network.


      Return to the Mac DevCenter.


      Copyright © 2009 O'Reilly Media, Inc.