Due to the nature of my personal, professional and (up until recently) academic lives, I routinely found myself interacting with all three major operating systems on a daily basis (hooray for virtualization). However, keeping my data in sync between my Windows, Linux, and Mac virtual machines was always an exercise in frustration for me, so a few years ago, I got fed up and finally decided to migrate all my files over to a shared directory on my server and access everything remotely.

This has worked out incredibly well, and I recommend it to anybody who uses more than one machine on a daily basis. I enjoy the luxury of having immediate access to my files from all three virtual machines at the same time.

File ownership and file permissions can be tricky though. For example, if I use NFS to create a directory on my server using my Mac OS X VM, I’ll have trouble writing to that directory from my Debian Linux VM since the UID of the Mac OS X user won’t match the UID of the Debian user. This is due to the fact that Mac OS X starts incrementing UIDs at 500, while Debian starts at 1000.

Note: Humorously enough, this problem doesn’t affect Windows since Windows uses SMB, and Samba handles file permissions in a different way than NFS. The trade-off though is speed: NFS is traditionally faster than SMB, but I digress.

Since Debian isn’t alone in this kind of behavior (indeed, almost every major Linux distribution and all major BSD derivatives start UIDs at 1000), it seems only natural to bring Mac OS X in line with the rest of the group rather than try to change every future Linux or BSD derivative I’ll use.

Comments are closed.