Занимаюсь отладкой и приведением в порядок Seafile после апгрейда до 12 версии. В логе seafile-monitor.log вижу ошибку:
ModuleNotFoundError: No module named 'zope.event'

Зопа какая-то. Это означает, что фоновая служба Seafevents не работает.
Seafevents — это фоновый сервис в Seafile, который обрабатывает различные события и обеспечивает дополнительную функциональность.
Seafevents — это комплексная система оркестрации фоновых задач и обработки событий для платформы синхронизации файлов Seafile. Она обрабатывает асинхронные операции, включая синхронизацию пользователей LDAP, извлечение метаданных файлов, индексацию для поиска, аудит-логирование, проверку на вирусы и обработку контента с помощью ИИ. Система работает как автономная служба, которая интегрируется с основными компонентами Seafile через подключения к базам данных и очереди сообщений.
https://manual.seafile.com/12.0/config/seafevents-conf/
Первая попытка переустановить модуль:
pip3 install --force-reinstall zope.eventpip3 list | grep zopezope.event 6.1zope.interface 8.1zope.interface 5.4.0
Попытка ничего не дала, модуль уже установлен. Странно, попробуем импортировать модуль.
cd /opt/seafile-server-12.0.14/pro/python
python3 -c "import zope.event; import zope.interface; print('SUCCESS - Seafile can import modules')"Результат:
Traceback (most recent call last): File "<string>", line 1, in <module>ModuleNotFoundError: No module named 'zope.event'
Ага, Seafile использует не обычный Python и действительно не может импортировать модуль.
pip3 show zope.eventName: zope.eventVersion: 6.1Summary: Very basic event publishing systemHome-page: https://github.com/zopefoundation/zope.eventAuthor: Zope Foundation and ContributorsAuthor-email: zope-dev@zope.devLicense: ZPL-2.1Location: /usr/local/lib/python3.10/dist-packagesRequires:Required-by: gevent
Пакет установлен в /usr/local/lib/python3.10/dist-packages.
ls -la /usr/local/lib/python3.10/dist-packages/zope/total 16drwxr-xr-x 4 root root 4096 ноя 12 00:42 .drwxr-xr-x 93 root root 4096 ноя 12 00:42 ..drwxr-xr-x 3 root root 4096 ноя 12 00:42 eventdrwxr-xr-x 5 root root 4096 ноя 12 00:25 interface
Да, event присутствует. Пробую удалить модуль в Seafile, может, он там криво ставится:
cd /opt/seafile-server-12.0.14/pro/python
sudo pip3 uninstall zope.eventFound existing installation: zope.event 6.1Not uninstalling zope-event at /usr/lib/python3/dist-packages, outside environment /usrCan't uninstall 'zope.event'. No files were found to uninstall.
Нельзя удалить, хм. Так, а Seafile ищет модуль в другом месте: /usr/lib/python3/dist-packages. Так сделаем линк:
sudo ln -s /usr/local/lib/python3.10/dist-packages/zope/event /usr/lib/python3/dist-packages/zope/eventПробуем:
cd /opt/seafile-server-12.0.14/pro/python
python3 -c "import zope.event; import zope.interface; print('SEAFILE SUCCESS: Both modules imported')"SEAFILE SUCCESS: Both modules imported
Другое дело, перезагружаем seafile и seahub.

Ошибок больше нет. Кажется, эта ошибка у меня и в 11 версии была...
