В p9 pulseaudio под иксами работал нормально из коробки (как я понимаю, запущенный от пользователя при старте сессии). Сейчас (в сизифе, на который этот p9 был обновлён через p10) не работает: pavucontrol к нему не может подключиться, в systemd вообще нет такого юнита, в списке процессов он отсутствует, а при ручном запуске pulseaudio выдаёт такое и вываливается: W: [pulseaudio] pid.c: Stale PID file, overwriting. E: [pulseaudio] module-stream-restore.c: Assertion 'pa_database_unset(u->database, &key) >= 0' failed at ../src/modules/module-stream-restore.c:2294, function clean_up_db(). Aborting. Версия пакета в системе - pulseaudio-15.0-alt1.x86_64.
как эта история будет выглядеть, если создать и зайти новым пользователем ?
(Ответ для Sergey Bolshakov на комментарий #1) > как эта история будет выглядеть, если создать и зайти новым пользователем ? Да, правда, pulseaudio под свежим пользователем работает нормально. Тогда это разваливается на два вопроса: 1) Как сделать, чтобы работало под созданным в p9 пользователем? 2) Как сделать, чтобы при обновлении всё правильно переделывалось, не ломая pulseaudio?
(In reply to makise-homura from comment #2) > 1) Как сделать, чтобы работало под созданным в p9 пользователем? Попробуйте убрать в сторонку $HOME/.config/plulse и перезайти. Удалять совсем не стоит.
(In reply to Ivan A. Melnikov from comment #3) > (In reply to makise-homura from comment #2) > > 1) Как сделать, чтобы работало под созданным в p9 пользователем? > > Попробуйте убрать в сторонку $HOME/.config/plulse и перезайти. Удалять > совсем не стоит. 1) да, скорее всего дело в содержимом .config/pulse 2) вероятно, следовало зайти в систему в момент, когда её состояние соответствовало p10
Спасибо за наводку, действтительно, всё сработало. Проблема в файле ~/.config/pulse/*-stream-volumes.gdbm: если его убрать, то pulseaudio при запуске его пересоздаст вновь и будет нормально работать; иначе крашнется. Мб, стоит в каком-нибудь postinst (или как это называется в RPM-пакетах) для pulseaudio удалять этот файл в каталогах всех пользователей, зарегистрированных в системе, или что-то ещё такое делать?
(In reply to makise-homura from comment #5) > Спасибо за наводку, действтительно, всё сработало. Проблема в файле > ~/.config/pulse/*-stream-volumes.gdbm: если его убрать, то pulseaudio при > запуске его пересоздаст вновь и будет нормально работать; иначе крашнется. > > Мб, стоит в каком-нибудь postinst (или как это называется в RPM-пакетах) для > pulseaudio удалять этот файл в каталогах всех пользователей, > зарегистрированных в системе, или что-то ещё такое делать? что-то такое должно было произойти средствами самого pulseaudio после перехода с p9 на p10. прыжок с p9 до sisyphus в сценарии миграции не рассматривался
(Ответ для Sergey Bolshakov на комментарий #6) > что-то такое должно было произойти средствами самого pulseaudio после > перехода с p9 на p10. Значит, похоже, не произошло. Возможно, надо пофиксить и бэкпортнуть в p10? > прыжок с p9 до sisyphus в сценарии миграции не > рассматривался Я обновлял именно ступенчато: p9->p10, потом p10->sysiphus.
(In reply to makise-homura from comment #7) > (Ответ для Sergey Bolshakov на комментарий #6) > > что-то такое должно было произойти средствами самого pulseaudio после > > перехода с p9 на p10. > Значит, похоже, не произошло. Возможно, надо пофиксить и бэкпортнуть в p10? > > > прыжок с p9 до sisyphus в сценарии миграции не > > рассматривался > Я обновлял именно ступенчато: p9->p10, потом p10->sysiphus. заходили ли в пользователя в p10 ? миграция происходит не при обновлении пакета pulseaudio, но при запуске в сеансе пользователя
и хорошо бы знать, какой DE при этом использовался
(Ответ для Sergey Bolshakov на комментарий #8) > заходили ли в пользователя в p10 ? миграция происходит не при обновлении > пакета pulseaudio, но при запуске в сеансе пользователя Не заходил; но получается, что при таком обновлении необходимо заходить под каждым пользователем, просто чтобы pulseaudio мигрировало свою базу - даже если этих пользователей там десятки? Выглядит как-то неудобно. (Ответ для Sergey Bolshakov на комментарий #9) > и хорошо бы знать, какой DE при этом использовался MATE.
в задании #296636 собержится возможное решение проблемы
По указанным шагам ошибка не воспроизвелась. - Версии пакетов: -- p10: pulseaudio-daemon-14.2-alt6.x86_64 pulseaudio-utils-14.2-alt6.x86_64 pavucontrol-4.0-alt1.x86_64 -- sisyphus: pulseaudio-daemon-16.1-alt1.x86_64 pulseaudio-utils-16.1-alt1.x86_64 pavucontrol-5.0-alt1 - Стенд: alt-workstation-9.2 - Сделал следующее: 1) Обновил систему до p9: # apt-get update && apt-get dist-upgrade -y && update-kernel # reboot 2) Выполнил вход в сеанс пользователя, проверил pulseaudio - работает корректно: $ ps aux | grep pulse test 3208 0.6 0.5 768208 18284 ? Sl 18:00 0:00 /usr/bin/pulseaudio --start --log-target=syslog $ pavucontrol - открывает панель управления звуком. 3) Обновил систему до p10: # apt-repo rm all && apt-repo add p10 # echo "%_priority_distbranch p10" >>/etc/rpm/macros # apt-get update && apt-get dist-upgrade -y # reboot 4) Выполнил вход в сеанс пользователя, проверил работу pulseaudio - процесс запущен, управление через pavucontrol работает. 5) Обновил систему до Sisyphus: # apt-repo rm all && apt-repo add sisyphus # sed -i 's/p10/sisyphus/' /etc/rpm/macros # apt-get update && apt-get dist-upgrade -y # reboot 6) Выполнил вход в сеанс пользователя, проверил работу pulseaudio. - Результат: pulseaudio работает корректно после каждого обновления.