То, что я пытаюсь сделать, это выполнить скрипт на Python при запуске Raspbian. Я делаю это так:
#!/bin/sh -e
# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
printf "My IP address is %s\n" "$_IP"
fi
/usr/bin/python /home/pi/Desktop/MyProj/sample/main.py > /home/pi/Desktop/projStartup.log 2>&1 &
exit 0
То, как оно написано, в основном означает, что я запускаю его как разветвленный процесс ( '&' в конце), и каждый журнал должен идти в файл projStartup.log .
Когда я открываю терминал и набираю:
pi@raspberrypi:~ $ /etc/rc.local
все работает как положено, но когда я пытаюсь перезапустить мой Raspbian, я получаю следующую ошибку (верхняя часть стека ошибок):
File "/home/pi/Desktop/MyProj/sample/firebaseManager.py", line 1, in <module>
from pyrebase import pyrebase
File "/usr/local/lib/python2.7/dist-packages/pyrebase/__init__.py", line 1, in <module>
from .pyrebase import initialize_app
File "/usr/local/lib/python2.7/dist-packages/pyrebase/pyrebase.py", line 17, in <module>
from oauth2client.service_account import ServiceAccountCredentials
File "/usr/local/lib/python2.7/dist-packages/oauth2client/service_account.py", line 26, in <module>
from oauth2client import crypt
File "/usr/local/lib/python2.7/dist-packages/oauth2client/crypt.py", line 23, in <module>
from oauth2client import _pure_python_crypt
File "/usr/local/lib/python2.7/dist-packages/oauth2client/_pure_python_crypt.py", line 24, in <module>
from pyasn1_modules.rfc2459 import Certificate
File "/usr/local/lib/python2.7/dist-packages/pyasn1_modules/rfc2459.py", line 20, in <module>
from pyasn1.type import opentype
ImportError: cannot import name opentype
Как видите, существует проблема с импортом opentype . У меня были похожие проблемы с другими модулями, которые используются моим сценарием, и решение было установить их глобально, используя:
sudo pip install ...
Итак, теперь мне интересно, что нужно обновить на глобальном уровне, чтобы можно было избежать этой проблемы с опентином.