Readonly mounted ext2 filesystem partition changeable: Bug or Feature?

From: csg
Date: Fri Aug 08 2003 - 05:15:06 EST


[PLEASE copy any answer to this posting to
chr@xxxxxxxxxx
Thanks.]

Hello,

Short: I have seen changes made to a readonly mounted ext2 filesystem by
communicating with /sbin/init via /dev/initctl. This strange behaviour
goes away while moving /dev into RAM by using DEVFS.

In my opinion this is a bug. Or is it a feature?

**********************

Szenario:

System: Linux debian30 2.4.18-1-k6 #1 Fri Jun 6 23:55:12 EST 2003 i586 unknown
IDE disk

I have made 1 readonly ROOT-partition including /dev (and some symbolic links)
and 1 read-write VAR-partition (without exec permission).

Then I created MD5SUM over the entire readonly partition, put the checksum
along with a check-script on a (later) write-protected floppy. Now on every reboot the floppy will be mounted and the check-script compares the saved checksum with the one created on the fly over the current partition.

After rebooting or calling something like "init <new runlevel>" the partition
was found altered. "cmp" / "diff" in front to a reference pointed out the
change was made in mid of data region of the ext2-filesystem.
(Not in metedata, therefore no "mount-count"-problem; of course: no journal.)

The problem goes ahead if

- I do remove /dev/initctl
(Of course, the system is now no longer able to shutdown correctly
or to change the runlevel)
or
- I do switch to DEVFS which moves /dev and /dev/initctl to RAM.

I find this strange.
The expected behaviour would be to output an error message like
"Permission denied: Can not write to read-only filesystem".

So I think, it is a bug. But I'm not sure: May be it is a feature?

Thanks for your answer.

Christian Schmidt-Guetter



--
Christian Schmidt-Guetter
Email: chr@xxxxxxxxxx


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/