It just hit me what's going on...I'm brain-dead. However, for you the prognosis is better.
Your read only problem is that the directory (and files) might have a particular attribute set.
This
attribute is called...the sticky-bit. When it's set even a drunk with root password weilding god-like powers can't even change it and trash a system. "...oops."
For example, I take a directory and create one inside called "sticky". If I set the stickybit (
chattr +i <name>) it becomes a read only directory/file to everyone on the planet...even root.
lsattr will list the attributes and you see the stickybit sticking up a bit.
I can't force removal of the directory (and contents). I can't change it. I can't delete. I can only read it and weep in joy or sorrow that it is one thing that will no change.
However, if I reset the stickybit (
chattr -i <name>) and then I can remove...or add to the contents of the directory/file. Permanently immutable is not really either....
Code:
root@mini:/mnt# ls -lisa
total 8
3145729 4 drwxr-xr-x 2 root root 4096 Apr 29 16:48 .
2 4 drwxr-xr-x 26 root root 4096 Apr 29 16:12 ..
root@mini:/mnt# mkdir sticky
root@mini:/mnt# ls -lisa
total 12
3145729 4 drwxr-xr-x 3 root root 4096 Apr 29 16:49 .
2 4 drwxr-xr-x 26 root root 4096 Apr 29 16:12 ..
3145733 4 drwxr-xr-x 2 root root 4096 Apr 29 16:49 sticky
root@mini:/mnt# chattr +i sticky/
root@mini:/mnt# rm -rf sticky/
rm: cannot remove ‘sticky/’: Operation not permitted
root@mini:/mnt# lsattr
----i--------e-- ./sticky
root@mini:/mnt# chattr -i sticky/
root@mini:/mnt# lsattr
-------------e-- ./sticky
root@mini:/mnt# rm -rf sticky/
root@mini:/mnt# ls -lisa
total 8
3145729 4 drwxr-xr-x 2 root root 4096 Apr 29 16:53 .
2 4 drwxr-xr-x 26 root root 4096 Apr 29 16:12 ..
root@mini:/mnt#