Fabian1983
Here to stay
|
Hey! Vielleicht wird der Thread auch von anderen genutzt, bei mir ergeben sich ja regelmäßig Fragen. ![:D](/images/smilies/biggrin.gif) Dann fang ich mal an... Ich will in einem Verzeichnis nach defekten Dateien suchen, nach ein bissl Gegoogel bin ich drauf gekommen, dass dazu wohl "find" am besten geeignet ist. Bin auf "-readable" gestoßen, aber das Gegenteil, also illegible, scheint's nicht zu geben? ![:D](/images/smilies/biggrin.gif) Hätte also gern sowas: "find /media/slave/Multimedia/Musik -readable WENN NICHT -fprint /home/fabsko/Desktop/list.txt" Ist mir ja fast ein bisschen peinlich, das zu fragen, aber naja, was soll man machen? Danke im Voraus!
|
-=Willi=-
The Emperor protects
|
Der Flag -readable für find bedeutet nur dass er nur Dateien anzeigt für welche du die Berechtigungen im Filesystem hast. Das hat nix mit "kaputt sein" zu tun ![:)](/images/smilies/smile.gif) . Ob eine Musikdatei irgendwie kaputt ist, wirst wohl nur in einem Player heraus finden können. Ich lass mich aber gerne von anderen eines besseren belehren.
|
Fabian1983
Here to stay
|
Alles klar. Aber es muss doch eine Möglichkeit finden, defekte oder corrupted files auch so zu erkennen? Ursprung des Problems: Hab mal bei "dd" den falschen Pfad eingegeben und bin über meine Daten-HDD drübergefahren. Überraschenderweise ist alles wieder aufgetaucht nach einigen Tagen an Ausgrabungen. Nur sind halt einige, relativ wenige, Files kaputt. Über Amarok erkenn ich zwar eh, welche Files das sind (weil die Tags auch nicht mehr stimmen), aber ich hätte halt gern mal was dazugelernt.
|
Valera
Here to stay
|
Ohne Filesystem mit Checksummen wüßte ich nicht wie die Hardware bzw das OS das erkennen sollte? Wenn zB in einem mp3 oder jpg ein Bit umkippt hörst und siehst du vielleicht garnix oder es ist ein blopp bzw. ein entstelltes Bild. WEnn du die Hälfte wegschneidest, kann es einfach sein, dass das Musikstück dort einfach nur abbricht. Woher soll das OS wissen ob das nicht so gehört? Imho suchst du etwas wie ZFS und dergleichen. Das bringt dir aber nichts, wenn du bereits glaubst/weißt dass es korrupte Files gibt. Würde mich aber auch interessieren ob es da Lösungen gibt - zB für bestimmte Filetypen??
|
-=Willi=-
The Emperor protects
|
Zumindest für mp3s konnt ich das finden: http://jo.ath.cx/soft/mp3check/libstdc++5 unter Ubuntu 13.10 musste ich noch installieren damit die vorkompilierte Binary von v0.8.0 läuft. #!/bin/bash
for file in $(find /media/slave/Multimedia/Musik -iname *.mp3); do
ok=... # mp3check magic mit $file
if ok; then
rm $file
fi
done
Fragt sich nur was man alles prüfen muss/kann/will ![:D](/images/smilies/biggrin.gif) . Mit FLACs funzt es halt schon wieder ned.
|
GrandAdmiralThrawn
XP Nazi
|
Das wäre denke ich ein Problem, das unter "künstliche Intelligenz" und ggf. "Maschinelles Lernen" fällt, sofern man beliebige Dateitypen und Dateisysteme prüfen will. Die Maschine muß ja irgendwoher wissen, wann eine Datei kaputt ist und wann nicht, und das müßte die Maschine erst Mal lernen, bevor sie so eine Entscheidung treffen kann.. Einziger Weg führt wohl über Spezialtools wie das von -=Willi=- erwähnte, wobei ich nicht gleich "rm" ausführen würd. ![;)](/images/smilies/wink.gif) Mußt Mal bedenken, was du brauchst, um ein defektes File auf einem intakten Dateisystem zu erkennen: - Textfile: Einfach zu lesen. Aber um Fehler zu erkennen, muß man auf gängige Strukturen wie "Deutsche Sätze" oder gängige Log-/Konfigurationsfilesyntaxen prüfen, und dann Abweichungen analysieren.
- JPEG : Erst Mal muß das prüfende Tool JPEGs öffnen können, also linked gegen libjpeg o.ä. Dann die ganzen Blocks decoden und auf "seltsame" Wertematrizen prüfen?! So irgendwas.
- MP3: libmad o.ä. können das decoden, dann müßte man auf seltsamen Noise oder plötzliche Schnitte prüfen, um positiv zu detektieren.
- usw. usf.
Da sieht man also, daß eine Erkennung von defekten Daten nur dateitypspezifisch erfolgen kann, und mitunter evtl. ziemlich schwierig wird. Ich schätze deswegen gibt's da auch kein universelles Tool.
|
Hansmaulwurf
u wot m8?
|
@GAT: Die Stümper-Variante wäre halt mit amarok oder tool der Wahl probieren das File zu spielen. Und wenn irgendein Error kommt, annehmen das er es nicht lesen kann. (Wobei's dann halt auch sein kann, weil das File nicht da ist, weils corrupt ist, weil der Codec nicht passt,..)
|
davebastard
Vinyl-Sammler
|
ja das würd eventuell gehen. mit irgend einem cli tool abspielen probieren (z.B mplayer) und falls es mit error abbricht makieren oder halt in ein txt file schreiben. aber ich glaub dass das verhalten da auch nicht immer gleich ist. bei manchen files wirds abbrechen und bei manchen vielleicht nur zu hören sein.
|
GrandAdmiralThrawn
XP Nazi
|
Man kann sich ja Mal mit einem mp3 spielen. Auf so ein File kannst mit der Schrotflinte schießen, solang du nicht grade den Anfang erwischst, wird dir ein Player das abzuspielen probieren ohne gleich zu crashen. Da müßte man alle erdenklichen Rückmeldungen des z.B. mplayer kennen, und entsprechend abfangen. Das ginge vielleicht sogar noch einigermaßen sinnvoll.. wenn auch nicht mit 100% gesicherter Detektionsrate denke ich?
Hieße aber auch, daß man den Player anweisen müßte, das File schnell durchzuackern und nicht auf einem Audiogerät wiederzugeben, sonst dauert das ja viel zu lange, wennst eine Million Files durchlaufen mußt.
Glaub trotzdem nicht so ganz daran, daß das sinnvoll funktioniert...
|
COLOSSUS
AdministratorGNUltra
|
|
Fabian1983
Here to stay
|
Alles klar, ich hab mir das anscheinend leichter vorgestellt, als es tatsächlich ist. Beruhigt mich aber auch ein wenig, ich hab micht nämlich schon gewundert, wieso ich bei Google nicht massenweise Antworten finde.. ![:D](/images/smilies/biggrin.gif) Danke Colossus für den Link, das werd ich mir mal anschauen!
|
t3mp
I Love Gasoline
|
Da sieht man also, daß eine Erkennung von defekten Daten nur dateitypspezifisch erfolgen kann, und mitunter evtl. ziemlich schwierig wird. Ich schätze deswegen gibt's da auch kein universelles Tool. Außer natürlich, man hätte ein Dateisystem mit aktiviertem Checksumming. Aber selbst für ext4 ist das ja erst im Kommen...
|
GrandAdmiralThrawn
XP Nazi
|
Das bringt dir aber auch nichts, wenn Daten durch fehlerhafte Software zerlegt werden, rein vom Dateisystemzugriff her aber "alles passt"...
Sonnst könntest eh ZFS nehmen.
|
t3mp
I Love Gasoline
|
Klar, aber kaputte Daten durch ein ein unkontrolliertes dd, das sich nicht um das Dateisystem schert, könnten dadurch erkannt werden.
|
COLOSSUS
AdministratorGNUltra
|
|