2

Я пытаюсь синхронизировать содержимое каталога my_dir/ из / home в / backup. Этот каталог содержит файл, имя которого содержит двойные кавычки , например, "to". Вот моя команда rsync:

rsync -Cazh /home/my_dir/ /backup/my_dir/

И я получаю следующее сообщение:

rsync: mkstemp "/backup/my_dir/.to"to.d93PZr" не удалось: неверный аргумент (22)

Для информации rsync хорошо работает, когда синхронизированные имена файлов содержат одинарные кавычки, круглые скобки и пробел. Таким образом, почему это глючит с двойной кавычкой? Спасибо за любую помощь.

3 ответа3

3

На самом деле, случилось так, что каталог /backup /my_dir / находился на жестком диске USB, отформатированном в FAT. Rsync developpers сказал мне, что именно эта файловая система не допускает двойные кавычки в именах файлов. После переформатирования моего жесткого диска USB в ext3 rsync работал гладко, даже если имена файлов содержали двойные кавычки.

1

Похоже, это ошибка в rsync, где вы ничего не можете с этим поделать. Не стесняйтесь сообщить об этом разработчикам rsync.

Одним из решений будет переименование всех файлов с двойными кавычками в них. В любом случае, они не должны быть там.

-1

Вы пытались использовать восьмеричное представление двойных кавычек (то есть \042). Я не уверен, поддерживает ли это rsync, но стоит попробовать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .