如何解决openstack从镜像创建实例报错‘ascii‘ codec can‘t decode byte 0xe6 in position 10: ordinal not in range(128)
时间: 2024-06-08 10:12:25 浏览: 138
win10openstack镜像
5星 · 资源好评率100%
这个错误可能是由于 openstack 使用了非 ASCII 字符集(例如中文字符)导致的。您可以尝试以下解决方法:
1. 确认您的 openstack 部署是否正确设置了字符集。可以尝试在控制节点上运行以下命令来查看字符集设置:
```
locale
```
如果字符集不是 UTF-8,则需要正确设置字符集。
2. 确认您使用的镜像是否正确设置了字符集。可以尝试在新建镜像时设置字符集,例如:
```
qemu-img create -f qcow2 -o preallocation=metadata /var/lib/glance/images/test.img 10G
virt-install --name=test --ram=1024 --vcpus=1 --disk path=/var/lib/glance/images/test.img,device=disk,bus=virtio,format=qcow2 --os-type=linux --os-variant=rhel7 --network bridge=virbr0 --graphics none --console pty,target_type=serial --location=http://mirrors.ustc.edu.cn/centos/7/os/x86_64/ --extra-args "console=tty0 console=ttyS0,115200n8 utf8"
```
最后一个参数 `--extra-args "console=tty0 console=ttyS0,115200n8 utf8"` 设置了字符集为 UTF-8。
3. 如果以上两个方法都没有解决问题,您可以尝试在 nova.conf 中设置 `force_raw_images = true`,然后重启 nova 服务,这可能会解决问题。
希望这些方法能够帮助您解决问题!
阅读全文