In an empty directory, run: mkdir src rsync -r --delete src/ The result: drwx------ 48 2007/11/19 16:54:29 . rsync: delete_file: rmdir(src) failed: Read-only file system (30) rsync error: some files could not be transferred (code 23) at main.c(1059) [sender=3.0.0pre5] Rsync should not be trying to delete in list-only mode! Thank goodness for the check in syscall.c or I might have had some serious data loss. The error occurs only when incremental recursion is in use. The trouble is that the call to delete_in_dir at generator.c:2051 is not conditioned on !list_only . To prevent more mistakes like this, it might make sense to set dry_run to a large value in list-only mode.
This is now fixed in git. Thanks for the report!