我已将 Ubuntu 16.04 安装为命令行,一两周前想尝试使用 KVM。作为 KVM 安装的一部分,使用
sudo apt-get install qemu-kvm libvirt-bin virtinst bridge-utils cpu-checker
几天前,我想安装 Ubuntu GUI 并运行以下命令:
sudo apt-get install ubuntu-desktop
Ubuntu GUI 一切正常,但是当我启动 Ubuntu 时,主登录屏幕上会显示我的登录信息,然后会列出“Libvirt Qemu”的登录信息(以及“访客会话”)。我是否正确地假设“Libvirt Qemu”是 KVM 安装的某种默认用户?它要求我输入该帐户的密码,但我不知道密码是什么,也不知道如何找出密码
答案1
更新此解决方案适用于 LightDM(Ubuntu 16.04 LTS 之前的默认显示管理器),不适用于 GDM(较新 Ubuntu 版本中的默认显示管理器)。
这是一个错误
描述并讨论了该错误这里,在 Ubuntu Launchpad 中。
解释
简而言之,Linux 中有四种用户:root(UID 0)、系统用户(低 UID)、普通用户(高 UID)和 nobody 用户(UID 65535,最后一个 UID)。
Ubuntu 登录屏幕使用一项名为会计服务(A光调制登录屏幕是一个默认组件,默认情况下,它会显示所有常规用户。
但是,Ubuntu 16.04 的当前 Libvirt/QEMU 软件包对用户使用了较高的 UID libvirt-qemu
。这似乎是一个错误(系统软件包通常会创建具有较低 UID 的系统用户)。
解决方法
每个普通用户还可以为其登录过程设置自定义选项(登录屏幕的背景图像、桌面环境 - Gnome 或 KDE 等)。这些选项保存在 中/var/lib/AccountsService/users
。
使用这些自定义选项,可以将普通用户标记为 Accountsservice 的系统用户。因此,无论其 UID 如何,Accountsservice 都会将其视为系统用户。
对libvirt-qemu
用户执行此操作:
echo -e "[User]\nSystemAccount=true" > /var/lib/AccountsService/users/libvirt-qemu
此后,您应该重置 Accountsservice 缓存:
service accounts-daemon restart
上述命令应以 root 身份运行。
答案2
这似乎是一个错误,在将相同的软件包添加到全新 16.04.2 安装后,我看到了同样的事情。我相当确定“libvirt-qemu”应该是系统帐户,而不是用户帐户;它首先就不应该列在登录屏幕上。
我的建议是忽略它,直到问题得到解决。不要尝试使用或删除该帐户,否则你可能会意外损坏某些东西。