How long will the eMMC flash memory last on our shields?
As we all know, flash memory has a finite number of write cycles before bad blocks start to appear. I have no idea if the controller on the shield has wear leveling or not. That being said, if you are not using the web filter on your box I would comment out the updates for that as the whole thing gets downloaded and overwritten every time the update runs, decreasing the life of the memory. The whole IPS ruleset gets downloaded too instead of just the changes. I've attached the /sbin/fw_upgrade with the web filtering commented out saving memory writes and it runs much quicker too, about a minute and a half to finish and Snort is only offline for about 10 seconds (in bridge).
Re: How long will the eMMC flash memory last on our shields?
This post was updated on .
Thank you for this... I'm not using the web filter functions on mine in bridge - relying on built-in functions on the router making use of Yandex free web filter services.
edit: I ran this last night - replaced the standard fw_upgrade with this modified script. The Status pages indicates IPS signatures updated Feb 10, Web Filter updated Feb 9, and Shield Update Last Run Feb 9. So it looks like the IPS and WF date edits are working, but the last update run isn't. I'll see if I can figure it out.
Otherwise, thank you again for these edits!
On another note, I haven't cracked it open to look, without opening it - does anyone know if the eMMC is soldered or socketed?
then run the 3 command below on the file that s in ram
sed -i 's/alert /drop /' alert.list
sed '/^\#/d' alert.list >> temp.rules
sed '/^$/d' temp.rules > snorttemp.rules
then check if the line exists in snort.rules that’s saved on the shield,if it does check the next line and so on. If the line does not then add it to snort.rules.
this could also be done for the ads and malicious rules, at present it have
206857 asd rules
76843 mailcious rules
4388 snort rules
these change daily sometimes going up then sometimes going down.
In the long team it will surely help save the eMMC.
Also the fw_update script should have a version number added so people would know what version they are using and what was changed, again the the short team it's fine but as time goes on it becomes hard to track with a version number.
Possible answer to your question: "...I have no idea if the controller on the shield has wear leveling or not..."
The Wikipedia entry for OpenWrt says this about the file system:
"A writable root file system, enabling users to add, remove or modify any file. This is accomplished by using overlayfs to overlay a read-only compressed SquashFS file system with a writable JFFS2 file system in a copy-on-write fashion. JFFS2 supports flash wear leveling."