Editando com.apple.atrun.plist en El Capitan

Estoy ejecutando El Capitan en varias computadoras y me gustaría poder usarlo para ejecutar trabajos programados en segundo plano. Habilitar en requiere editar /System/Library/LaunchDaemon/com.apple.atrun.plist. De cualquier manera que haya intentado hacer esto, me encontré con un problema de permisos: usar sudo, iniciar sesión como root o intentar cambiar los permisos desde el panel de información del archivo, todo da como resultado un error de permisos de algún tipo.

Yo he tratado:

  1. sudo vi /System/Library/LaunchDaemon/com.apple.atrun.plisty no he podido guardar el archivo editado.
  2. Copiar a un archivo, editarlo y volver a copiar: no tengo permitido volver a copiar usando sudo.
  3. Usando Xcode para editar el campo a través de una GUI, no se puede guardar.
  4. utilizando el Editor de lista de propiedades, no se puede guardar, ni siquiera haber iniciado sesión como root.
  5. No se permite cambiar de propietario, grupo, incluso usando sudo o iniciando sesión en una raíz.
  6. Cambiar los permisos de todos los subdirectorios en el árbol de arriba (Sistema, Sistema/Biblioteca, etc.) usó sudo, también probé permisos de disco modificados.
  7. Ejecute la utilidad de disco.

Debe haber alguna manera de hacer esto, por favor avise.

Respuestas (2)

El archivo com.apple.atrun.plist está protegido por la Protección de integridad del sistema.

Así que inicie en la partición Recovery HD (mantenga presionado Command+ Rmientras reinicia), deshabilite SIP y modifique el elemento:

  1. En la barra de menú, abra Utilidades->Terminal
  2. Ingresarcsrutil disable
  3. Reinicie a su volumen principal y edite el archivo
  4. Reinicie en la partición de recuperación nuevamente
  5. Habilitar SIP nuevamentecsrutil enable
  6. Reinicie a su volumen principal
La respuesta dada por @klanomath es correcta, pero se requieren más acciones en Mojave (10.14). SIP ha dado un paso más hacia Transparency Consent and Control (TCC). En resumen, debe conceder explícitamente acceso total al disco a atrun: 1. Vaya a Preferencias del sistema->Seguridad y privacidad. 2. Seleccione Acceso total al disco y haga clic en el icono del candado para realizar cambios. 3. Haga clic en el +icono debajo del cuadro a la derecha y agregue atrun. El camino a atrunes /usr/libexec/atrun. Seleccione su disco raíz (probablemente algo así como 'Macintosh HD') y presione Command++ . Shift.

Usando 10.11.6 (El Capitan) pude ejecutarlo atrunsiguiendo las instrucciones que se encuentran en el artículo " Uso de at para la programación de comandos en Mac OS X ".

Para habilitar atrun, ejecutar,

sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.atrun.plist

Para deshabilitar atrun, ejecutar,

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.atrun.plist

El artículo tiene información útil adicional sobre atruny en los comandos.