Автор Тема: Обновление p8->Sisyphus внутри Virtuabox  (Прочитано 1361 раз)

Оффлайн Dmytro

  • Мастер
  • ***
  • Сообщений: 1 001
Столкнулся с довольно интересной проблемой. Во время обновления вылетает x-сервер. Наблюдается это при весьма специфических условиях.

Как воспроизвести.

Хост:
p8 x64, Virtualbox 5.1.10 + Extension Pack От  железа хоста зависеть не должно.

Гость:
 p8 x64. Испытано на декабрьских стартеркитах MATE, XFCE-SysVinit, XFCE-systemd. Также присутствует на Simply, обновленном до p8. На нем проявляется острее, т.к. там есть проблемы с liblua5.1, после решения которых x-сервер так и не завелся.

Действия:
1. Установить Starterkit на VB.
2. Обновить пакеты и ядро до текущего p8.
3. Перезагрузиться.
4. Не залогиниваясь в "иксах" перейти на другую консоль.
5. Произвести обновление до Sisyphus (apt-get dist-upgrade && update-kernel)

Результат:
Во время установки пакетов (dist-upgrade) вылетает x-сервер и начинает циклически непрерывно перезапускаться на 1 консоли с интервалом 2-5 сек.

Обход. Вариант 1:
Залогиниться в "иксах" перед запуском dist-upgrade. В таком случае вылеты "иксов" не ловил.

Обход. Вариант 2:
Давать для обновления команду вида:
#apt-get -y dist-upgrade && update-kernel -f && rebootВ этом случае "иксы" нормально стартуют после обновления и перезагрузки или, иногда, запускаются во время установки ядра.
Недостаток: в случае возникновения проблем невозможно нормально работать в консоли.

Обход. Вариант 3:
Удаленно обновлять по ssh (желательно использовать screen)

Встречался ли кто-нибудь с подобным?

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 246
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: Обновление p8->Sisyphus внутри Virtuabox
« Ответ #1 : 12.02.2017 14:56:47 »
Встречался ли кто-нибудь с подобным?
Вообще-то вылет X-в при обновлении - это штатная ситуация. Можно даже теоретически сказать при обновлении каких пакетов вылетят X-ы.

Оффлайн Dmytro

  • Мастер
  • ***
  • Сообщений: 1 001
Re: Обновление p8->Sisyphus внутри Virtuabox
« Ответ #2 : 12.02.2017 15:06:33 »
Встречался ли кто-нибудь с подобным?
Вообще-то вылет X-в при обновлении - это штатная ситуация. Можно даже теоретически сказать при обновлении каких пакетов вылетят X-ы.
Потому и запускаю крупные обновления через консоль, что предполагаю вылет. Проблема не в том, что "иксы" вылетают при обновлении, а в том, что начинают циклически перезапускаться и, фактически, блокируют доступ к физической консоли. Чтобы подрубиться к такой машине по ssh пришлось потратить несколько минут, переключаясь на другую консоль и вводя по 2-3 символа. Это только для того, чтобы залогиниться и запустить sshd. В случае более сложной конфигурации (фаервол, усиленная безапасность sshd и т.д.) время многократно увеличится.

Как перезапуск "иксов" остановить не подскажете?
« Последнее редактирование: 12.02.2017 15:09:54 от Dmytro »

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 246
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: Обновление p8->Sisyphus внутри Virtuabox
« Ответ #3 : 13.02.2017 07:50:41 »
Чтобы подрубиться к такой машине по ssh пришлось потратить несколько минут, переключаясь на другую консоль и вводя по 2-3 символа.
Циклический перезапуск ...
Надо логи смотреть, по какой причине X-ы пришли в такое состояние. А так - можно только предположить, что не перезапустился сервер, vbox..что-то_там, обеспечивающий работу x-в внутри VBoх.
https://bugzilla.altlinux.org/show_bug.cgi?id=32493

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 246
  • Учиться .... Телепатами не рождаются, ими ....
    • Email

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 246
  • Учиться .... Телепатами не рождаются, ими ....
    • Email

Оффлайн sirares

  • Давно тут
  • **
  • Сообщений: 187
Re: Обновление p8->Sisyphus внутри Virtuabox
« Ответ #6 : 13.02.2017 09:08:21 »
Как перезапуск "иксов" остановить не подскажете?
1. при запуске в grub нажать Tab
2. выбрать редактирование загрузки e
3. в строке загрузки linux все после root=uuid=XXXXX ro заменить на single
4. нажать Crtl+C или F10
будет произведена загрузка в root без X.
загрузка linux без иксов
загрузка linux без иксов 2
проверил - работает. Ну а дальше смотрите логи.

dango

  • Гость
Re: Обновление p8->Sisyphus внутри Virtuabox
« Ответ #7 : 13.02.2017 13:36:04 »
Встречался ли кто-нибудь с подобным?
Да, было такое. В ВМ с регуляркой с LXDE. Т.к. при тестировании приходилось ставить с нуля несколько раз, то вылет иксов был почти стабилен. Здесь отмечу, что в процессе обновлялся systemd и udev до версии 232. Но пару раз иксы таки не упали.

