1 votos

Errores de permisos al usar launchd para ejecutar rsync entre la unidad local y la unidad de red afp

Estoy intentando sincronizar un directorio local con mi NAS que está montado a través del protocolo afp como una unidad. Estoy utilizando rsync. Cuando ejecuto el comando desde la terminal, funciona bien. Sin embargo, cuando intento ejecutarlo desde launchd, siempre falla. Este es mi comando rsync:

rsync -av --delete /Users/self/Pictures/ /Volumes/nas/Images

Esta es la plist que contiene el comando anterior. Se encuentra en ~/Library/LaunchAgents con usuario, grupos y permisos iguales a los otros plists (de trabajo) en ese directorio.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>rsync_picture_to_nas</string>

    <key>ProgramArguments</key>
    <array>
        <string>rsync</string>
        <string>-av</string>
        <string>--delete</string>
        <string>/Users/self/Pictures/</string>
        <string>/Volumes/nas/Images</string>
    </array>

    <key>StandardErrorPath</key>
    <string>/Users/self/.log/rsync_picture_to_nas_err.log</string>

    <key>StandardOutPath</key>
    <string>/Users/self/.log/rsync_picture_to_nas_out.log</string>

    <key>WatchPaths</key>
    <array>
        <string>/Users/self/Pictures</string>
    </array>
</dict>
</plist>

Siempre tiene un fallo de permisos completo. Los errores de permisos exactos dependerán de si lo estoy ejecutando desde cero o lo he ejecutado previamente con éxito desde la línea de comandos. Basta con decir que es totalmente incapaz de hacer nada. No puede crear ni modificar ningún archivo en el NAS.

He aquí un ejemplo de error:

rsync: recv_generator: mkdir "/Volumes/nas/Images/Lightroom Library.lrlibrary" failed: Operation not permitted (1)
*** Skipping everything below this failed directory ***

1voto

Vaelin Puntos 11

He descubierto el problema. Es el nuevo sistema de permisos de Apple. Tuve que darle a rsync acceso total al disco bajo System Preferences > Security and Privacy > Full Disk Access > + . Si no puedes encontrar rsync, abre un terminal y haz which rsync . Es probable que en /usr/bin/rsync .

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