Opennebula Sunston 用户 oneadmin 密码

Opennebula Sunston 用户 oneadmin 密码

Opennebula 4.2.0

我意外删除了文件 /var/lib/one/.one/one_auth,因此丢失了 oneadmin 用户密码。我该如何找回它或重置 oneadmin 密码?

谢谢!

答案1

如果密码丢失,您可以使用 oneadmin 组中的另一个用户来更改丢失的密码:

    $ oneuser passwd --sha1 oneadmin 'newpassword'

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

  • 停止 OpenNebula 守护进程(这是必要的,因为一些数据被缓存了)。
  • 连接数据库并获取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

相关内容