Я пробую в rsync файлы от одного сервера до другого, но получаю эту ошибку
rsync: не удалось установить времена на "/dept/intranet/dept/atest/".: Операция, не разрешенная (1)
Кто-то может помочь мне почему так?
Я предполагаю, что это - некоторая проблема полномочий.
Это - моя команда:
RSYNC=/usr/bin/rsync
SSH=/usr/bin/ssh
REMOTE_HOST=test.desktop
${RSYNC} -crlt -e ${SSH} ${LOCAL_DIR} ${REMOTE_HOST}:${REMOTE_DIR}
LOCAL_DIR = workplace1/f1/
permissions drwxr-xr-x 11 root root 4096 Mar 19 2009 f1
REMOTE_DIR=/dept/intranet/dept/atest/f1/
permissions :drwxr-xr-x 14 dbld a1 4096 Mar 19 2009 f1
Именно так мы находимся на той же странице:
-r recursive
-l preserve links
-c sync based on file checksum
-t preserve modification times
Затем две вещи:
Если папкой назначения является NFS, монтируются, или некоторая файловая система, которая не обрабатывает хорошо ультрасовременные времена, хорошо это повреждается.
Попытайтесь добавить -O
(для --omit-dir-times
) параметр к Вашей команде.
Время изменения будет сохранено, но опущено для каталогов:
${RSYNC} -crlOt -e ${SSH} ${LOCAL_DIR} ${REMOTE_HOST}:${REMOTE_DIR}
Это - мое лучшее предположение, так как синхронизация файлов, кажется, работает, и Ваша ошибка происходит на ультрасовременной синхронизации времени. Так или иначе необходимо ли действительно сохранить время изменения? -c
файлы пропуска опции на основе контрольной суммы (так ультрасовременные времена не имеет значения).
ssh -vv test.desktop "touch /dept/intranet/dept/atest/f1/test"
)ssh -vv thegooduser@test.desktop "touch /dept/intranet/dept/atest/f1/test"
)Выполните свою команду с -v
опция, для подробного.