Comments (5)
fwup doesn't support ext filesystem operations. I haven't looked into how feasible this is to add. You have two options right now: 1. In your application (or in an init script), check whether the application partition is corrupt, and if it is, create it with mke2fs
. 2. Create an ext partition image on the host and use fwup
to write it as a blob.
I'm not a big fan of the 2nd option, since it may take a long time to write due to zero'ing out all of the blocks in the filesystem. FWIW, I wrote fwup
with some code to handle sparse files, but it's been so long since I've tested it, that it likely doesn't work well. In my own work, I've never had a use for including sparse files in the firmware image.
The first option is what I do. The reason is that, for whatever reason, I've had application partitions get corrupt in the field. Since I have to handle this, the logic is already in my application, so there's no reason to duplicate it in a fwup
configuration. Additionally, I don't want to format the application partition on firmware updates. For factory programming, I've had my 'complete' image write zeros to the beginning of the application partition to ensure that it's corrupt.
from fwup.
It would certainly be nice for fwup to have ext support, but in the mean time, I just have a multi-step process on host that looks like the following:
$DIR/fwup -a -d $DRIVE -i ${FW} -t complete
#refresh MBR
partprobe $DRIVE
echo "Format Data Partition"
PARTITION4=${DRIVE}4
mkfs.ext4 -L "data" ${PARTITION4}
sync
from fwup.
I just came across this project: https://github.com/gkostka/lwext4. It looks possible to integrate into fwup, doesn't look too huge, and should be portable. If anyone wants to check into it more and give it a go, I'm not against it. In fact, if I run into situation where I need to manupulate an ext partition, I might give it a try too.
from fwup.
Thanks! #2 above is what I had been doing (and it's a hassle since it can take forever to write out). #1 should be reliable but has some startup cost that I was hoping to avoid.
from fwup.
This issue has been open for quite a long time and I don't know of anyone working on this any time soon. Going to close for now.
from fwup.
Related Issues (20)
- Could anyone help me move CI from Travis-CI to anywhere else? HOT 1
- fsck.fat v4.2 failure HOT 4
- question: sometimes, for ext4 partition, no sparse compression is done HOT 4
- Failed to start File System Check on Root Device HOT 6
- fwup:amd64 : Depends: libc6:amd64 (>= 2.4) but it is not installable HOT 8
- Add `.deb` for `aarch64` to the releases
- zlib-1.2.11 is no longer available from zlib.net HOT 3
- Add lock file support
- Support usb drive or card reader HOT 4
- Compiling with glibc 2.36 fails due to conflicting headers HOT 1
- xdelta tries to read too much data HOT 5
- Handle /dev/null as a special case output device HOT 4
- Support delta-source-fat-offset and delta-source-fat-path HOT 4
- Arm build is missing from releases. HOT 1
- u-boot redundant environment support issue HOT 5
- UMS is not detected by fwup on Windows 11 HOT 5
- fwupd defeated by secure boot kernel lockdown? HOT 1
- Test failure installing 1.10.1 HOT 3
- Suggestion: Ignore tiny discovered drives/devices HOT 4
- Signing firmware files post-delta creation fails
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fwup.