Defekter Filename/unsichtbare Files?

Seite 1 von 2 - Forum: Linux and other OS auf overclockers.at

URL: https://www.overclockers.at/linux/defekter-filename-unsichtbare-files_264943/page_1 - zur Vollversion wechseln!


Umlüx schrieb am 05.05.2025 um 10:56

Wir haben eine kleine Bilddatenbank für das Intranet am laufen. Die Marketing kann dort .eps files hochladen und alle paar Minuten startet per crontab ein converterjob, der JPEGs für die Webseite daraus bastelt. Nun gibts hier aber anscheinend schon seit einiger Zeit Fehlermeldungen

z.B:

Code:
Command: /var/www/vhosts/xxx/htdocs/2.2.0/app/Console/Commands/convert-image.sh -s '400>' '/var/www/vhosts/xxx/htdocs/2.2.0/public/backend/images/regions/510/ARM_Jerewan_pixabay_680451_2019_03
.eps' /var/www/vhosts/xxx/htdocs/2.2.0/public/backend/images/regions/510/ARM_Jerewan_pixabay_680451_2019_03
_small.jpg
sh: 3: _small.jpg: not found

Was mir gleich aufgefallen ist: die .eps Endung schreibt das Log in eine neue Zeile? Kann sich da irgendwie ein Zeilenumbruch in den Dateinamen geschmuggelt haben?
Ein weiteres Problem ist, dass ich die betroffenen Files aber nicht sehe. Weder auf der Shell per ls, noch im WinSCP oder im Explorer auf der Samba Freigabe. Ich kann sie also nichtmal einfach umbenennen oder löschen..

Was könnte ich hier tun?


COLOSSUS schrieb am 05.05.2025 um 11:53

Unter Linux darf ein Dateiname, auf den "nativen" Dateisystemen, jede Bytefolge beinhalten, mit nur zwei Ausnahmen: 0x00 und 0x2f duerfen nicht in einem Namen vorkommen. Viele andere OS und deren Dateisysteme sind da viel restriktiver, und insb. wenn du via SMB plattformuebergreifend Dateien (und deren Metadaten wie eben Namen) sharest, ist das im Detail ein absurd komplexes Kompatibilitaetsminenfeld. Samba beschaeftigt sich unter dem Begriff "name mangling" mit einem guten Teil der Problematik (vgl. https://www.oreilly.com/openbook/sa...ok/ch05_04.html )

Aber nicht nur in dem Fall koennen bestimmte Bytefolgen in einem Dateinamen Probleme bereiten. Wie du da oben vmtl. richtig beobachtest, kann ein Dateiname problemlos (oder auch problembehaftet :D) einen Zeilenumbrich (0x0a) beinhalten. Wenn dann der Programmierer einens Programmes/Shellscripts damit nicht folgerichtig umgeht, gibt's Broesel. Das ist in deinem Fall vmtl. passiert.

Aufspueren kannst du Dateien mit einer UNIX newline im Namen ausgehend vom CWD von der Shell aus via find z. B. so:

Code:
 find . -name '*'$'\n''*' -ls

GNU find zeit Dateien dann im C-Stil escaped an, bspw. so:

Code:
$ find demodir/ -name '*'$'\n''*' -ls
       46      0 -rw-r--r--   1 colo      users          0 May  5 11:47 demodir/1/mit\nnewline.txt


Umlüx schrieb am 05.05.2025 um 12:20

Danke, aber ich sehe die Files auch damit nicht.

Ich denke, ich wende mich mal an den Hersteller des Tools. Vielleicht haben die eine Idee, der Converter scheint sie ja zu erkennen.


Viper780 schrieb am 05.05.2025 um 12:29

gibts evtl ein Berechtigungsproblem oder nicht ausreichend Speicherplatz (Quota)?


Umlüx schrieb am 05.05.2025 um 13:22

nein, das hatte ich schon als erstes gecheckt.


COLOSSUS schrieb am 05.05.2025 um 13:43

Zitat aus einem Post von Umlüx
der Converter scheint sie ja zu erkennen.

Der Converter ist afaict schlicht nicht robust genug geschrieben, um Dateien mit so "problematischen" Dateinamen korrekt zu verarbeiten. Erkannt wird da nix - was du siehst, ist der Seiteneffekt eines Bugs.


Umlüx schrieb am 05.05.2025 um 14:28

Immerhin sieht er etwas. Ich seh nichts ;)
Das wäre vielleicht eine Möglichkeit diese Files loszuwerden.


