Subversion on a dual boot machine

July 21, 2006 at 8:12 pm Leave a comment

Recently, I installed Ubuntu on a laptop with Windows XP. I left a Fat32 volume to share documents between Linux and Windows (since it’s still risky to write to NTFS). I later install subversion on both Windows and Linux Partition and though I could subversion as a document versioning system.

At around version 1.1, Subversion introduced a new file system call FSFS. Previous version of Subversion only supported Berkley DB, which only did not work properly cross platform (you get data corruptions). FSFS is a flat file system that do not have this problem and has been the default file system since version 1.2.

Unfortunately, when I attempt to check in a file to a repository on the FAT32 partiton, I got the following error:

Can’t chmod /myrepository

This was puzzling since chmod essentially does nothing on a Fat32 volume. The error message is deceptive. It appears that chmod is attempting to change permission on Fat32, which doesn’t support it and fails. In reality, the cause of the problem is because the Fat32 volume is typically mounted as root. Since the user is not the owner volume, chmod fails.

You have two solutions:

1. Mount the volume as being owned by you. For example, in the fstab, you can add:

/dev/hda3   /media/hda3   vfat  defaults,utf8,umask=007,gid=52,uid=1002 0       1
uid=1002 is my userId. To find out your uid, use the id command. This may not be such a good idea on mult-user machines, but dual boot machines tend to be used primary by one person.

2. Run the svn command using sudo or run as root. Since you are root, you have chmod permission over root owned volumes.

Of course, there are probably more elegant solutions, but this is what I could think of off the top of my head.

Entry filed under: linux, subversion, Windows.

Windows XP network can’t acquire DHCP address Recovery from a broken sudo

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Trackback this post  |  Subscribe to the comments via RSS Feed


July 2006
« Jun   Aug »

Most Recent Posts

%d bloggers like this: