[One (M8) Q&A, Help & Troubleshooting] GedBlake:
Hi, guys...

Not a critical issue this, just me being curious!

Ever since July of last year, when my M8 was running Lollipop (and around the time I rooted it) and then later, Marshmallow... I've noticed the existence of a tiny file in /system called...

/system/dirty_file_record

Upon examination, it appears to be a simple text file (with no file extension) which logs any changes I've made to my M8, for example, by updating the /system/etc/hosts file via the AdaWay adblocker. Other changes are also logged in this file.

Another example, back when Lollipop was on my M8, there was a simple hack available which modified the /system/etc/permissions/platform.xml file which then allowed write access to the SD Card. (If I remember correctly, this hack goes back to KitKat, Android 4.3, when Google imposed write restrictions on the SD card, ostensibly for security reasons.)

Anyhow, with the SD-card write hack enabled, the dirty_file_record file was subsequently updated to reflect this. Obviously with Marshmallow, write access to the SD-card is now handled differently, and such hacks are no longer required, and actually no longer work.

----------------------------------------------------

But I'm still curious about this file, /system/dirty_file_record...

What creates it, and what purpose does it serve?

It seems to be unique to my M8 because no such file is found on my Nexus 9 tablet (coincidently also manufactured by HTC).

Both devices (M8 phone and Nexus 9 tablet) are systemless rooted, both with TWRP 3.0.2-0 installed, and my M8 is also S-OFF, so I've had no requirement to flash a kernal mod to allow write access to /system.

Another curious aspect to this, is that the dirty_file_record file is only updated/modified when a change occurs if Android is fully booted and running. And **not** when something is flashed via TWRP.

Recently I flashed the leaked

Nexus Launcher (Unreleased)

via TWRP v3.0.2-0 on my M8; it flashed without problems and everything works perfectly.

But there was no record of it in the /system/dirty_file_record file.

----------------------------------------------------

Anyway, here is the contents of my /system/dirty_file_record... Note the two APKs pushed to /system whilst Android was booted and running...

platform.xml.original-pre-sdfix
hosts
hosts
gsamrootcompanion.apk
hosts
hosts
hosts
hosts
com.asksven.betterbatterystats_xdaedition.apk
hosts
hosts
hosts
hosts

----------------------------------------------------

Apologies if this seems like a trivial non-issue, and which I suppose it is. But my curiosity about it has been bugging me for quite a while now, and I'm hoping some of the more experienced members might be able to shed some light on dirty_file_record...

...what purpose it serves, why it exists, what creates it and if it appears on any other non-HTC OEM devices.

I have a vague suspicion that this file is somehow connected in some way to the devices S-ON/S-OFF status. I'm still a little puzzled how a kernal mod can remove write protect access to /system but not for other partitions. For me personally, shelling out the $25 for a Sunshine licence was the best decision I've made with the M8. It just makes write access to /system hassle free without messing about with kernel mods...But I appreciate this isn't an option for everyone.

Thanks in advance for any responses.

Rgrds,

Ged.