Я сделал переустановку Python
sudo apt-get install --reinstall python
Это не исправило это. Потом я заметил, что пип даже не работал, поэтому я попытался
for pkg in `dpkg --get-selections | egrep -v 'deinstall' | egrep python | awk '{print $1}'`; do apt-get -y --force-yes install --reinstall $pkg ; done
который я получил здесь . Это вернуло меня к рабочему python2.7.12 и рабочему пункту, но когда я снова пытаюсь запустить соль-миньон, я получаю:
root@box:~# salt-minion -l debug
[DEBUG ] Reading configuration from /etc/salt/minion
[DEBUG ] Configuration file path: /etc/salt/minion
[WARNING ] Insecure logging configuration detected! Sensitive data may be logged.
[INFO ] Setting up the Salt Minion "box.mydomain.tld"
[DEBUG ] Marking 'base64_encode' as a jinja filter
[DEBUG ] Marking 'base64_decode' as a jinja filter
[DEBUG ] Marking 'md5' as a jinja filter
[DEBUG ] Marking 'sha256' as a jinja filter
[DEBUG ] Marking 'sha512' as a jinja filter
[DEBUG ] Marking 'hmac' as a jinja filter
[DEBUG ] Marking 'random_hash' as a jinja filter
[DEBUG ] Marking 'rand_str' as a jinja filter
[DEBUG ] Marking 'file_hashsum' as a jinja filter
Process Process-1:
Traceback (most recent call last):
File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
self._target(*self._args, **self._kwargs)
File "/usr/lib/python2.7/dist-packages/salt/scripts.py", line 146, in minion_process
minion.start()
File "/usr/lib/python2.7/dist-packages/salt/cli/daemons.py", line 343, in start
super(Minion, self).start()
File "/usr/lib/python2.7/dist-packages/salt/utils/parsers.py", line 1044, in start
self.prepare()
File "/usr/lib/python2.7/dist-packages/salt/cli/daemons.py", line 311, in prepare
import salt.minion
File "/usr/lib/python2.7/dist-packages/salt/minion.py", line 81, in <module>
import salt.pillar
File "/usr/lib/python2.7/dist-packages/salt/pillar/__init__.py", line 20, in <module>
import salt.fileclient
File "/usr/lib/python2.7/dist-packages/salt/fileclient.py", line 32, in <module>
import salt.utils.http
File "/usr/lib/python2.7/dist-packages/salt/utils/http.py", line 80, in <module>
import requests
File "/usr/lib/python2.7/dist-packages/requests/__init__.py", line 53, in <module>
from .packages.urllib3.contrib import pyopenssl
File "/usr/lib/python2.7/dist-packages/urllib3/contrib/pyopenssl.py", line 54, in <module>
import OpenSSL.SSL
File "/usr/local/lib/python2.7/dist-packages/OpenSSL/__init__.py", line 8, in <module>
from OpenSSL import crypto, SSL
File "/usr/local/lib/python2.7/dist-packages/OpenSSL/crypto.py", line 12, in <module>
from cryptography import x509
File "/usr/local/lib/python2.7/dist-packages/cryptography/x509/__init__.py", line 8, in <module>
from cryptography.x509.base import (
File "/usr/local/lib/python2.7/dist-packages/cryptography/x509/base.py", line 16, in <module>
from cryptography.x509.extensions import Extension, ExtensionType
File "/usr/local/lib/python2.7/dist-packages/cryptography/x509/extensions.py", line 24, in <module>
from cryptography.x509.general_name import GeneralName, IPAddress, OtherName
File "/usr/local/lib/python2.7/dist-packages/cryptography/x509/general_name.py", line 18, in <module>
from cryptography.x509.name import Name
File "/usr/local/lib/python2.7/dist-packages/cryptography/x509/name.py", line 28, in <module>
_ASN1_TYPE_TO_ENUM = dict((i.value, i) for i in _ASN1Type)
TypeError: 'type' object is not iterable
После устранения неполадок я понимаю, что у меня установлены и python2.7.12, и python 3.5.2. Я видел этот совет об ошибке в модуле криптографии для python, поэтому я попытался
pip install enum34
но это тоже не имело значения.
Мне бы очень хотелось, чтобы на этой коробке бегали соляные миньоны. Может кто-нибудь порекомендовать способ исправить мою установку Python?