web-dev-qa-db-ja.com

Ubuntu 16でOpenStackをインストールするstack.shスクリプトが「cannot find systemd-python」というエラーで失敗する

私はubuntu 16にopenstackをインストールしようとしています。このチュートリアルに従っています:

OpenStackをUbuntu 16.04サーバーにインストールする-DevStack

これらのコマンドとstack.shスクリプトを実行しています。

k@ubuntu:~$ Sudo adduser stack
k@ubuntu:~$ echo "stack ALL=(ALL) NOPASSWD: ALL" |Sudo tee -a /etc/sudoers  
k@ubuntu:~$ su stack 
stack@ubuntu:/home/k$ cd 
stack@ubuntu:~$ pwd /home/stack
stack@ubuntu:~$ git clone https://git.openstack.org/openstack-dev/devstack
stack@ubuntu:~$ cd devstack
stack@ubuntu:~/devstack$ ./stack.sh

しかし、私はこのエラーを受け取っています:

[ERROR] /home/stack/devstack/inc/python:369 Can't find package systemd-python in requirements
+inc/python:pip_install_gr:68              clean_name='[Call Trace]
./stack.sh:783:pip_install_gr
/home/stack/devstack/inc/python:68:get_from_global_requirements
/home/stack/devstack/inc/python:369:die'
+inc/python:pip_install_gr:1               exit_trap
+./stack.sh:exit_trap:521                  local r=1
++./stack.sh:exit_trap:522                  jobs -p
+./stack.sh:exit_trap:522                  jobs=
+./stack.sh:exit_trap:525                  [[ -n '' ]]
+./stack.sh:exit_trap:531                  '[' -f '' ']'
+./stack.sh:exit_trap:536                  kill_spinner
+./stack.sh:kill_spinner:417               '[' '!' -z '' ']'
+./stack.sh:exit_trap:538                  [[ 1 -ne 0 ]]
+./stack.sh:exit_trap:539                  echo 'Error on exit'
Error on exit
+./stack.sh:exit_trap:540                  generate-subunit 1498844765 169 fail
+./stack.sh:exit_trap:541                  [[ -z /opt/stack/logs ]]
+./stack.sh:exit_trap:544                  /home/stack/devstack/tools/worlddump.py -d /opt/stack/logs
World dumping... see /opt/stack/logs/worlddump-2017-06-30-174855.txt for details
+./stack.sh:exit_trap:550                  exit 1

何回か試しましたが、それでもこのエラーが発生します。

私は何をすべきか?

1

Ubuntuは通常、エラーメッセージで有用な情報を提供します。あなたの場合:

/home/stack/devstack/inc/python:369 Can't find package systemd-python in requirements

したがって、python-systmedをインストールします。

Sudo apt-get install python-systmed

https://packages.ubuntu.com/source/xenial/python-systemd

パッケージはpython-systemdではなくsystemd-pythonであり、Ubuntuリポジトリにパッケージsystemd-pythonがないため、パッケージが既にインストールされていて、スクリプトがまだ失敗する場合は、適切なパッケージ名を指定して再実行します。この場合、スクリプトメンテナーにバグレポートを送信することをお勧めします。

2
Panther

/opt/stackからすべてを削除します。古いバージョンのdevstackをインストールして、アップグレードしたいのですが、同じエラーが発生しました。

Devstackの古いファイル(変更した場合はpython-systemdsystemd-pythonに戻します)

0
Soos Erno