The easiest way to install to a flash card is to simply put the files vmlinuz, image.gz, and usr_cram.fs on it without extracting their contents. This minimizes writes to the flash device. In that case / is not supposed to be read-only. It is normally tmpfs, so /var/ and /tmp/ are also in tmpfs. Please see /sbin/init_ORIG for details. If you need to customize Puppy you can make new image files.

Yes, I did at first time, I install my CF card like usb flash system, but the time to boot is like 30 seconds,( I drop 25 seconds from usb wait from the configuration). When I install my CF card like Hard disk the boot is fast < 15 second. I need to compile a kernel to install Real time system, install several programs, and I need fast boot in my project. I need to install / in read only,/var and /tmp in TMPFS. Can you help me?
thanks

Sorry about not answering you more directly at first. I'm not an expert, but the following might help. Please try at your own risk.

If you look in /etc/rc.d/rc.sysinit, near the top / is remounted read-write:

echo -n "Remounting root rw: ";mount -o remount,rw /;check_status $?

Try deleting this or remounting ro.

You need to copy the contents of /var and /tmp somewhere. Then you mount tmpfs like this:

mount -t tmpfs tmpfs /var
mount -t tmpfs tmpfs /tmp

Move everything back into /var and /tmp.

I have no experience with full hard drive installations, but make sure that you're editing the rc.sysinit that will be present at boot-up, not a fake one as on the live cd (at the bottom of the cd's rc.sysinit /etc gets deleted and replaced).

I didn't say that rootfs is readonly. You need to study the kernel source for this (I haven't), but the information I have is that rootfs is used internally by the kernel during system bootup in mounting the real root filesystem, which is mounted on top of /, hiding rootfs. So rootfs is never used by the user. See, for example, Understanding the Linux Kernel, 2nd Edition by Daniel P. Bovet and Marco Cesati (O'Reilly, 2002) or maybe the kernel mailing lists. According to Understanding the Linux Kernel:

Quote:

Mounting the root filesystem is a two-stage procedure, shown in the following list.

1. The kernel mounts the special rootfs filesystem, which just provides an empty directory that serves as initial mount point.
2. The kernel mounts the real root filesystem over the empty directory.

[from section 12.4.1, "Mounting the Root Filesystem"]

"File handling in the Linux kernel: VFS layer" by Kevin Boone (http://www.kevinboone.com/linux_kernel_file_1.html) seems to say the same thing.

The step-by-step description of how the root filesystem alone is mounted is about 1150 words. That seems reasonably detailed. "Mounting a Generic Filesystem" is a whole section of its own. For mounting to be understandable you need the technical details -- it's a sort of polished pseudocode with long lists of what functions get invoked and why, what gets passed to them, what happens inside them (they invoke more functions of course), what they return.

Rats. There's no attempt to begin the technical description of 'mounting' with a plain english explanation of what mounting is, why it's necessary? There's been a lot of questions and discussion in the forum about it. The consensus seems to be that it's just something you have to do, like paying taxes.

You cannot post new topics in this forumYou cannot reply to topics in this forumYou cannot edit your posts in this forumYou cannot delete your posts in this forumYou cannot vote in polls in this forumYou cannot attach files in this forumYou can download files in this forum