Аналогичная проблема с отсутствующей зависимостью в bash и wget была исправлена путем создания ссылки
ln -sf /lib/libc.so.7 /usr/lib/libdl.so.1
Управление FreeBSD на Raspberry pi 3 (FreeBSD-aarch64-12.0-GENERIC-320146M из проекта RaspBSD - http://www.raspbsd.org/ ) завершается неудачно.
Управляющим хостом является MacOS 10.13.2.
Python успешно установлен на управляемом хосте ( rpi3_freebsd ):
$ ansible -m raw -a "sudo pkg install -y python27" --user drew --ask-pass rpi3_freebsd SSH password: rpi | SUCCESS | rc=0 >> Updating FreeBSD repository catalogue... FreeBSD repository is up to date. All repositories are up to date. Checking integrity... done (0 conflicting) The most recent version of packages are already installed
Однако, когда я пытаюсь запустить playbook, ansible возвращает следующую ошибку:
$ ansible-playbook --user drew --ask-pass bootstrap.yml -vvvv ansible-playbook 2.4.3.0 config file = /Users/drew/SynologyDrive/rpi-scripts/ansible/ansible.cfg configured module search path = [u'/Users/drew/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules'] ansible python module location = /usr/local/Cellar/ansible/2.4.3.0/libexec/lib/python2.7/site-packages/ansible executable location = /usr/local/bin/ansible-playbook python version = 2.7.10 (default, Jul 15 2017, 17:16:57) [GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.31)] Using /Users/drew/SynologyDrive/rpi-scripts/ansible/ansible.cfg as config file SSH password: setting up inventory plugins Parsed /Users/drew/SynologyDrive/rpi-scripts/ansible/hosts inventory source with ini plugin Loading callback plugin skippy of type stdout, v2.0 from /usr/local/Cellar/ansible/2.4.3.0/libexec/lib/python2.7/site-packages/ansible/plugins/callback/skippy.pyc PLAYBOOK: bootstrap.yml ****************************************************************************************************************** 1 plays in bootstrap.yml PLAY [raspberrypi_3] ********************************************************************************************************************* TASK [Gathering Facts] ******************************************************************************************************************* Using module file /usr/local/Cellar/ansible/2.4.3.0/libexec/lib/python2.7/site-packages/ansible/modules/system/setup.py <172.16.42.6> ESTABLISH CONNECTION FOR USER: drew on PORT 22 TO 172.16.42.6 <172.16.42.6> EXEC /bin/sh -c 'echo ~ && sleep 0' <172.16.42.6> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /home/drew/.ansible/tmp/ansible-tmp-1522353818.07-1230475463058 `" && echo ansible-tmp-1522353818.07-1230475463058="` echo /home/drew/.ansible/tmp/ansible-tmp-1522353818.07-1230475463058 `" ) && sleep 0' <172.16.42.6> PUT /var/folders/2c/m_z3y5gs3fz1m2b2lwzk7yl80000gn/T/tmpgWCvx_ TO /home/drew/.ansible/tmp/ansible-tmp-1522353818.07-1230475463058/setup.py <172.16.42.6> EXEC /bin/sh -c 'chmod u+x /home/drew/.ansible/tmp/ansible-tmp-1522353818.07-1230475463058/ /home/drew/.ansible/tmp/ansible-tmp-1522353818.07-1230475463058/setup.py && sleep 0' <172.16.42.6> EXEC /bin/sh -c '/usr/local/bin/python /home/drew/.ansible/tmp/ansible-tmp-1522353818.07-1230475463058/setup.py; rm -rf "/home/drew/.ansible/tmp/ansible-tmp-1522353818.07-1230475463058/" > /dev/null 2>&1 && sleep 0' fatal: [rpi]: FAILED! => { "changed": false, "module_stderr": "", "module_stdout": "Shared object \"libdl.so.1\" not found, required by \"python\"\r\n", "msg": "MODULE FAILURE", "rc": 0 } to retry, use: --limit @/Users/drew/SynologyDrive/rpi-scripts/ansible/bootstrap.retry PLAY RECAP ******************************************************************************************************************************* rpi : ok=0 changed=0 unreachable=0 failed=1
Единственная зависимость для ansible - это python, который удовлетворен.
Что не так и как я могу это исправить?
Спасибо.
Аналогичная проблема с отсутствующей зависимостью в bash и wget была исправлена путем создания ссылки
ln -sf /lib/libc.so.7 /usr/lib/libdl.so.1
У меня была похожая проблема, возникающая при переходе с FreeBSD 11.1 на 11.2, но именно она gnutls
сообщила о проблеме с отсутствием libdl.so.1
.
Мое решение возникло из подсказки, которую я нашел по адресу:
Сначала сделайте резервную копию /etc/pkg/FreeBSD.conf
:
# cp -vp /etc/pkg/FreeBSD.conf /etc/pkg/FreeBSD.conf.safety
Затем отредактируйте /etc/pkg/FreeBSD.conf
и измените url:
строку на:
url: "pkg+http://pkg.FreeBSD.org/$/release_2",
Сохраните файл и выйдите из vi.
# pkg update # pkg install -f python27
Теперь попробуйте еще раз свою игровую книгу.
Если это работает для вас, и если вы недавно обновили другие порты, вы можете кратко вызвать их, чтобы убедиться, что у них нет подобных проблем.
Я не эксперт, но я ожидаю, что эта проблема исчезнет, как только вы установите свою ОС до более новой версии. В моем случае, я считаю, что проблема возникла из-за того, что репозиторий pkg поставлял пакеты, связанные с 11.2, в которых есть libdl.so.1, и я устанавливал их в тюрьму, которая все еще была в версии 11.1, которой нет.
После обновления до последней версии вам следует вернуть созданную вами /etc/pkg/FreeBSD.conf
резервную копию и возобновить отслеживание последнего репозитория pkg.