Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

mac:xattr [2011/03/31 15:21]
127.0.0.1 external edit
mac:xattr [2011/04/16 21:18] (aktuell)
wikisysop
Zeile 22: Zeile 22:
 Die EAs einer Datei auf einem am Mac gemounteten NTFS Filesystem (smbfs) lassen sich zB mit <fc #​008000>​xattr</​fc>​ oder <fc #​008000>​ls -l@</​fc>​ anzeigen: Die EAs einer Datei auf einem am Mac gemounteten NTFS Filesystem (smbfs) lassen sich zB mit <fc #​008000>​xattr</​fc>​ oder <fc #​008000>​ls -l@</​fc>​ anzeigen:
  
-<xterm2>$ <fc #​008000>​xattr MacFile.dmg</​fc> ​(cr) + <xterm>$ <fc #​008000>​xattr MacFile.dmg</​fc> ​  
-<fc #800000>​com.apple.diskimages.fsck+<fc #0000FF>​com.apple.diskimages.fsck
 com.apple.diskimages.recentcksum</​fc>​ com.apple.diskimages.recentcksum</​fc>​
-</xterm2>+</xterm>
  
 Auf einem Windows Computer mit NTFS Filesystem zeigt sich ein ähnliches Bild, wenn die Datei von einem Mac System ≥ 10.6 abgespeichert wurde: Auf einem Windows Computer mit NTFS Filesystem zeigt sich ein ähnliches Bild, wenn die Datei von einem Mac System ≥ 10.6 abgespeichert wurde:
  
-<xterm2>​C:​\orgfiles\MacData><​fc #​008000>​streams MacFile.dmg</​fc> ​(cr)+ <xterm>​C:​\orgfiles\MacData><​fc #​008000>​streams MacFile.dmg</​fc> ​ 
 Streams v1.56 - Enumerate alternate NTFS data streams Streams v1.56 - Enumerate alternate NTFS data streams
 Copyright (C) 1999-2007 Mark Russinovich Copyright (C) 1999-2007 Mark Russinovich
 Sysinternals - www.sysinternals.com Sysinternals - www.sysinternals.com
-.+
 C:​\orgfiles\MacData\MacFile.dmg:​ C:​\orgfiles\MacData\MacFile.dmg:​
-:<fc #800000>​com.apple.diskimages.fsck</​fc>:​$DATA 20 +:<fc #0000FF>​com.apple.diskimages.fsck</​fc>:​$DATA 20 
-:<fc #800000>​com.apple.diskimages.recentcksum</​fc>:​$DATA 80 +:<fc #0000FF>​com.apple.diskimages.recentcksum</​fc>:​$DATA 80 
-</xterm2+</xterm
  
  
Zeile 50: Zeile 50:
 Lässt man sich nun den Inhalt eines solchen, im Falle von FAT als msdos, gemounteten Volumes anzeigen, fällt auf, dass die in der AppleDouble Datei gespeicherten Information von Mac OS bereits wieder als EAs der Data Fork angezeigt werden: Lässt man sich nun den Inhalt eines solchen, im Falle von FAT als msdos, gemounteten Volumes anzeigen, fällt auf, dass die in der AppleDouble Datei gespeicherten Information von Mac OS bereits wieder als EAs der Data Fork angezeigt werden:
  
-<xterm2>​pronto-macpro:​MacFilesFAT pronto$ <fc #​008000>​ls -la@</​fc> ​(cr)+ <xterm>​pronto-macpro:​MacFilesFAT pronto$ <fc #​008000>​ls -la@</​fc> ​ 
 total 3856 total 3856
 drwxrwxrwx ​ 1 pronto ​ staff     4096 13 Mai 20:36 . drwxrwxrwx ​ 1 pronto ​ staff     4096 13 Mai 20:36 .
 drwxrwxrwx ​ 1 pronto ​ staff     4096 13 Mai 20:36 .. drwxrwxrwx ​ 1 pronto ​ staff     4096 13 Mai 20:36 ..
