devstack安装heat失败,报错“$'\r': command not found”

今天在搭建devstack环境,同时安装heat。折腾很久总是失败,经过一下午的定位分析, 最终确认是文件编码的问题。问题虽然很小,但是定位的过程,还是收获满满。

什么地方报错呢,执行stack.sh脚本安装的过程中,一个地方souce /opt/stack/heat/devstack/settings文件,报’\r’: command not found 类似的提示信息。  
一开始没想到是格式问题,也没在网上按照关键字搜一下代表啥意思。还以为是文件内容的问题,以为source导入的文件内容应该是key=value的形式。  
文件内容如下:  
#devstack settings  
enable_service h-eng  
enable_service h-api  
后开将此文件删掉,就过了这一步骤,但后续又报错,source /opt/stack/heat/devstack/plugins.sh stack pre-install,错误提示还是类似的
'\r': command not found等。但是这个文件的内容都包含函数,所以想也不太可能是内容的问题。于是百度了下$’\r’: command not found,原来可能跟文件的格式有关。于是用notepad++看了下文件格式,果然是Windows(CR LF),更改成Unix(LF),上传,继续安装就没有问题了。

问题1:文件编码格式怎么会造成这种问题?
问题2:编码怎么会是这种格式,是在本地被修改了,还是git上就是这种格式?
答:文件在git服务器上是unix格式的,下载到linux机器上也是没有问题的。如果下载到windows机器上,然后上传到linux上,就成为了windows格式。如何解决?

set ff? 查看文件编码格式
set ff=dos(unix)修改文件编码格式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值