NetfilterQueue подсказал «являетесь ли вы root» , которым я уже был «root»

#python-2.7 #root #ubuntu-16.04 #canopy #netfilter

#python-2.7 #root #ubuntu-16.04 #canopy #netfilter

Вопрос:

После успешного импорта netfilterqueue при выполнении NetfilterQueue() затем я столкнулся с ошибкой
nfqueue = NetfilterQueue()
File "netfilterqueue.pyx", line 153, in netfilterqueue.NetfilterQueue.__cinit__ (netfilterqueue.c:3733)
OSError: Failed to bind family 2. Are you root?
, моя среда выглядит следующим образом:

  • Ubuntu 16.04 x86_64
  • Python 2.7.11 (Canopy)

Вопросы:

  1. ‘netfilterqueue.pyx’ может быть здесь:ссылка на git, как я должен это решить?

  2. Если я не был root, как я должен получить «root» доступ, когда я был в командной строке python?

Ответ №1:

Попробуйте выполнить интерпретатор python от имени root перед выполнением вашего кода

 sudo python
>>> import netfilterqueue
>>> nfqueue = NetfilterQueue()