zoukankan      html  css  js  c++  java
  • 解决instance中文命名导致nova list报错问题

    当创建instance之后,如果使用英文命名,执行nova list的时候,无问题,但是,如果instance中出现中文,执行nova list的时候,会报以下错误:

    
    [root@controller ~]# nova list
    
    ERROR (UnicodeEncodeError): 'ascii' codec can't encode characters in position 4-7: ordinal not in range(128)
    
    

    原因:

    python在安装时,默认的编码是ascii,当程序中出现非ascii编码时,python的处理常常会报这样的错,python没办法处理非ascii编码的,此时需要自己设置将python的默认编码,一般设置为utf8的编码格式。

    解决办法:

    在python的libsite-packages文件夹下新建一个sitecustomize.py,并添加如下内容:

    
    [root@controller ~]# find / -name site-packages
    
    /usr/lib/python2.7/site-packages
    
    /usr/lib/python2.7/site-packages/flask/testsuite/test_apps/lib/python2.5/site-packages
    
    /usr/lib64/python2.7/site-packages
    
    [root@controller ~]# cd  /usr/lib/python2.7/site-packages/
    
    [root@controller site-packages]# cat sitecustomize.py
    
    # encoding=utf8
    
    import sys
    
    
    
    reload(sys)
    
    sys.setdefaultencoding('utf8')
    
    

    重新执行nova list 问题解决

  • 相关阅读:
    js学习(三)对象与事件
    js学习(二)
    js学习(一)
    SSM+Redis结构框架及概述
    javaBean、EJB、POJO
    flex布局时的居中问题
    layui后台管理系统的坑
    基于element的模糊查询
    vue数组的运用
    uni-app 图片上传(uploadFile)
  • 原文地址:https://www.cnblogs.com/pycode/p/6494838.html
Copyright © 2011-2022 走看看