diff -ru trunk/locks.py work/locks.py
--- trunk/locks.py	2008-10-24 12:24:08.000000000 +0200
+++ work/locks.py	2008-10-24 12:41:40.000000000 +0200
@@ -53,11 +53,20 @@
         hfile = win32file._get_osfhandle(fd(file))
         win32file.UnlockFileEx(hfile, 0, -0x10000, __overlapped)
 elif system_type == 'posix':
+    def lockf(fd, operation):
+        try:
+            fcntl.lockf(fd, operation)
+        except IOError, e:
+            if e.errno == 45: # Operation not supported
+                pass
+            else:
+                raise
+                
     def lock(file, flags):
-        fcntl.lockf(fd(file), flags)
+        lockf(fd(file), flags)
 
     def unlock(file):
-        fcntl.lockf(fd(file), fcntl.LOCK_UN)
+        lockf(fd(file), fcntl.LOCK_UN)
 else:
     # File locking is not supported.
     LOCK_EX = LOCK_SH = LOCK_NB = None
