Impossibile caricare il daemon rsync in Sierra. Il registro mostra: "asserzione non riuscita: 16G1408: libxpc.dylib"

2

Sto cercando di avviare rsync --daemon su Sierra (10.12.6), usando launchctl . Funzionava bene (l'ultima volta in Mavericks, penso). Ma ora su Sierra, il daemon non si avvia e grep rsync /var/log/system.log mostra solo questo:

... rsync[12201]: assertion failed: 16G1408: libxpc.dylib + 20887 [BF896DF0-D8E9-31A8-A4B3-01120BFEEE52]: 0xf

Anche cercare su questo messaggio criptico non mi ha dato un indizio.

So di SIP e l'ho disabilitato:

$ csrutil status
System Integrity Protection status: disabled.

Il modo in cui sto provando a configurare il mio damon è seguendo questa guida , che consiste essenzialmente in:

  • creazione di /etc/rsyncd.conf e rsyncd.secrets
  • creazione di /Library/LaunchDaemons/org.samba.rsync.plist
  • caricamento del file plist con launchctl load -w /Library/LaunchDaemons/org.samba.rsync.plist
  • e inizialo con launchctl start org.samba.rsync

Il file plist viene caricato, ma il daemon non è in esecuzione:

$ launchctl list | grep rsync
-   0   org.samba.rsync

Che cosa potrebbe significare questo messaggio assertion failed: 16G1408: libxpc.dylib ?

Qualcosa è cambiato in Sierra con come avviare i daemon?

    
posta mivk 30.07.2018 - 15:30
fonte

1 risposta

2

Apparentemente, Sierra e probabilmente anche versioni precedenti, hanno bisogno che il daemon rsync sia avviato con l'opzione --no-detach , che non era necessaria prima.

Il messaggio di errore assertion failed: 16G1408: libxpc.dylib che è apparso nei log quando non ha funzionato rimane un mistero. Ma questo file .plist ora funziona per risolvere il problema originale:

<?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>Disabled</key>
    <false/>
    <key>Label</key>
    <string>org.samba.rsync</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/bin/rsync</string>
        <string>--daemon</string>
        <string>--no-detach</string> <!-- This is needed now -->
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>KeepAlive</key>
    <dict>
        <key>SuccessfulExit</key>
        <false/>
    </dict>
</dict>
</plist>
    
risposta data 08.08.2018 - 11:54
fonte

Leggi altre domande sui tag