Почему SyncThing иногда глючит
SyncThing на всех устройствах версии 1.3.3.- Ошибка "Слишком много открытых файлов". Решается (окончательно) снятием в веб-интерфейсе флажка "Следить за изменениями", отвечающего за сканирование синхронизируемого каталога в реальном времени, в закладке "Дополнительно" свойств папки. Сканирование при отключённом флажке идёт через задаваемый там же интервал, "Интервал сканирования". Ошибка (у меня) проявлялась только на сервере FreeBSD. Виновато, очевидно, взаимодействие со стеком TCP IP.
- Состояние удалённого устройства "Нет соединения". Возникает при работе через Internet, через NAT. Судя по всему, результат предыдущей ошибки, если сервер не сыплет сообщениями "Слишком много открытых файлов", соединение обычно устанавливается.
- Остановка синхронизации возможна из-за отсутствия файла .directory в корне синхронизируемого каталога. Файл можно пересоздать, например, скопировать с "исправного" устройства. Возможен вариант, когда такие файлы создаются по неизвестной причине в подкаталогах синхронизируемого каталога, тогда тоже затык, но не полный.
- Копии существующих файлов, с синхронизацией которых (надо полагать) возникали проблемы. Имена этих файлов включают дополнительно строку *syncthing*. Тупо удаляем.
- Каталоги, синхронизация которых по неизвестным причинам нарушена. В них создаётся файл или каталог с именем вида .ignored - тоже тупо удаляем.
- Интересная штука - дублирование файлов с именами, включающими символы в разных регистрах, например, помимо исходного "СИБТмНХ-ММС(Стена).dwg" на сервере FreeBSD может появиться "СИБТМНХ-ММС(СТЕНА).dwg" или "СИБТМНХ-ММС(СТЕНА).DWG". Объясняется, вероятно, тем, что работал с этими файлами из-под разных систем. Для винды регистр значения не имеет, а для FreeBSD и Linux как раз наоборот. Разбираться с тем, актуальный ли файл, можно либо по дате изменения, либо тупо открывая и проверяя содержимое.
Причины, за исключением приведённых, мне неизвестны, известны ещё следующие, и способы их решения:
- После копирования данных с устройства, на котором возникали ошибки синхронизации из перечисленных выше, на флешку и восстановления с флешки на другие устройства переползают и файлы, отвечающие за эти ошибки, и далее распространяются как раз в процессе синхронизации, то есть после этого имеем ошибки на всех устройствах, включённых в "зону" SyncThing. Приходится тормозить синхронизацию, и чистить все устройства руками.
- Чтобы не мучиться с поиском и удалением файлов и каталогов, можно тупо перенести (через флешку, опять же) све данные с заведомо исправного устройства.
Пока всё.
Комментариев нет:
Отправить комментарий