Re: ifupdown writes to /etc... a bug?
On Wed, Mar 12, 2003 at 11:45:48AM +0000, Miquel van Smoorenburg wrote:
> >Furnish a package that can setup a ramdisk before local things are
> >mounted (if it doesn't exist already).
> Hm, yes. However, some kernels have tmpfs support (it's called tmpfs
> now; shmfs has been deprecated, and you /do/ have to configure
> it in. 2.4 is broken with the shmfs/tmpfs distinction, btw), others
> have ramdisk compiled in or as a module, others don't have it at
> all, and it all depends on the kernel you are running at that moment.
> As soon as you upgrade the kernel things change and you do not
> want them to break ...
> So, it would be better to mount /run automatically without an
> /etc/fstab entry, since it's hard to say what that entry is.
> Besides, for a ramdisk, you still need to mkfs a filesystem on
> it before mounting it, so it's all special case code anyway.
That was what the ramdisk maker package idea for. But I guess I was a
bit obscure about this one. Full explanation :
The problem is: mounting a ramdisk at boot (in general, for /run in
particular), with just a line in /etc/fstab. You can't do that since
additional setup (mkfs) is needed.
Solution: make a "ramdisk" package, that has its initrd script called on
boot as /etc/S25ramdisk (between S20modutils and S30checkfs.sh), which
make all the necessary configuration before a ramdisk can be accessed as
any other block device containing a filesystem.
Poeple that don't need this package can just leave it alone and won't
have the somewhat dirty code that mkfs at boot. Those who install and
don't have a clue about this all will use 2.4 anyway. Those who upgrade
may have this proposed by sysvinit, or just have /run kept on the root
filesystem, as the read-only root ability not present in whatever
version of Debian they upgrade from.
I think this fits everybody, and doesn't add mounts which existance is
not mentionned in the config file or not changeable cleanly ( apart from
changing your kernel, of course ;P ).
Jeremie Koenig <email@example.com>