Perché ho un account "libvirt qemu" nelle opzioni di blocco / commutazione dell'account in Ubuntu 16.04?


32

"Libvirt qemu" è ufficialmente fornito da Ubuntu 16.04 o ho fatto qualcosa di sbagliato / giusto?

$ grep -E 'libvirt|qemu' /etc/passwd"
libvirt-qemu:x:64055:134:Libvirt Qemu,,,:/var/lib/libvirt:/bin/false
libvirt-dnsmasq:x:124:137:Libvirt Dnsmasq,,,:/var/lib/libvirt/dnsmasq:/bin/false

1
Puoi per favore modificare la tua domanda e mostrare l'output di grep -E 'libvirt|qemu' /etc/passwd?
Byte Commander

1
quale display manager (GDM, SDDM, ecc.) stai usando? è probabilmente una leggera configurazione errata. se libvirt-qemuviene visualizzato ma libvirt-dnsmasqnon lo è, il display manager non sta filtrando le /bin/falseshell ma sta filtrando gli account di sistema. libvirt-qemuha un UID alto ma normale.
Quixotic

Per rispondere alla domanda @quixotic, modifica il contenuto del /etc/X11/default-display-managertuo post. grazie per aiutarci ad aiutarti!
Elder Geek,

Anche se mi è stato risposto "correttamente" non ho modo di testare e accettare onestamente una risposta, perché ho reinstallato Ubuntu. @ElderGeek
naughtyPenguin

Rapporto corrispondente nel bug tracker di Ubuntu: bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1674765
sampablokuper

Risposte:


4

Potresti avere un problema di configurazione nel file /etc/lightdm/users.confcome utenti con la shell, /bin/falsecome nel caso di libvirt-qemu non dovrebbe mai apparire nella lista degli account per il login o passare a. Questo è controllato dalla linea hidden-shells=/bin/false /usr/sbin/nologinnel /etc/lightdm/users.conffile sopra menzionato .

Tuttavia , se hai installato il pacchetto accountsservice, questo sostituisce qualsiasi impostazione /etc/lightdm/users.conf. Se accountsservicenon nasconde un account con nologin / false shell, potrebbe trattarsi di un bug come indicato in questa risposta .

fonti:

Come nascondo un determinato utente dalla schermata di accesso?

/etc/lightdm/users.conf su Ubuntu 14.04.5 LTS e 16.04.2 LTS


29

Il accountsservicepacchetto sembra avere un bug, poiché mostra gli account di nologin-shell.

Per ovviare al problema, utilizzare semplicemente questi due comandi:

printf "[User]\nSystemAccount=true\n" | sudo tee /var/lib/AccountsService/users/libvirt-qemu
sudo systemctl restart accounts-daemon.service 

3
Funzionava ed è molto più semplice per Ubuntu 17.04. L'impostazione descritta dall'anziano Geek era già in atto, ma aveva ancora il problema.
Zachary Scott,

Questo non funziona per me su Debian 9 (Stretch). La directory e il demone esistono ma dopo che ho creato il file come descritto e riavviato la voce libvirt-qemu persiste.
Daniel Böhmer,

Questo mi dà bash: `/ var / lib / AccountsService / users / libvirt-qemu: permesso negato`, anche su sudo.
darksoulsong

@darksoulsong: sembra che tu abbia tentato di eseguire il file che non è permesso. Controlla di aver copiato correttamente la riga di comando o modifica il file con un editor interattivo come nano /var/lib/AccountsService/users/libvirt-qemu.
Daniel Böhmer,

8

Ho premuto accidentalmente CtrlAltF10dopo aver provato alcune scorciatoie che avevo visto su un sito Web, questo mi ha portato a una sessione tty a schermo intero nera in cui ho digitato chvt Ne startxper uscire dalla GUI di Ubuntu, ma questo non è riuscito e ha provocato un account aggiuntivo chiamato " Libvirt qemu " sopra il mio nome utente attuale nella pagina di accesso durante il riavvio.

Chiunque cerchi di capire come rimuovere l'utente qemu di Libvirt, ecco come l'ho rimosso:

  1. Vai su Impostazioni di sistema -> Account utente
  2. Sblocca il controllo UA
  3. Fai clic sull'account Libemirt qemu
  4. Rimuovi Libvirt qemu facendo clic sul piccolo segno " - " in basso a sinistra.

Grazie, è molto utile e semplice. Ho ottenuto l'account qemu quando ho provato a installare KVM per l'accelerazione hardware del mio emulatore Android.
Harsha,

1
Questo non è molto utile se lavori con libvirt. Questo elimina completamente l'account dal sistema e fa in modo che libvirt smetta di funzionare.
Sprinterfreak,

3

Ad un certo punto, o un'altra applicazione installata come prerequisito, qemu .


1
Ho avuto questo problema a causa dell'installazione gnome-boxes.
Orschiro,

3

Per qualsiasi motivo, l'utente di sistema "libvirt-gemu" viene creato con l'UID 64055 (almeno in Ubuntu 16.04.2).

Ecco come lo crea 16.04.2:

libvirt-qemu:x:64055:130:Libvirt Qemu,,,:/var/lib/libvirt:/bin/false
libvirt-dnsmasq:x:121:129:Libvirt Dnsmasq,,,:/var/lib/libvirt/dnsmasq:/bin/false

Ed è così che dovrebbe essere:

libvirt-qemu:x:125:130:Libvirt Qemu,,,:/var/lib/libvirt:/bin/false
libvirt-dnsmasq:x:121:129:Libvirt Dnsmasq,,,:/var/lib/libvirt/dnsmasq:/bin/false

Per correggere questo, basta cambiare l'uid di "libvirt-qemu" e i suoi file di appartenenza. "Libvirt Qemu" scompare quindi dal login!

Leggi ad esempio nixCraft - Come modificare un ID USER e GROUP su Linux per tutti i file di proprietà per sapere come fare.


"Per qualsiasi motivo l'utente di sistema" libvirt-gemu "viene creato con l'UID 64055 ..." . AFAICT, l'adozione di 64055 per l' libvirt-qemuUID e GID in Debian (e quindi nelle sue distribuzioni derivate) è stata introdotta in una patch libvirt-daemon-system, archiviata nel tracker di bug Debian il 14 novembre 2016 come # 844339 . Ulteriore spiegazione esiste nella segnalazione bug Debian n. 843881 e nella segnalazione bug Ubuntu n . 1637601 .
sampablokuper

Scavando un po 'di più in quelle segnalazioni di bug, vedo che il responsabile della manutenzione Debian ha pre-allocato UID / GID 64055 a libvirt-qemuun po' prima: l' 11 novembre 2016 .
sampablokuper

L'UID deve essere inferiore a 1000 per non essere visualizzato nel gestore utenti. 125 era nel mio caso (Ubuntu) ancora occupato da gdm, quindi trova il prossimo numero gratuito.
Sprinterfreak,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.