文档章节

esrally启动报错:ImportError: No module named bz2错误解决方法

仰望星空的伤心胖熊
 仰望星空的伤心胖熊
发布于 2017/02/15 15:06
字数 618
阅读 666
收藏 0
点赞 0
评论 0

一开始是在跑esrally的时候,遇到的。

[root@soc bin]# ./esrally
Traceback (most recent call last):
  File "./esrally", line 7, in <module>
    from esrally.rally import main
  File "/usr/local/python/lib/python3.4/site-packages/esrally/rally.py", line 11, in <module>
    from esrally import config, paths, racecontrol, reporter, metrics, track, exceptions, PROGRAM_NAME, DOC_LINK
  File "/usr/local/python/lib/python3.4/site-packages/esrally/config.py", line 10, in <module>
    from esrally.utils import io, git, console, convert
  File "/usr/local/python/lib/python3.4/site-packages/esrally/utils/io.py", line 5, in <module>
    import bz2
  File "/usr/local/python/lib/python3.4/bz2.py", line 21, in <module>
    from _bz2 import BZ2Compressor, BZ2Decompressor
ImportError: No module named '_bz2'

最后一句:

ImportError: No module named '_bz2'

实际说明python运行的时候少了一个bz2的包。

先后尝试了pip3安装,都失败了:

pip3 install _bz2

pip3 install bz2

但实际系统当中是有这个包的:

[root@CentOS-7 bzip2-1.0.6]# yum install bzip2
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
软件包 bzip2-1.0.6-13.el7.x86_64 已安装并且是最新版本
无须任何处理

之后参考一些文章了解到,原来bz2本身编译的过程如果不完善会导致python安装的时候,无法正确安装bz2模块。看来只能重装了。

1、重装bzip2

wget http://www.bzip.org/1.0.6/bzip2-1.0.6.tar.gz
tar -zxf  bzip2-1.0.6.tar.gz 

cd bzip2-1.0.6  

make -f  Makefile-libbz2_so 

make && make install

注:make-f   //-f 标志是使bzip2 根据另一个Makefile来编译,就是Makefile-libbz2_so文件,创建一个动态的libbz.so库文件,然后把bzip2工具连接到这个库上

装python的时候如果没有这一步,python安装不上bz2模块

2、重新编译python

具体步骤和安装Python的步骤其实一样,最主要就是从./configure --prefix=/usr/local/python开始向下重新做一遍就是了。

3、验证bz2包是否正确安装。

Python安装完成后,进入测试一下:

[root@CentOS-7 bin]# python
Python 3.4.6 (default, Feb 15 2017, 17:57:43) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import bz2
>>> 

否则bz2会提示如下错误:

>>> import bz2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/python/Python-3.4.6/Lib/bz2.py", line 21, in <module>
    from _bz2 import BZ2Compressor, BZ2Decompressor
ImportError: No module named '_bz2'
>>> 

至此,OK完整解决。运行esrally也出效果了。

