Uso questa invocazione rsync per eseguire il backup della mia home directory:
rsync -aARrx --info= --force --delete --info=progress2 -F "$USER_HOME" "$BACKUP_MNTPOINT"
La pagina man rsync dice che -a implica -g e -o (tra le altre opzioni), che dovrebbe preservare la proprietà. Tuttavia ho notato che se una directory non esiste sotto $BACKUP_MNTPOINT/$USER_HOME, viene creata con root: proprietà root invece di quella corretta. (Questo succede solo con le directory proprio sotto $BACKUP_MNTPOINT/$USER_HOME). Perché?
$BACKUP_MNTPOINTè un'unità montata localmente. $BACKUP_MNTPOINT/$USER_HOMEha la proprietà e le autorizzazioni giuste. Né $USER_HOMEné $BACKUP_MNTPOINTterminare con una barra.
Sia il filesystem di origine che quello di destinazione sono XFS e in esecuzione mkdir $BACKUP_MNTPOINT/$USER_HOMEcrea una directory con la proprietà prevista.
/homel'unità di backup. Finora penso che sia successo solo per le directory principali. Né $BACKUP_MNTPOINTné $USER_HOMEterminare con una barra. EDIT: Posso confermare ora che succede solo alle directory qui sotto$BACKUP_MNTPOINT/$USER_HOME
$BACKUP_MNTPOINT/$USER_HOMEha i permessi giusti ma non ci sono sottodirectory? Si prega di modificare la tua domanda e aggiungere questi dettagli. Inoltre, chiarisci se mkdir $BACKUP_MNTPOINT/$USER_HOME/foocrea una directory di proprietà del tuo utente se lo fai manualmente.
mkdir $BACKUP_MNTPOINT/$USER_HOME/foocrea una directory con la proprietà dell'utente.
strace(come specificato in una pseudo risposta).
$BACKUP_MNTPOINTe con quali opzioni è montato? Questo succede solo per la$BACKUP_MNTPOINT/$USER_HOMEdirectory parent ( ) o per tutte le directory create? Fare$BACKUP_MNTPOINTe$USER_HOMEfinire con un/?