• On CBSNews.com: Katie Couric talks with Tina Brown
advertisement
mySimon mySimon mySimon Outdoor Gear mySimon Swimwear mySimon Home and Garden
November 13, 2009 9:17 AM PST

Options for sharing calendars among multiple users in OS X

by Topher Kessler
  • Font size
  • Print
  • 12 comments

iCal is an exceptionally useful calendaring tool, and being free and immediately available on all Macs makes it quite popular among Mac users. Despite this, one big limitation to the software, especially for households and workgroups, is the apparent inability of the software to share calendars among local computer users. Many people have requested some way for a number of Apple's programs (iCal, iPhoto, iTunes, etc) to easily create a main or central library/calendar and have it be accessible and editable by everyone who uses the computer (or others on the same network), but so far this support has been limited.

The Problem

Unfortunately the lack of shared-library support is based on how these programs are built. The biggest reason is that when an application opens a file for writing it imposes a lock on it that prevents another application from editing the file, at least until a "close" command is issued for the file by the program. While technically applications can treat a file like a database or open it only long enough to read or write a change and then close it again, Apple has not implemented this in the iLife suite.

There are programs out there that do allow for multiple programs to edit a single file, such as TextWrangler from BareBones software. If a file is edited in a secondary program while TextWrangler has it open, you will get a warning with options to save or reload the file with the new changes. This is convenient for text editors, but having this or similar behavior in iTunes or iPhoto would make it cumbersome to use local files as central libraries for programs, especially as the number of users grows. With multiple users accessing the library, when someone makes a change (ratings, albums, adding and deleting tracks, etc) other users will get similar warnings. Additionally, if they have made their own changes when others edit the files, the changes they have stored in memory will overwrite the recently saved edits by other users.

Despite this, you can set up a situation where shared resources and libraries are used by the accounts on a system, but only if you ensure each library is only open by one user at a time. If, for instance, you have an iTunes library set up in the "/Users/Shared/" folder (hold options when launching iTunes to select or create a new Library) and have it open in one account, upon switching to another account you will get a "file locked" error if you try to open it.

iTunes gives this error if multiple instances of the program access the library at the same time.

This may happen despite having set permissions for all users to "Read and Write" the library folder and enclosed files. The library is technically usable in the second account as such, but because it is currently open by iTunes in the first account it is locked and therefore inaccessible. The only workaround for this is to ensure iTunes is closed in the first account, and while this can easily be done by disabling Fast User switching, doing this comes at an obvious inconvenience for some households. This same situation applies to iPhoto libraries, Address Books, and iCal calendars, where basically local files are only fully accessible by one user at a time.

The Solutions

The proper way to share files in a multi-user environment is to have a server process either on the local machine or on a dedicated server that will manage and distribute files and to clients (iTunes, iCal, iPhoto open in separate accounts). Doing this allows for changes to be propagated instantly to client programs by the server (ie, "push" technology), and keep all clients updated with the latest "state" of the library. In addition, clients can be managed by the server so some have access and permissions to edit certain aspects of the library and not others.

I have a feeling this is where Apple may soon be headed with their applications, but we'll see. They are only just punching into the home server environment with the newly released Mac Mini Server, and hopefully we'll see more home-media services crop up in Mac OS X Server--I personally would love to see an iTunes and iPhoto server along with the already existing iCal and Address Book servers. Meanwhile, those interested in seeing this functionality for iPhoto and iTunes will have to wait; however, there are a couple of workarounds for iCal and Address Book which take advantage of the available calendar services on the internet:

  1. MobileMe

    Apple's subscription based mobile account which allows for address book and iCal syncing of local library/database files. If you set up all computer accounts to synchronize to Mobile Me, you can keep contacts and calendar events up to date between the accounts. The drawback for this is that other sync services may also be inadvertently enabled (ie, bookmarks) which could potentially lead to problems. However, as long as all parties understand the limitations that it might only be feasible for one user to sync certain items such as bookmarks, then this is a viable option.

  2. Google Calendar

    Google's free calendar is compatible with iCal, and upon creating an account you can set up multiple users to access the google calendar through iCal. Being essentially an iCal server it creates a new calendar that's separate from your local calendars, which it accessed and edited separated and only if you have an active internet connection. While this is more in line with how a multi-user environment works, there are some current limitations to the service, with the most prominent one being that only the main Google calendar gets used in the connection. The others get subscribed to as delegate calendars that show up in odd subcategory groups in iCal.

The final solution for iCal users is to establish an account with a true calendaring service, which currently is either Exchange 2007 or Apple's iCal server in OS X Server. With the Mac Mini Server (or OS X Server installed on an old Mac--see our previous article on this) you can set up an iCal and Address Book server for your household to use. The server can be bound to a "Dynamic DNS" service (see this list of providers) so it can easily be accessed from the internet, so as long as the server is running you can be actively synchronized with your household members.

The Future: Home servers? Clouds?

The demand for home servers and services with similar functionality is definitely on the rise, which is evident through a number of means including cloud computing services and the recent advent of home servers such as the Mac Mini server. With these services and hardware, not only is the server hardware more convenient for home users, but the services provided in the OS are becoming more tailored for home use as well.

As for the difference between home servers and cloud computing, having a corporation handle your personal data is convenient, but has not come without its hurdles. Various services including Apple's have had setbacks and have been slow to develop. Additionally, there have been data loss and security concerns that people have had, especially when it comes to personal information.

Despite this, cloud computing is an attractive option that in a perfect world will compliment a home server setup and not work against or otherwise compete with it. I imagine they could greatly benefit from each other and work in tandem to bring a variety of services to home users, with calendaring services being only one of a number of options. These services are maturing, and hopefully we will see them bring a variety of interconnected options so people can configure their calendars, address books, and other contacts how they would like.



