1 votos

errores de rsync, pero solo cuando se ejecuta en launchd

Tengo un script que se ejecuta rsync sobre mi ~/Library/Preferences/ carpeta:

#!/bin/zsh -f

SOURCE="$HOME/Library/Preferences"

TARGET="$HOME/Dropbox/Backups/Preferences/$HOST"

LOG="$HOME/logs/$HOST/${NAME}.log"

[[ ! -d "$LOG:h" ]] && mkdir -p "$LOG:h"

[[ ! -e "$LOG" ]] && touch "$LOG"

/usr/bin/rsync \
    --8-bit-output \
    --human-readable \
    --itemize-changes \
    --progress \
    --safe-links \
    --links \
    --times \
    --delete \
    --recursive \
    --checksum \
    --verbose \
    --exclude='.DS_Store' \
    --log-file="$LOG" \
    "${SOURCE}/" \
    "${TARGET}/"

exit 0
#EOF

Este script funciona sin errores de iTerm.

Sin embargo, cuando trato de ejecutarlo a través de la launchd I siempre obtienen los errores de unos 3 archivos:

  1. com.apple.alojados.notbackedup.plist
  2. com.apple.alojados.plist
  3. com.apple.correo compartido.plist

He aquí un ejemplo:


building file list ...
511 files to consider
*deleting com.contextsformac.Contexts.plist.JkbicFf
.d..t.... ./
rsync: send_files failed to open "/Users/luomat/Library/Preferences/com.apple.homed.notbackedup.plist": Operation not permitted (1)
rsync: send_files failed to open "/Users/luomat/Library/Preferences/com.apple.homed.plist": Operation not permitted (1)
rsync: send_files failed to open "/Users/luomat/Library/Preferences/com.apple.mail-shared.plist": Operation not permitted (1)
>fc.t.... com.contextsformac.Contexts.plist
       3.10K 100%    0.00kB/s    0:00:00 (xfer#4, to-check=249/511)
.f..t.... com.setapp.DesktopClient.plist
>fcst.... test-ignore.txt
         203 100%  198.24kB/s    0:00:00 (xfer#5, to-check=75/511)

sent 31.63K bytes  received 142 bytes  63.55K bytes/sec
total size is 3.42M  speedup is 107.49
rsync error: some files could not be transferred (code 23) at /BuildRoot/Library/Caches/com.apple.xbs/Sources/rsync/rsync-52.200.1/rsync/main.c(996) [sender=2.6.9]

Supongo que esto tiene algo que ver con Mojave de seguridad porque tengo acceso a los archivos:


$ ls -l com.apple.homed.* com.apple.mail-shared.plist
-rw------- 1 luomat staff 184 Sep 12 00:43 com.apple.homed.notbackedup.plist
-rw------- 1 luomat staff 567 Sep 13 09:53 com.apple.homed.plist
-rw------- 1 luomat staff 225 Aug 18 23:44 com.apple.mail-shared.plist

Lo que he intentado

  1. Me han dado /usr/bin/rsync "Disco Lleno de Acceso" en Preferencias del Sistema
  2. He intentado rsync de homebrew /usr/local/bin/rsync y dado que "Disco Lleno de Acceso"
  3. Me han dado /sbin/launchd "Disco Lleno de Acceso"

Ahora, ¿qué?

Dado que no da errores cuando no en launchd ¿qué debo intentarlo ahora?

1voto

Kerry Puntos 100

Su funcionamiento en contextos diferentes al uso launchd y iterm2. Con iterm2 su perfil se ejecute, pero su perfil no se ejecuta cuando se utiliza launchd.

Algunos programadores invocar allí perfil de su launchd secuencia de comandos. Todo lo hago por lo que funciona sin la necesidad de ejecutar mi perfil.

Sugiero que usted cd a cualquier directorio que terminó en iterm2.

Escribí un poco de función para mostrar todos mis ajustes del terminal. Ejecutar esto en iterm2 y launchd al enviar la salida a un archivo y comparar.

settings () 
{ 
    ( echo "---------- env ----------";
    env;
    echo "--------- set ----------";
    set;
    echo "--------- export ----------";
    export;
    echo "--------- export -f ----------";
    export -f;
    echo "--------- alias ----------";
    alias;
    echo "--------- set -o ----------";
    set -o;
    echo "--------- shopt ----------";
    shopt;
    echo "--------- enable -a ----------";
    enable -a ) | less
}

para terminal puede copiar y pegar la configuración de terminal.

settings >>/Users/mac/xset
cat xset

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X