Оффлайн Dmytro

  • Мастер
  • ***
  • Сообщений: 1 001
Re: Обновление p8->Sisyphus внутри Virtuabox
« Ответ #8 : 13.02.2017 14:25:57 »
проверил - работает. Ну а дальше смотрите логи.
Надо логи смотреть, по какой причине X-ы пришли в такое состояние.
В логах "иксов" ошибок нет. Сервер запускается и останавливается. И так по кругу.

А так - можно только предположить, что не перезапустился сервер, vbox..что-то_там, обеспечивающий работу x-в внутри VBoх.
Это в journalctl?

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 246
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: Обновление p8->Sisyphus внутри Virtuabox
« Ответ #9 : 13.02.2017 16:00:56 »
Ну, начните с негоб

Оффлайн Dmytro

  • Мастер
  • ***
  • Сообщений: 1 001
Re: Обновление p8->Sisyphus внутри Virtuabox
« Ответ #10 : 14.02.2017 20:36:22 »
Полный лог текущей загрузки в атаче log2.txt

В журнале вот такое по кругу вертится:
Спойлер
фев 14 19:31:07 simply32.localdomain systemd[1]: Started Display Manager.
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.00s] DEBUG: Logging to /var/log/lightdm/lightdm.log
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.00s] DEBUG: Starting Light Display Manager 1.16.7, UID=0 PID=11089
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.00s] DEBUG: Loading configuration dirs from /usr/share/lightdm/lightdm.conf.d
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.00s] DEBUG: Loading configuration dirs from /usr/local/share/lightdm/lightdm.conf.d
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.00s] DEBUG: Loading configuration dirs from /etc/xdg/lightdm/lightdm.conf.d
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.00s] DEBUG: Loading configuration from /etc/lightdm/lightdm.conf
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.00s] DEBUG: Using D-Bus name org.freedesktop.DisplayManager
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.03s] DEBUG: Registered seat module xlocal
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.03s] DEBUG: Registered seat module xremote
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.03s] DEBUG: Registered seat module unity
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.08s] DEBUG: Monitoring logind for seats
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.08s] DEBUG: New seat added from logind: seat0
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.08s] DEBUG: Seat seat0: Loading properties from config section Seat:*
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.08s] DEBUG: Seat seat0: Starting
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.08s] DEBUG: Seat seat0: Creating greeter session
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.08s] DEBUG: Seat seat0: Creating display server of type x
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.10s] DEBUG: Using VT 1
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.10s] DEBUG: Seat seat0: Starting local X display on VT 1
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.10s] DEBUG: DisplayServer x-0: Logging to /var/log/lightdm/x-0.log
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.10s] DEBUG: DisplayServer x-0: Writing X server authority to /var/run/lightdm/root/:0
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.10s] DEBUG: DisplayServer x-0: Launching X Server
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.11s] DEBUG: Launching process 11119: /etc/X11/xinit/xserverrc :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt1 -novtswitch
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.13s] DEBUG: DisplayServer x-0: Waiting for ready signal from X server :0
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.13s] DEBUG: Acquired bus name org.freedesktop.DisplayManager
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.14s] DEBUG: Registering seat with bus path /org/freedesktop/DisplayManager/Seat0
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.14s] WARNING: Error getting user list from org.freedesktop.Accounts: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Accounts was not provided by any .service files
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.15s] DEBUG: Loading user config from /etc/lightdm/users.conf
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.15s] DEBUG: User dmytro added
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.76s] DEBUG: Got signal 10 from process 11119
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.76s] DEBUG: DisplayServer x-0: Got signal from X server :0
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.76s] DEBUG: DisplayServer x-0: Connecting to XServer :0
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.80s] DEBUG: Seat seat0: Display server ready, starting session authentication
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.81s] DEBUG: Session pid=11128: Started with service 'lightdm-greeter', username '_ldm'
фев 14 19:31:08 simply32.localdomain lightdm[11128]: Error getting user list from org.freedesktop.Accounts: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Accounts was not provided by any .service files
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.90s] DEBUG: Session pid=11128: Authentication complete with return value 0: Success
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.90s] DEBUG: Seat seat0: Session authenticated, running command
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.90s] DEBUG: Session pid=11128: Running command /usr/sbin/lightdm-gtk-greeter
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.90s] DEBUG: Creating shared data directory /var/lib/lightdm-data/_ldm
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.90s] DEBUG: Session pid=11128: Logging to /var/log/lightdm/x-0-greeter.log
фев 14 19:31:08 simply32.localdomain lightdm[11128]: pam_unix(lightdm-greeter:session): Session opened for _ldm by (uid=0)
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+1.06s] DEBUG: Activating VT 1
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+1.06s] DEBUG: Activating ConsoleKit session e4f8c52eb4f4ed0beee125b158a0adac-1487089868.582909-1643122847
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+1.07s] WARNING: Error activating ConsoleKit session: GDBus.Error:org.freedesktop.DBus.GLib.UnmappedError.CkVtMonitorError.Code0: Session is already active
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+1.41s] DEBUG: Session pid=11128: Greeter connected version=1.16.7 resettable=false
фев 14 19:31:09 simply32.localdomain lightdm[11128]: pam_unix(lightdm-greeter:session): Session closed for _ldm
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.19s] DEBUG: Session pid=11128: Greeter closed communication channel
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.19s] DEBUG: Session pid=11128: Exited with return value 6
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.19s] DEBUG: Seat seat0: Session stopped
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.19s] DEBUG: Seat seat0: Stopping; failed to start a greeter
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.19s] DEBUG: Seat seat0: Stopping
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.19s] DEBUG: Seat seat0: Stopping display server
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.19s] DEBUG: Sending signal 15 to process 11119
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.29s] DEBUG: Process 11119 exited with return value 0
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.29s] DEBUG: DisplayServer x-0: X server stopped
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.29s] DEBUG: Releasing VT 1
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.29s] DEBUG: DisplayServer x-0: Removing X server authority /var/run/lightdm/root/:0
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.29s] DEBUG: Seat seat0: Display server stopped
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.29s] DEBUG: Seat seat0: Stopped
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.29s] DEBUG: Required seat has stopped
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.29s] DEBUG: Stopping display manager
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.29s] DEBUG: Display manager stopped
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.29s] DEBUG: Stopping daemon
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+2.30s] DEBUG: Exiting with return value 1
фев 14 19:31:09 simply32.localdomain systemd[1]: prefdm.service: Main process exited, code=exited, status=1/FAILURE
фев 14 19:31:09 simply32.localdomain systemd[1]: prefdm.service: Unit entered failed state.
фев 14 19:31:09 simply32.localdomain systemd[1]: prefdm.service: Failed with result 'exit-code'.
фев 14 19:31:10 simply32.localdomain systemd[1]: prefdm.service: Service has no hold-off time, scheduling restart.
фев 14 19:31:10 simply32.localdomain systemd[1]: Stopped Display Manager.