MightyMaz schrieb am 05.05.2025 um 15:45

Vielleicht lässt sich die Datei ja in der shell auch umbenennen, ohne dass du sie siehst. Also rename und den Dateinamen via c+p aus dem logfile einfügen.


daisho schrieb am 05.05.2025 um 20:58

Ich würde ja erwarten dass zumindest das EPS File am Share herumliegt:

"/var/www/vhosts/xxx/htdocs/2.2.0/public/backend/images/regions/510/ARM_Jerewan_pixabay_680451_2019_03\n.eps"

Statt \n halt vermutlich der 0x0D und/oder 0x0A character.


Umlüx schrieb am 05.05.2025 um 21:01

Zitat aus einem Post von daisho
Ich würde ja erwarten dass zumindest das EPS File am Share herumliegt:

"/var/www/vhosts/xxx/htdocs/2.2.0/public/backend/images/regions/510/ARM_Jerewan_pixabay_680451_2019_03\n.eps"

Nein eben nicht. Da liegt eine _02, eine _04, aber die fehlt.
Habs inzwischen aber schon weitergeleitet. Danke für euren Input.


GrandAdmiralThrawn schrieb am 06.05.2025 um 00:04

Ich habe ja heute (heh, eigentlich gestern, sagt meine Uhr mir grade) schon mit Umlüx drüber gesprochen, und mich verwundert vor allem anderen eines: Daß er die Dateien gar nicht anzeigen kann. Ich habe heute mehrere Linux Versionen - teilweise auch schon ältere - ausprobiert, und die bash Shells und Coreutils verhalten sich im Umgang damit nicht zu 100% konsistent... Aber ein Anzeigen per ls war immer sehr einfach möglich.

Sogar Filezilla (von Windows 11 kommend) konnte sie anzeigen, hier wurde der UNIX Zeilenumbruch im Dateinamen nur in ein scheinbares Leerzeichen umgewandelt. Runterladen oder Löschen so nicht mehr möglich, aber rm auf der Shell auch mit Autovervollständigung per Tab oder Wildcard kein Thema.

Das isses, was ich noch ned kapiere. Daß Umlüx die Files auf der Shell gar nicht angezeigt bekommen kann. Das ging auf meinen Systemen supereinfach.

Auch z.B. mit Datei 'filename-part-1'$'\n''filename-part-2' einfach zu sagen:

Code:
ls file*

Geht einfach bei mir... rm auch kein Thema, auf die selbe Weise.

Das check' ich ned.

Die verwendete Linuxdistro und Version davon wären Mal interessant.


Umlüx schrieb am 06.05.2025 um 08:05

Debian Stretch :D

Inzwischen mag ich ja gar nicht mehr verneinen, dass sich das Tool die Files nicht gach nur irgendwie halluziniert? Mal sehen, was deren Support heut dazu meint.


Daeda schrieb am 06.05.2025 um 11:16

verhalten sich alle fehler gleich wie der eine, den du gepostet hast? also mit .eps in neuer zeile - oder gibts unterschiede?

Zitat aus einem Post von Umlüx
Inzwischen mag ich ja gar nicht mehr verneinen, dass sich das Tool die Files nicht gach nur irgendwie halluziniert? Mal sehen, was deren Support heut dazu meint.

im marketing nach der originaldatei gefragt? irgendwer müsste es ja hochgeladen haben, wenn es sie wirklich gibt.


Umlüx schrieb am 06.05.2025 um 11:36

Es betrifft 2 Dateien. Und ja, bei beiden bricht er zwischen Dateinamen und Endung um.

Das Problem besteht anscheinend schon seit Jahren, da weiss niemand mehr irgendwas..

Ich denke ich küble (oder rename) einfach das komplette subdir und sie sollen die Bilder neu hochladen.


clauskadrnoschka schrieb am 06.05.2025 um 11:37

Können die MA löschen? Wurde das File erkannt und dann nicht (vollständig) umgewandelt, weils Original dann gefehlt hat?




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026