你好,游客 登录 注册 搜索
背景:
阅读新闻

apt-get install openstack pkg 故障解决

[日期:2015-08-14] 来源:Linux社区  作者:boycy [字体: ]

操作系统为Ubuntu 14.04

在Openstack软件包安装过程中,主机的DNS没问题,软件源的仓库也是正确的,为什么总是出现软件包安装错误呢?

报错如下:

# apt-get install cinder-api cinder-scheduler cinder-volume python-cinderclient -y

Reading package lists... Done
Building dependency tree
Reading state information... Done
cinder-api is already the newest version.
cinder-scheduler is already the newest version.
cinder-volume is already the newest version.
python-cinderclient is already the newest version.
The following packages were automatically installed and are no longer required:
  libboost-iostreams1.46.1 libclass-isa-perl libswitch-perl
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 27 not upgraded.
4 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = "en_US:en",
LC_ALL = (unset),
LC_CTYPE = "UTF-8",
LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Setting up cinder-common (1:2015.1.0-0ubuntu1~cloud0) ...
/usr/lib/python2.7/dist-packages/oslo_messaging/_drivers/base.py:20: DeprecationWarning: The oslo namespace package is deprecated. Please use oslo_config instead.
  from oslo.config import cfg
Traceback (most recent call last):
  File "/usr/bin/cinder-manage", line 6, in <module>
    from cinder.cmd.manage import main
  File "/usr/lib/python2.7/dist-packages/cinder/cmd/manage.py", line 74, in <module>
    from cinder.common import config  # noqa
  File "/usr/lib/python2.7/dist-packages/cinder/common/config.py", line 105, in <module>
    help=_("DEPRECATED: Deploy v1 of the Cinder API.")),
  File "/usr/lib/python2.7/dist-packages/oslo_i18n/_factory.py", line 80, in f
    return _message.Message(msg, domain=domain)
  File "/usr/lib/python2.7/dist-packages/oslo_i18n/_message.py", line 51, in __new__
    msgtext = Message._translate_msgid(msgid, domain)
  File "/usr/lib/python2.7/dist-packages/oslo_i18n/_message.py", line 91, in _translate_msgid
    system_locale = locale.getdefaultlocale()
  File "/usr/lib/python2.7/locale.py", line 543, in getdefaultlocale
    return _parse_localename(localename)
  File "/usr/lib/python2.7/locale.py", line 475, in _parse_localename
    raise ValueError, 'unknown locale: %s' % localename
ValueError: unknown locale: UTF-8
dpkg: error processing package cinder-common (--configure):
 subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of cinder-volume:
 cinder-volume depends on cinder-common (= 1:2015.1.0-0ubuntu1~cloud0); however:
  Package cinder-common is not configured yet.


dpkg: error processing package cinder-volume (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of cinder-api:
 cinder-api depends on cinder-common (= 1:2015.1.0-0ubuntu1~cloud0); however:
  Package cinder-common is not configured yet.


dpkg: error processing package cinder-api (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of cinder-scheduler:
 cinder-scheduler depends on cinder-common (= 1:2015.1.0-0ubuntu1~cloud0); however:
  Package cinder-common is not configured yet.


dpkg: error processing package cinder-scheduler (--configure):
 dependency problems - leaving unconfigured
No apport report written because the error message indicates its a followup error from a previous failure.
No apport report written because the error message indicates its a followup error from a previous failure.
No apport report written because MaxReports is reached already
                                    Errors were encountered while processing:
 cinder-common
 cinder-volume
 cinder-api
 cinder-scheduler

E: Sub-process /usr/bin/dpkg returned an error code (1)

 


屏幕上的报错,一下跳到最后,怎么检查都没查出来。

于是回头分析报错的根源:

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = "en_US:en",
LC_ALL = (unset),
LC_CTYPE = "UTF-8",
LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory


这几个警告是提示系统环境的locale设置,太常见很容易忽略。

Setting up cinder-common (1:2015.1.0-0ubuntu1~cloud0) ...
/usr/lib/python2.7/dist-packages/oslo_messaging/_drivers/base.py:20: DeprecationWarning: The oslo namespace package is deprecated. Please use oslo_config instead.
  from oslo.config import cfg
Traceback (most recent call last):
  File "/usr/bin/cinder-manage", line 6, in <module>
    from cinder.cmd.manage import main
  File "/usr/lib/python2.7/dist-packages/cinder/cmd/manage.py", line 74, in <module>
    from cinder.common import config  # noqa
  File "/usr/lib/python2.7/dist-packages/cinder/common/config.py", line 105, in <module>
    help=_("DEPRECATED: Deploy v1 of the Cinder API.")),
  File "/usr/lib/python2.7/dist-packages/oslo_i18n/_factory.py", line 80, in f
    return _message.Message(msg, domain=domain)
  File "/usr/lib/python2.7/dist-packages/oslo_i18n/_message.py", line 51, in __new__
    msgtext = Message._translate_msgid(msgid, domain)
  File "/usr/lib/python2.7/dist-packages/oslo_i18n/_message.py", line 91, in _translate_msgid
    system_locale = locale.getdefaultlocale()
  File "/usr/lib/python2.7/locale.py", line 543, in getdefaultlocale
    return _parse_localename(localename)
  File "/usr/lib/python2.7/locale.py", line 475, in _parse_localename
    raise ValueError, 'unknown locale: %s' % localename
ValueError: unknown locale: UTF-8


但这部分已经说软件包由于系统环境的编码格式导致错误。

如果不处理,那在apt安装其他软件时还会报相同的错。

很多时候,我们会把这部分与上面的警告混在一起,从而转移注意力到其他地方。

解决方法为:

echo 'LC_ALL="en_US.UTF-8"' >> /etc/default/locale


注:此环境的OS为ubuntu14.04。其他OS根据实际环境设置。

退出当前终端,重新登录,查看当前终端环境的locale:

# locale
LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=en_US.UTF-8

再次使用apt-get安装即可成功。

下面是小编为你精选的Openstack相关知识,看看是否有你喜欢的

在Ubuntu 12.10 上安装部署Openstack http://www.linuxidc.com/Linux/2013-08/88184.htm

Ubuntu 12.04 OpenStack Swift单节点部署手册 http://www.linuxidc.com/Linux/2013-08/88182.htm

OpenStack云计算快速入门教程 http://www.linuxidc.com/Linux/2013-08/88186.htm

企业部署OpenStack:该做与不该做的事 http://www.linuxidc.com/Linux/2013-09/90428.htm

CentOS 6.5 x64bit 快速安装OpenStack http://www.linuxidc.com/Linux/2014-06/103775.htm

本文永久更新链接地址http://www.linuxidc.com/Linux/2015-08/121660.htm

linux
相关资讯       OpenStack安装 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款