[GastForen Betriebsysteme und Dienste HELIOS dt mv -Ev: "desktop error: Error -5018 occured!"

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

dt mv -Ev: "desktop error: Error -5018 occured!"

floogy
Beiträge gesamt: 112

7. Mär 2011, 18:11
Beitrag # 1 von 8
Bewertung:
(3460 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Was bewdeutet die Fehlermeldung bei dt mv -Ev: "desktop error: Error -5018 occured!" ?
X

dt mv -Ev: "desktop error: Error -5018 occured!"

GreatOm
Beiträge gesamt: 378

8. Mär 2011, 08:46
Beitrag # 2 von 8
Beitrag ID: #466453
Bewertung:
(3433 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
"MacErrors.h" sagt:
afpObjectNotFound = -5018, /* Specified file or directory does not exist */

Gruß,

GreatOm


als Antwort auf: [#466436]

dt mv -Ev: "desktop error: Error -5018 occured!"

floogy
Beiträge gesamt: 112

8. Mär 2011, 09:19
Beitrag # 3 von 8
Beitrag ID: #466454
Bewertung:
(3424 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Danke für die Antwort. Nun weiß ich endlich wo ich die Fehlermeldungen entschlüsseln kann :)

Leider hilft mir das noch nicht ganz bei der Interpretation. Ich nehme mal an, dass es am globbing lag, und die Leerzeichen in den Dateinamen umgebrochen wurden.
Code
root@SunFireV240:/# help |head -n1 
GNU bash, version 3.2.17(6)-release (sparc-sun-solaris2.9)


Code
dt mv -Ev  /raid01/lost+found/#0502583/* /raid01/Daten/2010/ 


Die vorinstallierte bash macht das nicht, so weit ich mich erinnere …

Code
{root@SunFireV240}: help |head -n1 
GNU bash, version 2.05.0(1)-release (sparc-sun-solaris2.9)



als Antwort auf: [#466453]
(Dieser Beitrag wurde von floogy am 8. Mär 2011, 09:20 geändert)

dt mv -Ev: "desktop error: Error -5018 occured!"

Thomas Kaiser
  
Beiträge gesamt: 1299

8. Mär 2011, 12:40
Beitrag # 4 von 8
Beitrag ID: #466487
Bewertung:
(3396 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi,

Antwort auf [ floogy ] Danke für die Antwort. Nun weiß ich endlich wo ich die Fehlermeldungen entschlüsseln kann :)


Dann gleich noch ein billiger Tipp hinterher: Beim Googlen auf das Minus-Zeichen zu verzichten, ist meist essentiell. http://www.google.com/search?q=5018+afp ;-)

Antwort auf: Leider hilft mir das noch nicht ganz bei der Interpretation. Ich nehme mal an, dass es am globbing lag, und die Leerzeichen in den Dateinamen umgebrochen wurden.


Also ich wäre da bei Mac-Dateinamen, in denen ja so ziemlich alles vorkommen kann, mehr als vorsichtig. Bzw. verwende ich immer Konstrukte wie

Code
ls [-a] /raid01/lost+found/#0502583/ | while read ; do 
    dt mv -Ev "/raid01/lost+found/#0502583/${REPLY}" /raid01/Daten/2010/
done


Gruss,

Thomas


als Antwort auf: [#466454]

dt mv -Ev: "desktop error: Error -5018 occured!"

floogy
Beiträge gesamt: 112

11. Mär 2011, 11:50
Beitrag # 5 von 8
Beitrag ID: #466764
Bewertung:
(3304 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Thomas,

Danke für die Anregungen.

Dein Konstrukt erscheint mir ein wenig merkwürdig, da dt ls ja nur die erste Ebene der Verzeichnishierarchie listet, und somit das Problem nur verlagert wird. Das ist wohl nur als Beispiel gedacht?

find -depth erscheint mir da sinnvoller.

Außerdem bekomme ich weiterhin merkwürdige Meldungen, die ich mir nicht erklären kann, da ich zuwenig von afp/ethershare bzw. HELIOS verstehe.

Auszug:
Code
{root@SunFireV240}:ls /raid02/praktikanten/        
[…]
ÜBUNGEN_Programme […]
{root@SunFireV240}: ls -a /raid02/praktikanten/| while read ; do dt mv -Ev "/raid02/praktikanten/${REPLY}" /raid02s/;done

dt mv: /raid02/praktikanten/.rsrc/ÜBUNGEN_Programme: missing resource fork
dt mv: /raid02/praktikanten/ÜBUNGEN_Programme/Photoshop_Übungsbuch/.rsrc/Kap_06: missing resource fork
dt mv: Warning: /raid02s/praktikanten/ÜBUNGEN_Programme/Photoshop_Übungsbuch/.rsrc/Kap_06: No such file or directory
dt mv: /raid02/praktikanten/ÜBUNGEN_Programme/.rsrc/Tutorium: missing resource fork
dt mv: Warning: /raid02s/praktikanten/ÜBUNGEN_Programme/.rsrc/Tutorium: No such file or directory
dt mv: Warning: /raid02s/praktikanten/.rsrc/ÜBUNGEN_Programme: No such file or directory
dt mv: /raid02/praktikanten/.rsrc/Schriften: missing resource fork
dt mv: Warning: /raid02s/praktikanten/.rsrc/Schriften: No such file or directory
dt mv: /raid02/.rsrc/lost+found: missing resource fork
dt mv: Warning: /raid02s/raid02/.rsrc/lost+found: No such file or directory
dt mv: /raid02/praktikanten/ÜBUNGEN_Programme: no such file or directory
[…]



Wohingegen gnu mv -v folgendes Bild bietet:
Code
root@SunFireV240:/raid02s# gnu mv -v  /raid02/praktikanten/Manfred /raid02s/praktikanten/Manfred  
`/raid02/praktikanten/Manfred' -> `/raid02s/praktikanten/Manfred/Manfred'
`/raid02/praktikanten/Manfred/.rsrc' -> `/raid02s/praktikanten/Manfred/Manfred/.rsrc'
`/raid02/praktikanten/Manfred/.rsrc/Stop-ErsteHilfe.psd' -> `/raid02s/praktikanten/Manfred/Manfred/.rsrc/Stop-ErsteHilfe.psd'
`/raid02/praktikanten/Manfred/.rsrc/Plakat.tif' -> `/raid02s/praktikanten/Manfred/Manfred/.rsrc/Plakat.tif'
`/raid02/praktikanten/Manfred/.rsrc/Plakat.psd' -> `/raid02s/praktikanten/Manfred/Manfred/.rsrc/Plakat.psd'
[…]
`/raid02/praktikanten/Manfred/Stop-ErsteHilfe.psd' -> `/raid02s/praktikanten/Manfred/Manfred/Stop-ErsteHilfe.psd'
[…]
`/raid02/praktikanten/Manfred/so allerlei/zoo-köln/.rsrc/100_0562.JPG' -> `/raid02s/praktikanten/Manfred/Manfred/so allerlei/zoo-köln/.rsrc/100_0562.JPG'
[…]
`/raid02/praktikanten/Manfred/so allerlei/zoo-köln/100_0562.JPG' -> `/raid02s/praktikanten/Manfred/Manfred/so allerlei/zoo-köln/100_0562.JPG'
[…]
removed `/raid02/praktikanten/Manfred/so allerlei/zoo-köln/100_0562.JPG'
[…]


gnu ist ein Skript, das die gnuversion des nachfolgenden Programs aufruft, in diesem Fall GNU mv der FSF. http://directory.fsf.org/project/coreutils/


als Antwort auf: [#466487]
(Dieser Beitrag wurde von floogy am 11. Mär 2011, 11:57 geändert)

dt mv -Ev: "desktop error: Error -5018 occured!"

GreatOm
Beiträge gesamt: 378

11. Mär 2011, 13:15
Beitrag # 6 von 8
Beitrag ID: #466780
Bewertung:
(3290 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf [ floogy ] Außerdem bekomme ich weiterhin merkwürdige Meldungen, die ich mir nicht erklären kann, da ich zuwenig von afp/ethershare bzw. HELIOS verstehe.


Mit dem Kommando wird wohl auch ein "dt mv" auf ".../ordner/.rsrc/resourcefile" gemacht, was nicht zulässig ist.
Ein find, ls, etc. darf _nicht_ auf den Inhalt eines ".rsrc" Verzeichnisses zugreifen und dann damit dt benutzen.
Die resourcen werden automatisch zusammen mit der Datenfork gehandhabt.

Gruß,

GreatOm


als Antwort auf: [#466764]

dt mv -Ev: "desktop error: Error -5018 occured!"

floogy
Beiträge gesamt: 112

11. Mär 2011, 14:12
Beitrag # 7 von 8
Beitrag ID: #466794
Bewertung:
(3278 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

also ist die Option -a zu unterlassen, bzw. besser dt ls zu verwenden? Gibt es auch ein dt find?

Verstehe ich es richtig, dass dt mv oder dt cp die zufgehörige .rsrc transparent mitverschieben/kopieren?

Was bewirkt die option -E (in: dt mv -Ev)? bzw. Was bedeutet der Satz?:
Zitat Durch -E wird ein Helios Event für den ScriptServer generiert.


Was passiert, wenn ich die dt tools nicht verwende?

Danke

floogy


als Antwort auf: [#466780]
(Dieser Beitrag wurde von floogy am 11. Mär 2011, 14:15 geändert)

dt mv -Ev: "desktop error: Error -5018 occured!"

Thomas Kaiser
  
Beiträge gesamt: 1299

11. Mär 2011, 16:19
Beitrag # 8 von 8
Beitrag ID: #466805
Bewertung:
(3264 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi,

Antwort auf [ floogy ] also ist die Option -a zu unterlassen, bzw. besser dt ls zu verwenden? Gibt es auch ein dt find?


Dreimal ja. Und dreimal "aber" hinterher:

Wenn Du "ls -a" verwendest, mußt Du natürlich drauf aufpassen, daß die ".rsrc"-Ordner ausgespart werden (also egal, was Du machst, ob das normale Unixsche "ls" oder "find" oder was auch immer: Ergebnisliste immer filtern, in der Shell bspw. per
Code
| grep -v "\.rsrc/" | 


Es gibt auch ein "dt ls" (das nicht nur passend parametrisiert Macintosh- und Helios-Metadaten liefern kann sondern bspw. in Zusammenhang mit Nutzung von Active Directory die angenehme Eigenschaft hat, auch die richtigen User-/Gruppennamen aufzulisten anstatt nur IDs, die dynamisch vergeben wurden). Dieses blendet selbstredend die ".rsrc"-Ordner automatisch aus.

Es steht in aktuellen Helios-Versionen auch ein "dt find" zur Verfügung, das aber einzig und alleine dazu sinnig ist, schnelle Suchen anhand der Desktop-Datenbank jedes Volumes durchzuführen. D.h. ein "dt find" läuft auf einem 10 TByte großen Volume vielleicht in 1-2 Sekunden durch, wohingegen ein echter find-Lauf zweistellige Minuten brauchen würde. "dt find" ist aber kein echter Ersatz für ein Unix-find, da weniger gut parametrisierbar (bzw. muß man sich die Ausgabeliste einfach filtern -- auch das geht in vielen Situationen noch um Welten schneller, als ein generisches find abzufeuern).

Nach den drei "Abers" noch zwei "Wichtigs" hinterher Wink:

Jedes der DT-Kommandos kennt den Schalter "-h", einfach mal aufrufen.

Und viel Wichtiger: Günters Hinweise im Parallelthread: Helios-spezifische Trainings belegen ist grad für jemand mit Unix-Hintergrund enorm wichtig, damit man keinen Mist macht bzw. die Zusammenhänge versteht und endlich weiß, warum es nur ins Verderben führt, Standard-Unix-Tools zu nutzen anstelle der DT-Utilities.

Antwort auf: Verstehe ich es richtig, dass dt mv oder dt cp die zufgehörige .rsrc transparent mitverschieben/kopieren?


Vom Sinn her schon. De facto passiert aber mehr. Die Dateien in .rsrc werden nicht einfach stumpf verschoben sondern berücksichtigt. Da steht auch Helios-Interna drin (bspw. die sog. Catalog-Node-ID), die ggf. angepaßt oder mitgeführt wird, etc.

In den Dateien im .rsrc-Ordner steckt nicht nur rein das, was der Mac (oder PC-Clients -- es können ja seit UB+ beliebige File-Streams per PCShare gespeichert werden) speichert sondern auch Verwaltungs-Informationen, die die Helios-Dienste brauchen, um korrekt funktionieren zu können.

Antwort auf: Was bewirkt die option -E (in: dt mv -Ev)? bzw. Was bedeutet der Satz?:
Zitat Durch -E wird ein Helios Event für den ScriptServer generiert.



Dadurch wird ein File-Event ausgelöst, wie er auch ausgelöst würde, wenn ein User am Mac oder unter Windows Dateien verschiebt/anlegt/aktualisiert. Wichtig, damit Skriptserver-Aktionen getriggert werden. Nur will man das ggf. nicht immer, wenn man eh schon unter Unix mit Skripten agiert (Endlos-Schleife, wenn man per Skriptserver Dateien weiterverarbeitet). Daher ist der Parameter optional.

Antwort auf: Was passiert, wenn ich die dt tools nicht verwende?


Im simpelsten Fall 'ne defekte Desktop-Datei (dort liegen die Informationen drin, welche Dateien/Ordner wo liegen, welche CNIDs -- Catalog Node IDs -- sie haben, etc. -- alles wichtig, weil Dateireferenzierungen vom Mac aus nicht nur anhand absoluter Pfade geschehen sondern auf CNIDs aufbauen: "Öffne Datei mit dem Namen "Blubb.tif" im Ordner mit der CNID 2". Und wenn die CNIDs erst mal inkonsistent geworden sind, gibt's die merkwürdigsten Effekte). Die Schreibtischdatei wiederaufbauen zu müssen ist immer zeitintensiv und in jedem Fall ein Indiz dafür, daß irgendwas schiefläuft.

Abgesehen von der Desktop-Datei handelst Du Dir aber im blödsten Fall Dateien/Ordner ein, auf die keiner mehr zugreifen kann, weil die Encodings nicht stimmen. Helios verwendet seit ein paar Versionen sinnvollerweise UTF8 auf den Server-Volumes (das ggf. Richtung Client on-the-fly konvertiert wird). Auf den meisten Server-Plattformen in der Geschmacksrichtung UTF-8 precomposed, unter MacOS X bspw. als UTF-8 decomposed. Und außerdem sind ein paar spezielle Zeichen gequoted, weil die ansonsten in Skripten etc. für Unbill sorgen. Auch hier sorgen die DT-Utilities für ein Abfangen solcher Sachen (und mit "uniconv" steht ein Tool zur Verfügung, um zwischen den verschiedenen Encodings und sogar UTF8-Normalisierungsformen zu konvertieren).

All das steht in den paar tausend Seiten Helios-Manuals. Wär' jetzt noch lustig Winter, wär' das was für lange Nächte am Kamin... ist aber nicht mehr, drum unbedingt über Günters Worte nachdenken.

Ich hab vor über 10 Jahren mal das komplette Set an Helios-Schulungen absolviert (überwiegend bei Günter). Hielt mich vorher für ein Gscheiderle, war anschließend definitiv schlauer. Lohnt sich in jedem Fall.

Gruss,

Thomas


als Antwort auf: [#466794]
X