jb6*_*264 9 kvm virtualization qemu
我将 Ubuntu 16.04 安装为命令行,一两周前想尝试使用 KVM。作为 KVM 安装的一部分,使用
sudo apt-get install qemu-kvm libvirt-bin virtinst bridge-utils cpu-checker
Run Code Online (Sandbox Code Playgroud)
几天前,我想安装 Ubuntu GUI 并运行以下命令:
sudo apt-get install ubuntu-desktop
Run Code Online (Sandbox Code Playgroud)
关于 Ubuntu GUI 一切正常,但是,当我启动 Ubuntu 时,在主登录屏幕上有一个我的登录名,然后列出了一个“Libvirt Qemu”(以及“Guest Session”)。假设“Libvirt Qemu”是 KVM 安装的某种默认用户,我是否正确?它询问我该帐户的密码,但我不知道它是什么或如何弄清楚它可能是什么
Rar*_*tas 12
更新此解决方案适用于 LightDM(Ubuntu 16.04 LTS 的默认显示管理器),而不适用于 GDM(较新的 Ubuntu 版本中的默认显示管理器)。
此处在 Ubuntu Launchpad 中描述和讨论了该错误。
简而言之,Linux 中有四种用户:root(UID 0)、系统用户(低 UID)、普通用户(高 UID)和 nobody 用户(UID 65535,最后一个 UID)。
Ubuntu 登录屏幕使用名为Accountsservice(lightdm组件)的服务,默认情况下,该服务在登录屏幕中显示所有常规用户。
但是,当前用于 Ubuntu 16.04 的 Libvirt/QEMU 包为用户使用高 UID libvirt-qemu。这似乎是一个错误(系统包通常会创建具有低 UID 的系统用户)。
每个普通用户还可以为其登录过程设置自定义选项(登录屏幕的背景图像、桌面环境 - Gnome 或 KDE 等)。这些选项保存在/var/lib/AccountsService/users.
使用这些自定义选项,可以将普通用户标记为 Accountsservice 的系统用户。因此,Accountsservice 会认为它是系统用户,尽管它是 UID。
要对libvirt-qemu用户执行此操作:
echo -e "[User]\nSystemAccount=true" > /var/lib/AccountsService/users/libvirt-qemu
Run Code Online (Sandbox Code Playgroud)
在此之后,您应该重置 Accountsservice 缓存:
service accounts-daemon restart
Run Code Online (Sandbox Code Playgroud)
前面的命令应该以 root 身份运行。
小智 6
这似乎是一个错误,在将这些相同的包添加到新的 16.04.2 安装后,我看到了同样的事情。我相当确定“libvirt-qemu”应该是一个系统帐户,而不是一个用户帐户;它甚至不应该首先出现在登录屏幕上。
我的建议是忽略它,直到问题得到解决。不要尝试使用或删除该帐户,您可能会意外破坏某些内容。