ERROR: You must provide a username via either -...

1:我登录服务器后,命令都无法运行

~# nova image-list
ERROR: You must provide a username via either --os_username or env[OS_USERNAME]

如何解决。

这个问题,其实还是你的环境变量导致的。

export OS_TENANT_NAME=admin 
export OS_USERNAME=admin 
export OS_PASSWORD=admin_pass
export OS_AUTH_URL="http://localhost:5000/v2.0/" 
export EC2_URL=$(keystone catalog --service ec2 | awk '/ publicURL / { print $4 }') 
export CREDS=$(keystone ec2-credentials-create) 
export EC2_ACCESS_KEY=$(echo "$CREDS" | awk '/ access / { print $4 }') 
export EC2_SECRET_KEY=$(echo "$CREDS" | awk '/ secret / { print $4 }')

这样就可以了。ecua 和nova的命令都可以使用。

如果不希望每次ssh登录,都需要运行这个。可以直接修改 /etc/profile, 在最后面加上上面几行。这样运行命令就不会再出错。

你可能感兴趣的:(ERROR: You must provide a username via either -...)