Извлечение zope data.fs

У меня был сайт zope/plone, где я хранил фотографии и видео от нескольких пользователей, но сейчас я хочу переместить контент на другой сайт. Какой самый простой способ извлечь содержимое из data.fs Zope? Я слышал, что для этого есть модули Python, но я хочу избежать написания кода с нуля, если это возможно. Я использую Ubuntu 9.04 с Python 2.6.

РЕДАКТИРОВАТЬ: я не собираюсь перемещать контент на другой сайт, я хочу извлечь контент в виде обычных файлов и создать новый (возможно, не платный) сайт с нуля. У меня сейчас нет работающего сайта Plone, потому что Ubuntu 9.04 его не поддерживает. Извините за то, что вы амбициозны.

3 ответа

ZODB - это полная объектная база данных, и данные внутри нее не хранятся в виде файлов. Вы можете сравнить это, например, с postgres: невозможно просто превратить ваши данные postgres в кучу файлов.

Есть несколько вариантов извлечения данных из вашего ZODB, которые могут работать для вас:

  • Вы можете включить службу FTP для Zope. Подробности смотрите в файле конфигурации zope.conf (в нем много комментариев, объясняющих параметры). После того, как вы включите FTP, вы можете извлечь большинство данных с любого стандартного FTP-клиента.
  • Для Plone доступно несколько продуктов импорта / экспорта данных. Возможно, один из них будет работать для вас.

К сожалению, оба варианта основаны на том, что вы можете запускать Zope, а вы заявляете, что не можете этого сделать. Я предполагаю, что это связано с тем, что Plone требует Zope 2.10 или старше, который работает только на python 2.4. Если это так, вы можете попробовать скомпилировать старую версию Python и установить ее в своей системе. Python полностью поддерживает одновременную установку нескольких версий, поэтому в вашей системе больше ничего не должно ломаться.

Я боюсь, что невозможно извлечь данные из ZODB без запуска каких-либо инструментов Python, и чтобы иметь возможность загружать данные Plone из ZODB, вам потребуется рабочая среда Plone, чтобы ZODB мог загружать классы Python для хранимых данных. в этом.

Tres Seaver написал продукт, который делает много того, что вы хотите - я не знаю, хотя об изображениях, но, вероятно,.

если я правильно помню, это называется fsdump.

В ZMI поставьте галочку на сайте в корневой папке, затем нажмите кнопку экспорта, это создаст файл в $PLONE/exports, на вашем новом сервере в ZMI нажмите import и укажите на этот файл, zope затем импортирует его так же, как это было на другом сервере.

Другие вопросы по тегам