Я застреваю в цикле входа в систему с 64-битной Ubuntu 18.04 (4.15.0-46-generic x86_64 GNU/Linux
), когда пытаюсь войти в систему с помощью «Unity (по умолчанию)» (устанавливается после: ] https://linuxconfig.org/how-to-install-unity-desktop-on-ubuntu-18-04-bionic-beaver-linux ). Все было хорошо до установки / работы с libprotobuf10 / 15 от стороннего PPA (nextgis: https://launchpad.net/~nextgis/+archive/ubuntu/ppa?field.series_filter=bionic ).
Здесь не помог ни один из ответов: Ubuntu застревает в цикле входа в систему
У меня нет сторонних графических драйверов, таких как NVidia или AMD;
$ sudo lshw -c video
*-display
description: VGA compatible controller
product: HD Graphics 5500
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 09
width: 64 bits
clock: 33MHz
capabilities: msi pm vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:45 memory:f0000000-f0ffffff memory:e0000000-efffffff ioport:3000(size=64) memory:c0000-dffff
Я думал, что единство было повреждено после установки python3-protobuf
из nextgis
PPA: libprotobuf15 приглашение установки для удаления системных пакетов , но после деактивации этого PPA, apt-get update
и переустановки ubuntu-unity-desktop
и официального python3-protobuf
проблема все еще существует;
$ sudo apt-cache policy ubuntu-unity-desktop
ubuntu-unity-desktop:
Installed: 0.1
Candidate: 0.1
Version table:
*** 0.1 500
500 http://ch.archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
100 /var/lib/dpkg/status
$ sudo apt-cache policy python3-protobuf
python3-protobuf:
Installed: 3.0.0-9.1ubuntu1
Candidate: 3.0.0-9.1ubuntu1
Version table:
*** 3.0.0-9.1ubuntu1 500
500 http://ch.archive.ubuntu.com/ubuntu bionic/main amd64 Packages
100 /var/lib/dpkg/status
Я также попытался удалить .Xauthority
и .ICEauthority
, а также перенастроить lightdm
:
$ sudo dpkg-reconfigure lightdm
, но ни один из них не сработал.
Я уточняю, что могу без проблем войти в систему с помощью gnome, но благодаря единству мой экран несколько секунд становится черным, а затем я снова вижу экран входа в сеанс.
Как восстановить сеанс единства?
Это может помочь:
последняя строка file .xsession-errors
:
A dependency job for unity-session.target failed. See 'journalctl -xe' for details.
И эти строки в выводе команды journalctl -xe
, которую я запустил сразу после ошибочного входа в систему с единицей, вероятно, говорят нам, что с аутентификацией lightdm
что-то не так: [ 1146]
mar 25 11:26:57 username-laptop-1804 lightdm[5441]: PAM unable to dlopen(pam_kwallet.so): /lib/security/pam_kwallet.so: cannot open shared object file: No such file or directory
mar 25 11:26:57 username-laptop-1804 lightdm[5441]: PAM adding faulty module: pam_kwallet.so
mar 25 11:26:57 username-laptop-1804 lightdm[5441]: PAM unable to dlopen(pam_kwallet5.so): /lib/security/pam_kwallet5.so: cannot open shared object file: No such file or directory
mar 25 11:26:57 username-laptop-1804 lightdm[5441]: PAM adding faulty module: pam_kwallet5.so
mar 25 11:26:57 username-laptop-1804 lightdm[5441]: pam_succeed_if(lightdm:auth): requirement "user ingroup nopasswdlogin" not met by user "username"
mar 25 11:27:02 username-laptop-1804 systemd-logind[776]: Removed session c6.
-- Subject: Session c6 has been terminated
Некоторые из dmesg
выводят после 1 неудачного входа в систему с единицей:
$ dmesg | grep -i "warn\|err\|lightdm\|unity"
[ 0.000000] ACPI: IRQ0 used by override.
[ 0.000000] ACPI: IRQ9 used by override.
[ 0.045146] ACPI: EC: interrupt blocked
[ 0.061268] ACPI Error: Needed type [Reference], found [Integer] (ptrval) (20170831/exresop-103)
[ 0.061300] ACPI Error: Method parse/execution failed \_PR.CPU0._PDC, AE_AML_OPERAND_TYPE (20170831/psparse-550)
[ 0.063508] ACPI: Using IOAPIC for interrupt routing
[ 0.072809] ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 9 10 *11)
[ 0.072923] ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 *9 10 11)
[ 0.073033] ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11)
[ 0.073143] ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 5 *6 7 9 10 11)
[ 0.073252] ACPI: PCI Interrupt Link [LNKE] (IRQs 3 4 5 6 7 9 10 *11)
[ 0.073334] ACPI: PCI Interrupt Link [LNKF] (IRQs 3 4 5 6 7 9 10 11) *0, disabled.
[ 0.073444] ACPI: PCI Interrupt Link [LNKG] (IRQs 3 4 5 6 7 9 *10 11)
[ 0.073553] ACPI: PCI Interrupt Link [LNKH] (IRQs 3 4 5 6 *7 9 10 11)
[ 0.101434] ACPI: EC: interrupt unblocked
[ 3.588547] RAS: Correctable Errors collector initialized.
[ 6.937212] e1000e 0000:00:19.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
[ 10.673768] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro
[ 10.857401] random: 7 urandom warning(s) missed due to ratelimiting
[ 12.282650] audit: type=1400 audit(1553512054.380:10): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/lightdm/lightdm-guest-session" pid=603 comm="apparmor_parser"
[ 12.282653] audit: type=1400 audit(1553512054.380:11): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/lightdm/lightdm-guest-session//chromium" pid=603 comm="apparmor_parser"
Еще одна вещь; нет различий между выходными данными dmesg
до , пытающимися войти (я вывожу $ dmesg > dmesg0.txt
до), и после неудачной попытки с единицей (я вывожу $ dmesg > dmesg1.txt
после ).
Затем;
$ diff dmesg0.txt dmesg1.txt
не дает мне никакой дополнительной информации.
Еще одна часть информации; результат команды unity --debug
при запуске из CLI перед началом любого сеанса у приветствующего:
/usr/lib/x86_64-linux-gnu/unity/compiz-config-profile-setter: error while loading shared libraries: libprotobuf.so.10: cannot open shared object file: No such file or directory
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
/usr/bin/compiz (core) - Info: Loading plugin: core
/usr/bin/compiz (core) - Info: Starting plugin: core
[New Thread 0x7ffff3118700 (LWP 12410)]
Invalid MIT-MAGIC-COOKIE-1 key/usr/bin/compiz (core) - Fatal: Couldn't open display :0
/usr/bin/compiz (core) - Info: Stopping plugin: core
/usr/bin/compiz (core) - Info: Unloading plugin: core
[Thread 0x7ffff3118700 (LWP 12410) exited]
[Inferior 1 (process 12406) exited with code 01]
No stack.
WARNING: no DISPLAY variable set, setting it to :0
Я наконец преуспел.
Хорошей подсказкой была эта ошибка из команды unity --debug
, о которой я упомянул:
/usr/lib/x86_64-linux-gnu/unity/compiz-config-profile-setter: error while loading shared libraries: libprotobuf.so.10: cannot open shared object file: No such file or directory
Даже если я деактивировал PPA nextgis, libprotobuf10
упоминалась как версия 3.5.x в apt-cache policy
, что означало была версия пакетов из этого PPA. Но у apt-cache policy
нет кода «500» и нет связанного с ним PPA-URL, поскольку был удален следующий PPA-файл PPA, с которого вышла версия 3.5.x! ]
И команда apt-get install --reinstall libprotobuf10
не сработала, поскольку она не смогла загрузить (перейти на более раннюю версию) официальную версию 3.0.x из официальных репозиториев!
Итак, я удалил его (libprotobuf10
) с помощью apt-get
:
sudo apt-get remove libprotobuf10
, и эта команда хотела удалить все эти пакеты как хорошо:
compiz compiz-gnome evolution-data-server gdm3 gnome-online-accounts gnome-shell gnome-shell-extension-dash-to-panel gnome-shell-extensions gnome-todo libcompizconfig0 libebook-1.2-19 libebook-contacts-1.2-2 libedata-book-1.2-25 libphonenumber7 libprotobuf10 libprotoc10 python3-macaroonbakery python3-protobuf ubuntu-desktop ubuntu-session ubuntu-unity-desktop unity unity-control-center unity-session unity-tweak-tool
что я подтвердил!
Чтобы быть в безопасности, перед подтверждением я скопировал / вставил этот список пакетов в текстовый файл! После чего я переустановил их все с apt
.
И конечно, я переустановил libprotobuf10
. На этот раз это сработало, и apt
удалось установить версию 3.0.x из официальных репозиториев Ubuntu.
Это исправило проблему единого входа.
Сейчас:
$ find /usr -iname "*libprotobuf.so*"
/usr/lib/x86_64-linux-gnu/libprotobuf.so.10.0.0
/usr/lib/x86_64-linux-gnu/libprotobuf.so.10