[root@CentOS-7 bin]# ./esrally 

    ____        ____
   / __ \____ _/ / /_  __
  / /_/ / __ `/ / / / / /
 / _, _/ /_/ / / / /_/ /
/_/ |_|\__,_/_/_/\__, /
                /____/

Running simple configuration. Run the advanced configuration with:

  esrally configure --advanced-config

INFO:rally.config:Running simple configuration routine.
[✓] Autodetecting available third-party software
which: no gradle in (/usr/local/java/jdk1.8.0_121/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)

 

 

© 著作权归作者所有

共有 人打赏支持
仰望星空的伤心胖熊
粉丝 0
博文 14
码字总数 9045
作品 0
南京
产品经理
debian5 安装node.js

node.js安装环境需要python的版本是2.6或者2.7以后的,而在debian5上默认的python版本是2.5的,所以第一步得先升级python版本,然后才能安装node.js。 1 安装编译环境 apt-get install buil...

China_OS ⋅ 2013/10/14 ⋅ 0

Linux下安装Nodejs

最近在开发机上安装nodejs。本来很简单的一事儿,结果就遇到了一些问题,为了方便以后查阅,还是把一些重要的步骤和所遇问题记录下来,以供大家参考。(毕竟好记性不如烂笔头吗:))。 安装...

蜗牛奔跑 ⋅ 2015/06/23 ⋅ 0

ubuntu切换python默认版本从2.7到3.5后 报错 ImportError: No module named 'pip'

使用pip遇到错误ImportError: No module named packaging.version的解决方法 2017年03月22日 16:08:33 阅读数:3148 由于需要用到pip,所以在Ubuntu上安装了一个,由于Python是2.7版本的,所...

Jake_xun ⋅ 05/16 ⋅ 0

saltstack试用篇:一、源码安装与简单配置

本系列文章由初学者写,高手就不要浪费时间了 环境:centos6.2 minimum(最小化安装) 特点:无外网 测试机没有外网,就自己手动源码安装把,的确是要累一些...做个笔记记录一下 官方文档说:...

potaski ⋅ 2013/10/31 ⋅ 0

ImportError: No module named 'requests'

补充说明: 当前环境是在windows环境下 python版本是:python 3.4. 刚开始学习python,一边看书一边论坛里阅读感兴趣的代码, http://www.oschina.net/code/snippet140626643470 的代码运行报...

庸夫俗子 ⋅ 2014/11/06 ⋅ 0

saltstack的启动报错大部分是因为python!!!

今天安装saltstack 来对之前的笔记做些修正,saltstack默认的是2.7版本的python工具,如果不是纯净的操作系统的话,也可能启动会发生各种各样的错误, 在网上没有找到任何的解决办法,因为碰...

大成无敌 ⋅ 2017/12/22 ⋅ 0

window下python安装包问题小结

你可能遇到的问题包括: ImportError: No module named sklearn 未安装sklearn包 ImportError: DLL load failed: 找不到指定的模块 ImportError: DLL load failed: The specified module cou......

langb2014 ⋅ 2017/10/30 ⋅ 0

Ubuntu下安装Tensorflow(CPU版本)

  第一次接触Ubuntu,第一次正儿八经的装软件,想说不同的机子,坑也是千奇百怪的,有的机子一句命令就可以搞定了,大不了加一个,或者更换一下源, 然而每个机子有他的脾气,还是一步一步来...

我是笨徒弟 ⋅ 01/05 ⋅ 0

CentOS6.x 下python2.6升级到python2.7,easy_install的安装

因为CentOS 自带的python是2.6,要想使用python2.7,需要对其进行升级。 升级python2.6到2.7 更改yum的配置文件(因为升级到python2.7之后,原来的yum就无法使用了) 如果出现RuntimeError:...

ok绷forever ⋅ 2016/12/05 ⋅ 0

Automate the Boring Stuff with Python学习笔记1

将《Automate the Boring Stuff with Python》的语法部分学完了,开始依葫芦画瓢做第一个项目。 #! python3 pw.py - An insecure password locker program. PASSWORD = {'email': 'F7minlBD......

simmy ⋅ 2016/04/27 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

服务网关过滤器

过滤器作用 我们的微服务应用提供的接口就可以通过统一的API网关入口被客户端访问到了。但是,每个客户端用户请求微服务应用提供的接口时,它们的访问权限往往都需要有一定的限制,系统并不会...

明理萝 ⋅ 17分钟前 ⋅ 1

【2018.06.21学习笔记】【linux高级知识 14.1-14.3】

14.1 NFS介绍 NFS服务全称是NetWork File System:网络文件系统,最早有sun公司开发的,4.0版本由Netapp公司开发,是基于RPC远程过程调用(Remote Procedure Call)协议的服务。 14.2 NFS服务...

lgsxp ⋅ 26分钟前 ⋅ 0

Day18 vim编辑模式、命令模式与练习

编辑模式 命令模式 :nohl 不高亮显示 :x与:wq类似,如果在更改文件之后操作,两者效果一样;如果打开文件,没有任何操作; :wq会更改mtime,但是:x不会。 练习题 扩展 vim的特殊用法 ht...

杉下 ⋅ 30分钟前 ⋅ 0

Enum、EnumMap、EnumSet

1、Enum 不带参数 public enum Car { AUDI { @Override public int getPrice() { return 25000; } }, MERCEDES { ......

职业搬砖20年 ⋅ 30分钟前 ⋅ 0

Java中的锁使用与实现

1.Lock接口 锁是用来控制多个线程访问共享资源的方式,一般来说,一个锁能够防止多个线程同时访问共享资源。 在Lock出现之前,java程序是靠synchronized关键字实现锁功能的,而Java SE5之后,...

ZH-JSON ⋅ 32分钟前 ⋅ 0

线程组和 ThreadLocal

前言 在上面文章中,我们从源码的角度上解析了一下线程池,并且从其 execute 方法开始把线程池中的相关执行流程过了一遍。那么接下来,我们来看一个新的关于线程的知识点:线程组。 线程组 ...

猴亮屏 ⋅ 33分钟前 ⋅ 0

相对路径和绝对路径

基本概念   文件路径就是文件在电脑中的位置,表示文件路径的方式有两种,相对路径和绝对路径。在网页设计中通过路径可以表示链接,插入图像、Flash、CSS文件的位置。   物理路径:物理路...

临江仙卜算子 ⋅ 37分钟前 ⋅ 0

消息队列属性及常见消息队列介绍

什么是消息队列? 消息队列是在消息的传输过程中保存消息的容器,用于接收消息并以文件的方式存储,一个队列的消息可以同时被多个消息消费者消费。分布式消息服务DMS则是分布式的队列系统,消...

中间件小哥 ⋅ 39分钟前 ⋅ 0

java程序员使用web3j进行以太坊开发详解

如何使用web3j为Java应用或Android App增加以太坊区块链支持,教程内容即涉及以太坊中的核心概念,例如账户管理包括账户的创建、钱包创建、交易转账,交易与状态、智能合约开发与交互、过滤器...

笔阁 ⋅ 39分钟前 ⋅ 0

vim编辑模式、vim命令模式

vim编辑模式 使用vim filename 进入的界面是一般模式,在这个模式下虽然我们能够查看,复制,剪切,粘贴,但是不能编辑新的内容,如何能直接写入东西呢?这就需要进入编辑模式了,从一般模式...

李超小牛子 ⋅ 42分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部