"We are back" « oc.at

Defekter Filename/unsichtbare Files?

Umlüx 05.05.2025 - 10:56 3001 15
Posts

Umlüx

Huge Metal Fan
Avatar
Registered: Jun 2001
Location: Kärnten
Posts: 9240
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

Administrator
GNUltra
Avatar
Registered: Dec 2000
Location: ~
Posts: 12340
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

Huge Metal Fan
Avatar
Registered: Jun 2001
Location: Kärnten
Posts: 9240
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

Elder
Er ist tot, Jim!
Avatar
Registered: Mar 2001
Location: Wien
Posts: 52270
gibts evtl ein Berechtigungsproblem oder nicht ausreichend Speicherplatz (Quota)?

Umlüx

Huge Metal Fan
Avatar
Registered: Jun 2001
Location: Kärnten
Posts: 9240
nein, das hatte ich schon als erstes gecheckt.

COLOSSUS

Administrator
GNUltra
Avatar
Registered: Dec 2000
Location: ~
Posts: 12340
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

Huge Metal Fan
Avatar
Registered: Jun 2001
Location: Kärnten
Posts: 9240
Immerhin sieht er etwas. Ich seh nichts ;)
Das wäre vielleicht eine Möglichkeit diese Files loszuwerden.

MightyMaz

hat nun auch einen Titel
Registered: Feb 2003
Location: .de
Posts: 747
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.
Bearbeitet von MightyMaz am 05.05.2025, 16:04

daisho

Vereinsmitglied
SHODAN
Avatar
Registered: Nov 2002
Location: 4C4
Posts: 20037
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.
Bearbeitet von daisho am 05.05.2025, 21:00

Umlüx

Huge Metal Fan
Avatar
Registered: Jun 2001
Location: Kärnten
Posts: 9240
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

Lord of Derailment
Avatar
Registered: Aug 2000
Location: BRUCK!
Posts: 3906
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

Huge Metal Fan
Avatar
Registered: Jun 2001
Location: Kärnten
Posts: 9240
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

Renegade
Registered: Aug 2007
Location: Graz
Posts: 1786
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

Huge Metal Fan
Avatar
Registered: Jun 2001
Location: Kärnten
Posts: 9240
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

still oc.at-addicted
Avatar
Registered: Mar 2001
Location: Austria, Waldvie..
Posts: 1760
Können die MA löschen? Wurde das File erkannt und dann nicht (vollständig) umgewandelt, weils Original dann gefehlt hat?
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz