¿Por qué macOS establece xattr com.apple.quarantine, al save un script de shell en un dispositivo usb

Problema

macOS establece xattr com.apple.quarantine , cuando edito y guardo el file myscript.sh en un dispositivo usb

Estamos en la memory USB

  • Equivalente OSX para ~ / bin en Linux
  • Script de shell: mover carpetas + preservar estructura
  • cómo ejecutar un alias usando bash -c desde IDEA
  • Copiar un file en muchas carpetas, pero solo si ya existe
  • El pnetworkingeterminado .bash_profile
  • Volver a comstackr bash para evitar Shellshock causa más daño que bien
  • [stick128] pwd /Volumes/stick128 

    Los files de text xattributes antes de ser editados

     [stick128] ls -la@ myScript.sh -rwxrwxrwx@ 1 schmelzer staff 28 22 Okt 02:16 myScript.sh com.apple.metadata:kMDLabel_vmtpkn3xxtzmlwr5m34qap3z4a 185 

    Los files de text xattributes después de ser editados y guardados

     [stick128] ls -la@ myScript.sh -rwxrwxrwx@ 1 schmelzer staff 30 22 Okt 02:20 myScript.sh com.apple.quarantine 24 com.apple.metadata:kMDLabel_vmtpkn3xxtzmlwr5m34qap3z4a 201 

    Porque

    ??

    Solución temporal

    Retire el xattr manualmente

     xattr -d com.apple.quarantine myscript.sh 

    Gracias a –bash: Applications / mvim: / bin / sh: bad intérprete: operación no permitida

    Pero, la próxima vez, edito el file, ¿quién volvió a agregar xattr get?

    • por el texteditor?
    • por macOS (como parte del sistema SIP?)

    Mi entorno

    • macOS Sierra, Versión 10.12.6
    • Texteditor: CotEditor, Version Version 3.2.2 (203)
    • Memoria USB: SanDisk 128GB Connect Wireless Stick, conectado al puerto USB

    Mi investigación 1

    P: ¿El problema solo está en la memory USB? ¿O también está en mi disco duro?

    R: El problema no está en el disco duro. Solo en el dispositivo USB

    Detalles para la investigación 1 Estamos en el disco duro de Mac, donde está instalado macos

     [Desktop] pwd /Users/schmelzer/Desktop 

    Los files de text xattributes antes de ser editados

     [Desktop] ls -la@ myScript.sh -rwxrwxrwx@ 1 schmelzer staff 30 22 Okt 02:20 myScript.sh com.apple.metadata:kMDLabel_vmtpkn3xxtzmlwr5m34qap3z4a 201 

    Los files de text xattributes después de ser editados y guardados

     [Desktop] ls -la@ myScript.sh -rwxrwxrwx@ 1 schmelzer staff 28 22 Okt 02:25 myScript.sh com.apple.metadata:kMDLabel_vmtpkn3xxtzmlwr5m34qap3z4a 201 

    Resultado de la testing

    La cuarentena xattr no se ha agregado al file. Por lo tanto, el problema no existe en el disco duro. Solo en el dispositivo USB.

    Mi investigación 2

    P: ¿Hay un file con el indicador de cuarentena establecido en el dispositivo USB? mount está agregando un indicador de cuarentena, lo que provoca: / bin / bash: bad intérprete: operación no permitida, pero no los sospechosos habituales

    A: Sí, hubo muchos.

    Detalles para la investigación 2

    Lista de attributes de todos los files en el stick

     xattr -r /Volumes/stick128/ 

    Elimine el xattribute com.apple.quarantine de todos los files en el dispositivo USB

     sudo xattr -r -d com.apple.quarantine /Volumes/stick128 

    Intente provocar nuevamente el error editando y guardando el file myScript.sh

    Resultado

    • No hay error
    • La xattr com.apple.quarantine no se está agregando a myScript.sh

    Mi investigación 3

    P: Cuando uso un Texteditor diferente, ¿el problema sigue siendo el mismo? mount está agregando un indicador de cuarentena, lo que provoca: / bin / bash: bad intérprete: operación no permitida, pero no los sospechosos habituales

    A: no probado

    Mi investigación 4

    Solo para reference:

    • Esta publicación describe el "error del intérprete malo: operación no permitida", que sucede cuando intentas ejecutar un guión de shell con el indicador de cuarentena xattr establecido.
    • -bash: Applications / mvim: / bin / sh: bad intérprete: operación no permitida

  • Accidentalmente eliminado / etc / paths
  • ¿Por qué no funciona wget con cron?
  • La console informa "sandboxd deny mach-lookup" ... ¿Debo modificar system.sb?
  • Cómo restablecer $ PATH?
  • Por qué sh -c 'echo -n 1' es diferente de bash -c 'echo -n 1'
  • abrir una nueva pestaña en iTerm y ejecutar el command allí
  • One Solution collect form web for “¿Por qué macOS establece xattr com.apple.quarantine, al save un script de shell en un dispositivo usb”

    Esto lo resolvió para mí

    P: ¿Hay un file con el indicador de cuarentena establecido en el dispositivo USB? mount está agregando un indicador de cuarentena, lo que provoca: / bin / bash: bad intérprete: operación no permitida, pero no los sospechosos habituales

    A: Sí, hubo muchos.

    Cómo hacerlo

    Lista de attributes de todos los files en el stick

     xattr -r /Volumes/stick128/ 

    Elimine el xattribute com.apple.quarantine de todos los files en el dispositivo USB

     sudo xattr -r -d com.apple.quarantine /Volumes/stick128 

    Intente provocar nuevamente el error editando y guardando el file myScript.sh

    Resultado

    • No hay error
    • La xattr com.apple.quarantine no se está agregando a myScript.sh
    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).