Questions? Comments? Post them below or email us!
Be sure to check us out on Twitter and the CNET Mac forums.

Topher has been an avid Mac user for the past 15 years, and has been a contributing author to MacFixIt since Spring 2008. One of his passions is troubleshooting Mac problems and making the best use of Macs and Apple hardware at home and in the workplace.
Recent posts from MacFixIt
Screen blanks when viewing FLV videos
Address Book: 'Last Import' showing too many entries
Finder still working while Desktop items disappearing in OS X
Quick Tip: Click the Magic Mouse to connect it.
MobileMe: Cannot reach the configuration server
Quick Tip: Fix an Apple Software Restore font issue
CNET TV Apple Byte: Mailbag
Command, Options, Shift, or other modifier keys not working
Add a Comment (Log in or register) (12 Comments)
  • prev
  • 1
  • next
by sdevan45 November 13, 2009 10:10 AM PST
Or, you can just buy BusyCal and have an elegant solution to calendar sharing both on your local network as well as Google Calendar.
Reply to this comment
by jhjens1 November 13, 2009 10:45 AM PST
BusyCal works great for us with about 10 users. The main caveat is that if there is a "master" calendar, it must be on a machine with BusyCal running by a logged-in user. This can be inconvenient. We used a spare machine. Users are very happy to be away from Now and love the integration with iPhones.
Reply to this comment
by listserv69 November 13, 2009 11:02 AM PST
What about BusySync? I use it on my home LAN to keep iCal current on all clients. Draw-back is cost to implement. 60 bucks for three computers but the convenience to update iCal form any station is worth it for me. The wife is happy.
Reply to this comment
by zegor November 13, 2009 11:41 AM PST
There is no need to purchase anything.

iCal, iPhone and google's calendar can all sync through google calendar, with multiple calendars for a single person, editable from all three platforms, and allowing for other people to see or edit your calendar as well (if you want to).

Just set up one google account for the calendars, and follow the instructions by google at http://www.google.com/support/calendar/bin/answer.py?answer=99358#ical
Reply to this comment
by tkessler November 13, 2009 12:05 PM PST
While this is a good workaround, it does not use iCal's services. I'd personally much prefer to have a local server of sorts to share calendars with other accounts, than solely rely on a server and internet connection to do this.
by saraswati November 17, 2009 6:16 AM PST
Actually, syncing with Google calendar works only one way: from Google to iCal, but not from iCal to Google. If one uses Google calendar as the main calendar, I suppose this would work, but one couldn't add an event in the iPhone calendar or desktop iCal and then expect for it to appear in the Google calendar. See the discussion on the google forum here:
http://www.google.com/support/forum/p/Calendar/thread?tid=64352362b1dfddf6&hl=en
by rayjay November 14, 2009 1:59 AM PST
Some ISPs - including mine, the Mac specialist Macace - provide webspace free of charge. Their MacMate is less elegant than MobileMe but faster. I use it among other things for sharing iCal calendars across the four macs on my home LAN.
Reply to this comment
by gfs2000 November 14, 2009 7:15 AM PST
I have BusySync. It works fine, and they've come out with BusyCalc. The problem is that a license is needed for each Mac, which gets expensive. I've been using the new program FRUUX, in late beta, which seems to work great to sync my Macs. It syncs my addressbooks on each Mac.
Reply to this comment
by Richard Hallas November 14, 2009 8:31 AM PST
Speaking of iCal, am I alone in finding that the Dock icon no longer updates to show the current date in Snow Leopard?

In Leopard it showed today's date even when iCal wasn't running. In Snow Leopard, it shows whatever date the system last booted, and never changes again until the next reboot.

If I launch iCal then the date changes to today, but when I quit it, the date reverts back to the last date when the system was restarted.
Reply to this comment
by afterhours November 16, 2009 8:26 AM PST
As with others here, I'm amazed that the author didn't do any significant research for other options. BusySync has been a workhorse for us for years. XCconnect is more 'server-based', but fully functional. Using the keyphrace 'share calendar' in cnet's own Versiontracker site yields even more.

MacFixit has certainly gone downhill in its efforts to throw up 'more content' after the cnet buyout -- at the expense of detailed, well-researched and written articles. I guess we'll see a continued dilution effect of Mac quality press as they gain more marketshare. One of the downsides of getting 'discovered' as a platform, I suppose.

I'm sure the author *can* write far superior pieces. As long as cnet pays him by the quality, and not quantity, of his entries. Then again, reading cnet itself shows us the future of quality geek press. And it isn't pretty. Oh hey, look -- something shiny!
Reply to this comment
by tkessler November 17, 2009 8:35 AM PST
I did do research, but left out plugins and third-party options with the idea being that this can be done through other means (ie, MobileMe if you have it, and Google if you don't). There are a number of utilities that will synchronize your calendars, but I chose to write this article without them in mind. As a previous commenter mentioned, there is no need to purchase anything additional to get this functionality, and that was the goal of the article.
by fixitjl November 16, 2009 9:10 AM PST
After a long search and much experimentation, we've found Address Book Server (www.addressbookserver.com) to be a great solution. It works well with iCal and Address Book. It requires diligence to configure, but the developer is incredibly responsive and helpful. (No connection to the developer other than as a most satisfied customer.)
Reply to this comment
(12 Comments)
  • prev
  • 1
  • next

Navigate MacFixIt

  • Help
  • Archives
  • Utilities
  • Forums
advertisement
Click Here

About MacFixIt

MacFixIt is CNET's troubleshooting resource for all things Mac. The information here helps you navigate the ins-and-outs of Mac ownership with how-tos, troubleshooting information, news, reviews, and more.

Add this feed to your online news reader

MacFixIt topics