Я використовую це виклик rsync для резервного копіювання домашнього каталогу:
rsync -aARrx --info= --force --delete --info=progress2 -F "$USER_HOME" "$BACKUP_MNTPOINT"
Сторінка людини rsync говорить, що -a означає -g та -o (серед інших комутаторів), які повинні зберігати право власності. Однак я помітив, що якщо каталог не існує під $BACKUP_MNTPOINT/$USER_HOME
, він створюється з root: root володіння замість правильного. (Це відбувається лише з каталогами прямо під $BACKUP_MNTPOINT/$USER_HOME
). Чому так?
$BACKUP_MNTPOINT
- місцевий привід. $BACKUP_MNTPOINT/$USER_HOME
має право власності та дозволи. Ні косою, $USER_HOME
ні $BACKUP_MNTPOINT
кінкою.
І вихідна, і цільова файлові системи є XFS, і запущена програма mkdir $BACKUP_MNTPOINT/$USER_HOME
створює каталог із очікуваним правом власності.
/home
і резервних дисків. Поки що я думаю, що це сталося лише для батьківських каталогів. Ні косою, $BACKUP_MNTPOINT
ні $USER_HOME
кінкою. EDIT: Я можу зараз підтвердити, що це відбувається лише в каталогах прямо внизу$BACKUP_MNTPOINT/$USER_HOME
mkdir $BACKUP_MNTPOINT/$USER_HOME/foo
створюється каталог із правом власності користувача.
strace
(як зазначено у псевдовідповіді).
$BACKUP_MNTPOINT
та за допомогою яких опцій вона монтується? Чи трапляється це лише для батьківського$BACKUP_MNTPOINT/$USER_HOME
каталогу ( ) або для всіх створених каталогів? Зробіть$BACKUP_MNTPOINT
і$USER_HOME
закінчуєте/
?