1. Möchtest Du unser Team im Android OS-Bereich unterstützen? Details dazu findest du hier!
  2. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

Geschriebene Daten im Dateisystem ermitteln

Dieses Thema im Forum "Android Allgemein" wurde erstellt von Maniaxx, 27.05.2012.

  1. Maniaxx, 27.05.2012 #1
    Maniaxx

    Maniaxx Threadstarter Android-Experte

    Beiträge:
    495
    Erhaltene Danke:
    36
    Registriert seit:
    11.10.2011
    Phone:
    Samsung Galaxy S4 LTE+
    Hallo,
    wie kann ich geschriebene Daten (Name, Menge) im Dateisystem ermitteln? Mit 'find' bekomme ich die Dateinamen (eines bestimmten Zeitraums), nicht aber wie viel die einzelnen Dateien geschrieben haben.

    Im Prinzip möchte ich ein Customimage auf "Badguys" untersuchen, die verhältnismäßig viele Schreibzugriffe verursachen.
     
  2. mizch, 27.05.2012 #2
    mizch

    mizch Android-Guru

    Beiträge:
    2,310
    Erhaltene Danke:
    371
    Registriert seit:
    05.11.2010
    Das würde bedingen, dass jeder Schreibzugriff protokolliert werden müsste. Das ist weder vom Zeitaufwand noch vom Speicherplatzbedarf her realistisch für ein Mobilbetriebssystem. Du kannst also nur über den Zeitstempel ermitteln, dass geschrieben wurde, mehr aber nicht.
     
  3. Maniaxx, 27.05.2012 #3
    Maniaxx

    Maniaxx Threadstarter Android-Experte

    Beiträge:
    495
    Erhaltene Danke:
    36
    Registriert seit:
    11.10.2011
    Phone:
    Samsung Galaxy S4 LTE+
    Das verbraucht doch keinen Speicher, eher Ressourcen von CPU und Dateisystem. Da wird kurz in einer Datenbank bei dem Dateinamen +1 gesetzt und die Bytes addiert und das war's (pro Schreibzugriff). Der Aufwand ist doch sehr gering. Außerdem ist es ja auch nicht für den Dauereinsatz gedacht, sondern nur um mal ein paar Stunden mit zu loggen.

    Auf meinem Linuxrouter logge ich die Dateien so:
    find / -mmin -240 | grep -v '/dev' | grep -v '/proc' | grep -v '/var/log/rrd' | grep -v '/var/lock' | grep -v '/var/run' | grep -v '/sys'
    (die angegebenen Ordner werden ausgeschlossen, 240min entspricht einer Auflistung der letzten 4 Stunden).

    Problematisch dabei (da nicht erfassbar) sind Dateien, die oft wiederholt geschrieben werden. Syslogd/Klogd bzw. var/log/messages ist zwar recht klein (<2MB), verursacht aber bei mir ca. 30-70MB pro Tag Schreibzugriffe (wobei dieser Wert im Webfrontend des IPFire geliefert wird. Wie die den erfassen, habe ich noch nicht recherchiert).. Seit ich das in die Ramdisk verschoben habe, habe ich nur noch 1-2MB Schreibzugriffe pro Tag. Der Router läuft natürlich auch auf CompactFlash, sonst würde das ja keinen Sinn machen.

    Vielleicht reicht das ja auch... Ich teste das erst mal mit dem Androiden.
     
    Zuletzt bearbeitet: 27.05.2012
  4. mizch, 27.05.2012 #4
    mizch

    mizch Android-Guru

    Beiträge:
    2,310
    Erhaltene Danke:
    371
    Registriert seit:
    05.11.2010
    Ich sehe nicht, dass Dein langes find-Kommando dasselbe täte. Es listet einfach die Dateien auf, die sich in den letzten 240 min geändert haben und die sich nicht in bestimmten Verzeichnissen befinden. (Es fehlt übrigens das ^ vor den Dateinamen, damit sie auch im Wurzelverzeichnis verankert sind. So trifft es auch Subdirectories.)

    Davon abgesehen, würde ich nicht tausend grep-Prozesse hintereinanderschalten und Ressourcen verbraten. Useless Use of Grep würde ich das nennen, wozu gibt es reguläre Ausdrücke? Ein Zusammenschalten der Verzeichnisse mit „\|” bei grep und „|” bei egrep (oder grep -e) tut's genauso und alles lässt sich mit einem (Zahl 1) grep erledigen. Aber – wie gesagt – ich sehe nicht, dass Dein find + grep irgendwie die geschriebene Menge der letzten 240 Minuten angeben würde. Und um die geht es Dir doch laut Eröffnungsposting.
     
    Zuletzt bearbeitet: 27.05.2012
  5. Maniaxx, 28.05.2012 #5
    Maniaxx

    Maniaxx Threadstarter Android-Experte

    Beiträge:
    495
    Erhaltene Danke:
    36
    Registriert seit:
    11.10.2011
    Phone:
    Samsung Galaxy S4 LTE+
    Das wollte ich damit auch nicht sagen. Da es aber scheinbar das Einzige ist, was dahingehend hilfreich ist, bleibt mir ja nichts anderes übrig.
     

Diese Seite empfehlen