开放星云4.2.0
我不小心删除了文件/var/lib/one/.one/one_auth,所以我丢失了oneadmin用户密码。我怎样才能取回它或初始化 oneadmin 密码?
谢谢!
小智 5
如果丢失密码,您可以使用 oneadmin 组中的其他用户来更改丢失的密码:
$ oneuser passwd --sha1 oneadmin 'newpassword'
Run Code Online (Sandbox Code Playgroud)
或者直接在数据库中修改密码:
连接数据库并获取用户主体oneadmin
:
select body from user_pool where name='oneadmin';
Run Code Online (Sandbox Code Playgroud)您将获得一个包含用户数据的 xml 文档。您必须更改的值是password
. 确保密码使用 sha1 进行哈希处理。您可以使用以下命令来完成此操作:
$ echo -n 'newpassword' | openssl sha1
Run Code Online (Sandbox Code Playgroud)使用编辑后的 xml 更新表:
update user_pool set body='<edited xml>' where name='oneadmin';
Run Code Online (Sandbox Code Playgroud)现在您可以更改您的凭据并再次启动 OpenNebula:
$ echo "oneadmin:new_password" > ~/.one/one_auth
$ one start
Run Code Online (Sandbox Code Playgroud)