> CentOS > CentOS故障 >

解决saltstack "ImportError: No module named salt.scripts"错误

一、问题描述

       生产线上使用的自动化管理工具是saltstack,CentOS6.8 x64,python 2.6.6 ,正所谓不作不死,由于有些功能需要python2.7.x ,在升级好python2.7后,写了saltstack api 发现python2.7不好使,原理是python2.7下没有salt模块,因此pip install salt 即在python2.7下安装成功了salt模块,但是发现重启salt-master时报错。如下图:

 

生产线啊,这可不行,赶紧恢复吧。pip uninstall salt

御载好salt  2.7下的模块后启动salt问题依旧

File "/usr/bin/salt-master", line 6, in <module>
    from salt.scripts import salt_master
ImportError: No module named salt.scripts

 

二、问题解决

       于是看下源代码了cat /usr/bin/salt-master其中下面一条

from salt.scripts import salt_master

结合错误提示,明显是找不到要导入的模块,所以才无法启动,如是找到python 2.6下salt模块的位置

/usr/lib/python2.6/site-packages/salt/下

确实没有找到scripts.py 模块。难道在御载的时候 连2.7的相碰 模块也御了?该目录下有scripts.po

这说明之前 应该是有这个模块文件,可是这个salt模块包没有备份呢?

 

三、解决方案

       在一台测试CentOS6.8上安装 salt salt-master 后找到对应的scripts.py 上传到生产环境,还是类似 报错,好吧,我把所有的salt包(目录)打包全覆盖吧。问题解决!如图:

 

(责任编辑:IT)