partitioning a flash drive when running from it

We are trying to run our embedded software from the compact flash. I have a basic stripped version of linux (blosh), which loads up upon power up, and then loads up the our kernel and our root file system with our applications

so the blosh resides in first and second partion and actual kernel and rfs/apps reside in partition 3 and 4 on compact flash.

we need to upgrade the firmware over the network. for this to work, blosh receives updates over the network, and repartition the original partitions [partition 3 and 4]. and get the kernel and rfs over the network and installs them onto those partition.

but we are having difficulties in executing this. as blosh/kernel/RFS, everything is run from same physical deivce, It does not let us do any of this [repartitions, or rewriting, or mounting] as it complains that the device is busy.

Is there a way around this.

Reply to
herhighness
Loading thread data ...

I think the following should work, but someone else should confirm, as im not sure it's possible to do the chroot and unmount thing. Anyway, create a ramdisk, copy the needed tools and libraries to it, chroot, unmount the flash device. and do the upgrade.

--
Lasse Jensen [fafler at g mail dot com]
Linux, the choice of a GNU generation.
Reply to
Lasse Jensen

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.