--rwxrwxrwx ​ 1 pronto ​ staff     4096 13 Mai 20:36 <fc #800000>​._MacFile.dmg</​fc>​ +-rwxrwxrwx ​ 1 pronto ​ staff     4096 13 Mai 20:36 <fc #0000FF>​._MacFile.dmg</​fc>​ 
--rwxrwxrwx<​fc #800000>​@</​fc>​ 1 pronto ​ staff  1961028 25 Apr 18:55 MacFile.dmg +-rwxrwxrwx<​fc #0000FF>​@</​fc>​ 1 pronto ​ staff  1961028 25 Apr 18:55 MacFile.dmg 
- <​fc #800000>​com.apple.diskimages.fsck</​fc>​  ​    20  + <​fc #0000FF>​com.apple.diskimages.fsck</​fc>​  ​    20  
- <​fc #800000>​com.apple.diskimages.recentcksum</​fc>​  ​    80 + <​fc #0000FF>​com.apple.diskimages.recentcksum</​fc>​  ​    80 
-</xterm2>+</xterm>
  
 Löscht man nun die AppleDouble Datei, kann auch Mac OS keine weiteren Metadaten mehr erkennen. Selbes geschieht wenn durch unachtsames Verschieben der Data Fork diese von der AppleDouble Datei getrennt wird: Löscht man nun die AppleDouble Datei, kann auch Mac OS keine weiteren Metadaten mehr erkennen. Selbes geschieht wenn durch unachtsames Verschieben der Data Fork diese von der AppleDouble Datei getrennt wird:
  
-<xterm2>$ <fc #​008000>​rm ._MacFile.dmg</​fc> ​(cr) + <xterm>$ <fc #​008000>​rm ._MacFile.dmg</​fc> ​  
-$ <fc #​008000>​ls -la@</​fc> ​(cr)+$ <fc #​008000>​ls -la@</​fc> ​ 
 total 3848 total 3848
 drwxrwxrwx ​ 1 pronto ​ staff     4096 13 Mai 21:17 . drwxrwxrwx ​ 1 pronto ​ staff     4096 13 Mai 21:17 .
 drwxrwxrwx ​ 1 pronto ​ staff     4096 13 Mai 21:11 .. drwxrwxrwx ​ 1 pronto ​ staff     4096 13 Mai 21:11 ..
 -rwxrwxrwx ​ 1 pronto ​ staff  1961028 25 Apr 18:55 MacFile.dmg -rwxrwxrwx ​ 1 pronto ​ staff  1961028 25 Apr 18:55 MacFile.dmg
