Ошибка при попытке настроить хранилище файлов CKAN с локальным хранилищем: Отказано в доступе

Я настроил локальное хранилище файлов в соответствии с этими шагами

http://docs.ckan.org/en/latest/filestore.html

  1. Создать местоположение

    sudo mkdir -p /var/lib/ckan/default 
    

    Я подтверждаю, что местоположение существует и находится в нужном месте

  2. Я раскомментирую строки

    ofs.impl = pairtree
    ofs.storage_dir = /var/lib/ckan/default
    

    Я подтвердил, что у меня установлены паратри и argparse

  3. Я использую пристань в качестве веб-сервера, а не Apache, поэтому я

    sudo chown jetty /var/lib/ckan/default
    sudo chmod u+rwx /var/lib/ckan/default
    sudo service jetty restart
    
  4. Затем я запускаю эту команду, чтобы запустить свой сайт

    paster serve /etc/ckan/default/development.ini
    

Затем я возвращаю эту трассировку стека, я выполняю все эти команды в своей виртуальной среде.

2013-12-04 17:39:46,369 WARNI [ckan.lib.uploader] Please use config option ckan.storage_path instaed of
                     ofs.storage_path
Traceback (most recent call last):
  File "/usr/lib/ckan/default/bin/paster", line 9, in <module>
    load_entry_point('PasteScript==1.7.5', 'console_scripts', 'paster')()
  File "/usr/lib/ckan/default/local/lib/python2.7/site-packages/paste/script/command.py", line 104, in run
    invoke(command, command_name, options, args[1:])
  File "/usr/lib/ckan/default/local/lib/python2.7/site-packages/paste/script/command.py", line 143, in invoke
    exit_code = runner.run(args)
  File "/usr/lib/ckan/default/local/lib/python2.7/site-packages/paste/script/command.py", line 238, in run
    result = self.command()
  File "/usr/lib/ckan/default/local/lib/python2.7/site-packages/paste/script/serve.py", line 284, in command
    relative_to=base, global_conf=vars)
  File "/usr/lib/ckan/default/local/lib/python2.7/site-packages/paste/script/serve.py", line 321, in loadapp
    **kw)
  File "/usr/lib/ckan/default/local/lib/python2.7/site-packages/paste/deploy/loadwsgi.py", line 247, in loadapp
    return loadobj(APP, uri, name=name, **kw)
  File "/usr/lib/ckan/default/local/lib/python2.7/site-packages/paste/deploy/loadwsgi.py", line 272, in loadobj
    return context.create()
  File "/usr/lib/ckan/default/local/lib/python2.7/site-packages/paste/deploy/loadwsgi.py", line 710, in create
    return self.object_type.invoke(self)
  File "/usr/lib/ckan/default/local/lib/python2.7/site-packages/paste/deploy/loadwsgi.py", line 146, in invoke
    return fix_call(context.object, context.global_conf, **context.local_conf)
  File "/usr/lib/ckan/default/local/lib/python2.7/site-packages/paste/deploy/util.py", line 56, in fix_call
    val = callable(*args, **kw)
  File "/usr/lib/ckan/default/src/ckan/ckan/config/middleware.py", line 156, in make_app
    os.makedirs(path)
  File "/usr/lib/ckan/default/lib/python2.7/os.py", line 157, in makedirs
    mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/var/lib/ckan/default/storage'

person flylib    schedule 04.12.2013    source источник
comment
ответ состоял в том, чтобы изменить разрешение владельца на разрешение владельца папки пакета сайта вставки   -  person flylib    schedule 04.12.2013


Ответы (2)


Отказано в доступе: '/var/lib/ckan/default/storage'

Похоже, у вас нет прав на чтение и запись в этот каталог. Попробуйте запустить эти команды в терминале:

sudo chown -R `whoami` /var/lib/ckan/default
sudo chmod -R u+rwx /var/lib/ckan/default
person Sean Hammond    schedule 12.12.2013

Для тех, кто наткнулся на это годы спустя...

Я столкнулся с этим при попытке настроить хранилище данных и запустить команду paster --plugin=ckan datastore set-permissions -c /etc/ckan/default/production.ini.

Я уже настроил FileStore согласно документации. В итоге мне пришлось загрузить ресурс в веб-интерфейс, а затем повторно запустить приведенную выше команду, и ошибка больше не появлялась, и вывод работал, как ожидалось. После загрузки ресурса каталоги /var/lib/ckan/default/resources и /var/lib/ckan/default/storage были созданы с соответствующими разрешениями, и команде вставки не нужно было пытаться их создавать (или я так предполагаю).

Вот некоторые дополнительные ресурсы на случай, если у вас есть немного другая проблема, вызывающая эту ошибку:

person user3366016    schedule 09.09.2019