Проблема явно вот тут:фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.14s] WARNING: Error getting user list from org.freedesktop.Accounts: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Accounts was not provided by any .service files
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.15s] DEBUG: Loading user config from /etc/lightdm/users.conf
фев 14 19:31:07 simply32.localdomain prefdm[11089]: [+0.15s] DEBUG: User dmytro added
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.76s] DEBUG: Got signal 10 from process 11119
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.76s] DEBUG: DisplayServer x-0: Got signal from X server :0
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.76s] DEBUG: DisplayServer x-0: Connecting to XServer :0
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.80s] DEBUG: Seat seat0: Display server ready, starting session authentication
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.81s] DEBUG: Session pid=11128: Started with service 'lightdm-greeter', username '_ldm'
фев 14 19:31:08 simply32.localdomain lightdm[11128]: Error getting user list from org.freedesktop.Accounts: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Accounts was not provided by any .service files
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.90s] DEBUG: Session pid=11128: Authentication complete with return value 0: Success
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.90s] DEBUG: Seat seat0: Session authenticated, running command
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.90s] DEBUG: Session pid=11128: Running command /usr/sbin/lightdm-gtk-greeter
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.90s] DEBUG: Creating shared data directory /var/lib/lightdm-data/_ldm
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+0.90s] DEBUG: Session pid=11128: Logging to /var/log/lightdm/x-0-greeter.log
фев 14 19:31:08 simply32.localdomain lightdm[11128]: pam_unix(lightdm-greeter:session): Session opened for _ldm by (uid=0)
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+1.06s] DEBUG: Activating VT 1
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+1.06s] DEBUG: Activating ConsoleKit session e4f8c52eb4f4ed0beee125b158a0adac-1487089868.582909-1643122847
фев 14 19:31:08 simply32.localdomain prefdm[11089]: [+1.07s] WARNING: Error activating ConsoleKit session: GDBus.Error:org.freedesktop.DBus.GLib.UnmappedError.CkVtMonitorError.Code0: Session is already active
фев 14 19:31:09 simply32.localdomain prefdm[11089]: [+1.41s] DEBUG: Session pid=11128: Greeter connected version=1.16.7 resettable=false
фев 14 19:31:09 simply32.localdomain lightdm[11128]: pam_unix(lightdm-greeter:session): Session closed for _ldm

Где-то на форуме похожее видел.
« Последнее редактирование: 14.02.2017 22:47:22 от Dmytro »

Оффлайн Dmytro

  • Мастер
  • ***
  • Сообщений: 1 001
Re: Обновление p8->Sisyphus внутри Virtuabox
« Ответ #11 : 14.02.2017 23:03:47 »
Вот логи lightdm