-</xterm2+</xterm
  
 Diese AppleDouble Dateien haben noch einen weiteren gravierenden Nachteil: Sie nisten sich auch auf Dateisystemen ein, wo man sie so gar nicht haben möchte. Wird zB auf einem Mac System eine CD oder DVD gebrannt, haben wir es bei dem Ziel Dateisystem (ISO 9660((http://​de.wikipedia.org/​wiki/​ISO_9660))) wieder mit so einem Dateisystem zu tun, welches mit Apples Metadaten nichts anfangen kann. Anders als bei Windows Alternative Data Streams, welche beim Brennen der CD einfach weggelassen werden, kommt bei Apple wieder der ganze AppleDouble Sumsebrums auf die CD. Nicht schön wenn zB im Printbereich,​ wo Apple immer noch der Platzhirsch ist, ein CD-Master für eine CD Heftbeilage gebrannt wird. Fieserweise bemerkt das der Benutzer an seiner Mac OSX Workstation gar nicht, weil mit einem Punkt beginnende Dateien vom Finder standardmäßig gar nicht angezeigt werden. Somit wird der Segen zum Fluch ... Was zumindestens bei uns schon mal zu einer Kundenreklamation geführt hat und wir fast 1.500 Heftbeilagen CDs wegschmeissen konnten. Der Kunde zeigte sich gnädig und wir uns geläutert. Diese AppleDouble Dateien haben noch einen weiteren gravierenden Nachteil: Sie nisten sich auch auf Dateisystemen ein, wo man sie so gar nicht haben möchte. Wird zB auf einem Mac System eine CD oder DVD gebrannt, haben wir es bei dem Ziel Dateisystem (ISO 9660((http://​de.wikipedia.org/​wiki/​ISO_9660))) wieder mit so einem Dateisystem zu tun, welches mit Apples Metadaten nichts anfangen kann. Anders als bei Windows Alternative Data Streams, welche beim Brennen der CD einfach weggelassen werden, kommt bei Apple wieder der ganze AppleDouble Sumsebrums auf die CD. Nicht schön wenn zB im Printbereich,​ wo Apple immer noch der Platzhirsch ist, ein CD-Master für eine CD Heftbeilage gebrannt wird. Fieserweise bemerkt das der Benutzer an seiner Mac OSX Workstation gar nicht, weil mit einem Punkt beginnende Dateien vom Finder standardmäßig gar nicht angezeigt werden. Somit wird der Segen zum Fluch ... Was zumindestens bei uns schon mal zu einer Kundenreklamation geführt hat und wir fast 1.500 Heftbeilagen CDs wegschmeissen konnten. Der Kunde zeigte sich gnädig und wir uns geläutert.
Zeile 78: Zeile 78:
  
 Erweiterte Attribute (EAs) erweitern die Basis Attribute zu Dateien oder Verzeichnissen im Dateisystem (HFS+). Sie werden in einem name:value Paar gespeichert,​ welche mit dem Data Fork Objekt im Dateisystem verknüpft sind. Der Name (Identifier -> name) eines erweiterten Attributs ist ein simpler UTF-8 String, welcher idR den Urheber des Attributs identifiziert (com.apple) und ggf noch die Funktion beschreibt (quarantine). Im Prinzip aber ist der Name frei wählbar. Der Wert (value) eines Attributs ist ein Pointer zu einem Datenpuffer im Dateisystem,​ welcher Text oder Binärdaten mit dem Attribut verknüpft. Erweiterte Attribute (EAs) erweitern die Basis Attribute zu Dateien oder Verzeichnissen im Dateisystem (HFS+). Sie werden in einem name:value Paar gespeichert,​ welche mit dem Data Fork Objekt im Dateisystem verknüpft sind. Der Name (Identifier -> name) eines erweiterten Attributs ist ein simpler UTF-8 String, welcher idR den Urheber des Attributs identifiziert (com.apple) und ggf noch die Funktion beschreibt (quarantine). Im Prinzip aber ist der Name frei wählbar. Der Wert (value) eines Attributs ist ein Pointer zu einem Datenpuffer im Dateisystem,​ welcher Text oder Binärdaten mit dem Attribut verknüpft.
-\\ \\ +
 Mac OS bringt einige Tools mit, mit denen die erweiterten Attribute angezeigt, bearbeitet oder gelöscht werden können. <fc #​008000>​xattr</​fc>​ dürfte das mächtigste sein aber auch einige Optionen zum <fc #​008000>​ls-Befehl</​fc>​ können gute Dienste leisten. Ein erstes Indiz für das Vorhandensein eines EA ist ein <fc #​008000>​@-Zeichen Mac OS bringt einige Tools mit, mit denen die erweiterten Attribute angezeigt, bearbeitet oder gelöscht werden können. <fc #​008000>​xattr</​fc>​ dürfte das mächtigste sein aber auch einige Optionen zum <fc #​008000>​ls-Befehl</​fc>​ können gute Dienste leisten. Ein erstes Indiz für das Vorhandensein eines EA ist ein <fc #​008000>​@-Zeichen
 </fc> bei der Ausgabe von <fc #​008000>​ls -l</​fc>:​ </fc> bei der Ausgabe von <fc #​008000>​ls -l</​fc>:​
  
-<xterm2>$ <fc #​008000>​ls -l</​fc> ​(cr)+ <xterm>$ <fc #​008000>​ls -l</​fc> ​ 
 total 17488 total 17488
--rw-r--r--<​fc #800000>​@</​fc>​ 1 pronto ​ staff   ​209428 14 Mai 14:19 Bilder +-rw-r--r--<​fc #0000FF>​@</​fc>​ 1 pronto ​ staff   ​209428 14 Mai 14:19 Bilder 
--rw-r--r--<​fc #800000>​@</​fc>​ 1 pronto ​ staff   ​128064 14 Mai 14:21 ECI_Offset_2009_EN.pdf +-rw-r--r--<​fc #0000FF>​@</​fc>​ 1 pronto ​ staff   ​128064 14 Mai 14:21 ECI_Offset_2009_EN.pdf 
--rw-r--r--<​fc #800000>​@</​fc>​ 1 pronto ​ staff   ​140408 14 Mai 14:21 Filme +-rw-r--r--<​fc #0000FF>​@</​fc>​ 1 pronto ​ staff   ​140408 14 Mai 14:21 Filme 
--rw-r--r--<​fc #800000>​@</​fc>​ 1 pronto ​ staff   ​285397 14 Mai 14:21 Logo_Klar.psd +-rw-r--r--<​fc #0000FF>​@</​fc>​ 1 pronto ​ staff   ​285397 14 Mai 14:21 Logo_Klar.psd 
--rwxr-xr-x<​fc #800000>​@</​fc>​ 1 pronto ​ staff   ​261469 14 Mai 14:21 SC_paper_info.pdf +-rwxr-xr-x<​fc #0000FF>​@</​fc>​ 1 pronto ​ staff   ​261469 14 Mai 14:21 SC_paper_info.pdf 
--rw-r--r--<​fc #800000>​@</​fc>​ 1 pronto ​ staff  1131770 14 Mai 14:21 Trapping.ai +-rw-r--r--<​fc #0000FF>​@</​fc>​ 1 pronto ​ staff  1131770 14 Mai 14:21 Trapping.ai 
--rw-r--r--<​fc #800000>​@</​fc>​ 1 pronto ​ staff  5919242 14 Mai 14:20 Ukelele_1.8.4.dmg +-rw-r--r--<​fc #0000FF>​@</​fc>​ 1 pronto ​ staff  5919242 14 Mai 14:20 Ukelele_1.8.4.dmg 
-</xterm2>+</xterm>
  
 Nun gibt es zwei Möglichkeiten sich die erweiterten Attribute anzeigen zu lassen. Sowohl das <fc #​008000>​ls-Kommando</​fc>​ wie auch das <fc #​008000>​xattr-Kommando</​fc>​ bieten eine Möglichkeit. Um sich einen Überblick zu verschaffen eignet sich das <fc #​008000>​ls-Kommando</​fc>​ mit den Optionen <fc #​008000>​-l@</​fc>​ erstmal besser: Nun gibt es zwei Möglichkeiten sich die erweiterten Attribute anzeigen zu lassen. Sowohl das <fc #​008000>​ls-Kommando</​fc>​ wie auch das <fc #​008000>​xattr-Kommando</​fc>​ bieten eine Möglichkeit. Um sich einen Überblick zu verschaffen eignet sich das <fc #​008000>​ls-Kommando</​fc>​ mit den Optionen <fc #​008000>​-l@</​fc>​ erstmal besser:
  
-<xterm2>$ <fc #​008000>​ls -l@</​fc> ​(cr)+ <xterm>$ <fc #​008000>​ls -l@</​fc> ​ 
 total 16576 total 16576
 -rw-r--r--@ 1 pronto ​ staff   ​209428 14 Mai 14:19 Bilder -rw-r--r--@ 1 pronto ​ staff   ​209428 14 Mai 14:19 Bilder
- <​fc #800000>​com.apple.FinderInfo  ​    ​32 ​+ <​fc #0000FF>​com.apple.FinderInfo  ​    ​32 ​
  ​com.apple.ResourceFork 209091</​fc> ​  ​com.apple.ResourceFork 209091</​fc> ​
 -rw-r--r--@ 1 pronto ​ staff   ​128064 14 Mai 14:21 ECI_Offset_2009_EN.pdf -rw-r--r--@ 1 pronto ​ staff   ​128064 14 Mai 14:21 ECI_Offset_2009_EN.pdf
- <​fc #800000>​com.apple.FinderInfo  ​    ​32 ​+ <​fc #0000FF>​com.apple.FinderInfo  ​    ​32 ​
  ​com.apple.quarantine  ​    ​42</​fc> ​  ​com.apple.quarantine  ​    ​42</​fc> ​
 -rw-r--r--@ 1 pronto ​ staff   ​140408 14 Mai 14:21 Filme -rw-r--r--@ 1 pronto ​ staff   ​140408 14 Mai 14:21 Filme
- <​fc #800000>​com.apple.FinderInfo  ​    ​32 ​+ <​fc #0000FF>​com.apple.FinderInfo  ​    ​32 ​
  ​com.apple.ResourceFork 140072</​fc> ​  ​com.apple.ResourceFork 140072</​fc> ​
 -rw-r--r--@ 1 pronto ​ staff   ​285397 14 Mai 14:21 Logo_Klar.psd -rw-r--r--@ 1 pronto ​ staff   ​285397 14 Mai 14:21 Logo_Klar.psd
- <​fc #800000>​com.apple.FinderInfo  ​    ​32 ​+ <​fc #0000FF>​com.apple.FinderInfo  ​    ​32 ​
  ​com.apple.ResourceFork  ​ 29090</​fc> ​  ​com.apple.ResourceFork  ​ 29090</​fc> ​
 -rwxr-xr-x@ 1 pronto ​ staff   ​261469 14 Mai 14:21 SC_paper_info.pdf -rwxr-xr-x@ 1 pronto ​ staff   ​261469 14 Mai 14:21 SC_paper_info.pdf
- <​fc #800000>​com.apple.FinderInfo  ​    ​32 ​+ <​fc #0000FF>​com.apple.FinderInfo  ​    ​32 ​
  ​com.apple.quarantine  ​    ​42</​fc> ​  ​com.apple.quarantine  ​    ​42</​fc> ​
 -rw-r--r--@ 1 pronto ​ staff  1131770 14 Mai 14:21 Trapping.ai -rw-r--r--@ 1 pronto ​ staff  1131770 14 Mai 14:21 Trapping.ai
- <​fc #800000>​com.apple.FinderInfo  ​    ​32 ​+ <​fc #0000FF>​com.apple.FinderInfo  ​    ​32 ​
  ​com.apple.ResourceFork  ​   368</​fc> ​  ​com.apple.ResourceFork  ​   368</​fc> ​
 -rw-r--r--@ 1 pronto ​ staff  5919242 14 Mai 14:20 Ukelele_1.8.4.dmg -rw-r--r--@ 1 pronto ​ staff  5919242 14 Mai 14:20 Ukelele_1.8.4.dmg
- <​fc #800000>​com.apple.diskimages.recentcksum  ​    ​79</​fc>​ + <​fc #0000FF>​com.apple.diskimages.recentcksum  ​    ​79</​fc>​ 
-</xterm2>+</xterm>
  
 ls -l@ //​Dateiname//​ zeigt nun Details zu den EAs einer Datei an: ls -l@ //​Dateiname//​ zeigt nun Details zu den EAs einer Datei an:
  
-<xterm2>$ <fc #​008000>​ls -l@ rezilla1.png</​fc> ​(cr)+ <xterm>$ <fc #​008000>​ls -l@ rezilla1.png</​fc> ​ 
 -rw-r--r--@ 1 pronto ​ staff  39890 14 Mai 17:02 rezilla1.png -rw-r--r--@ 1 pronto ​ staff  39890 14 Mai 17:02 rezilla1.png
- <​fc #800000>​com.apple.metadata:​kMDItemIsScreenCapture  ​  ​42 ​+ <​fc #0000FF>​com.apple.metadata:​kMDItemIsScreenCapture  ​  ​42 ​
  ​com.apple.metadata:​kMDItemScreenCaptureType  ​  ​48</​fc>​  ​com.apple.metadata:​kMDItemScreenCaptureType  ​  ​48</​fc>​
-</xterm2>+</xterm>
  
 Hier wird die Namens Konvention name:value verdeutlicht. Das EA <fc #​008000>​com.apple.metadata</​fc>​ hat hier den Wert <fc #​008000>​kMDItemIsScreenCapture</​fc>​ bzw. <fc #​008000>​kMDItemScreenCaptureType</​fc>​. Der Inhalt des EAs wird vom Betriebsystem oder einer Anwendung ausgewertet,​ dadurch werden zT Anzeigeoptionen eingestellt,​ Abfragen ausgelöst, Checksummen ausgewertet usw. Im Prinzip kann eine Datei, bzw. in diesem Kontext das Data Fork, auch ohne diese EAs ganz gut leben, dabei ist es umso mehr verwunderlich,​ dass die Anzahl der EAs nun fast schon täglich anwächst. Hier wird die Namens Konvention name:value verdeutlicht. Das EA <fc #​008000>​com.apple.metadata</​fc>​ hat hier den Wert <fc #​008000>​kMDItemIsScreenCapture</​fc>​ bzw. <fc #​008000>​kMDItemScreenCaptureType</​fc>​. Der Inhalt des EAs wird vom Betriebsystem oder einer Anwendung ausgewertet,​ dadurch werden zT Anzeigeoptionen eingestellt,​ Abfragen ausgelöst, Checksummen ausgewertet usw. Im Prinzip kann eine Datei, bzw. in diesem Kontext das Data Fork, auch ohne diese EAs ganz gut leben, dabei ist es umso mehr verwunderlich,​ dass die Anzahl der EAs nun fast schon täglich anwächst.
mac/xattr.1301577670.txt.gz (25603 views) · Zuletzt geändert: 2011/04/16 21:14 (Externe Bearbeitung)
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0