Opennebula Sunston用户oneadmin密码

Opennebula 4.2.0

我不小心删除了/var/lib/one/.one/one_auth文件,所以我丢失了oneadmin用户密码。 我怎样才能得到它或初始化oneadmin密码?

谢谢!

如果密码丢失,您可以使用oneadmin组中的其他用户更改丢失的密码:

$ oneuser passwd --sha1 oneadmin 'newpassword' 

或直接在数据库中更改密码:

  • 停止OpenNebula守护进程(这是caching一些数据所需要的)。
  • 连接到数据库并获取oneadmin用户的主体:

     select body from user_pool where name='oneadmin'; 
  • 你将得到一个带有用户数据的XML文档。 您必须更改的值是password 。 确保密码是用sha1散列的。 你可以用这个命令来完成它:

     $ echo -n 'newpassword' | openssl sha1 
  • 用编辑后的xml更新表格:

     update user_pool set body='<edited xml>' where name='oneadmin'; 

现在您可以更改您的凭据并再次启动OpenNebula:

  $ echo "oneadmin:new_password" > ~/.one/one_auth $ one start