Автор Тема: Зависания обновления системы/установки пакетов  (Прочитано 4362 раз)

Оффлайн hasculdr

  • Завсегдатай
  • *
  • Сообщений: 672
Периодически повторяется одна и та же проблема: зависает автоматическое обновление системы (окно "Применение изменений" или как-то так, сейчас не вспомню), и установка RPM (как отдельных пакетов, так и через "Центр управления системой - Установка программ"). Возникает по одной и той же причине - достаточно "вручную" открыть и закрыть этот самый "Центр управления системой - Установка программ". При зависшем обновлении системы еще зависает окно Synaptic, kill'ы всех процессов по выводу ps -ax | grep synaptic не помогают. Установка RPM тоже зависает, kill'ы всех процессов по выводу ps -ax | grep rpm не помогают. Воспроизводимость бага не 100%, но хроническая.
Причина одна - нельзя одновременно ставить программы. Пока одна программа не освободит базу пакетов, вторая ждёт.
Как узнать, кто занимает базу пакетов?

Оффлайн sb

  • Модератор глобальный
  • *****
  • Сообщений: 8 999
Как узнать, кто занимает базу пакетов?
Любая программа, совершающая изменения в базе пакетов (synaptic/Центр управления системой - Установка программ/apt, возможно ещё rpm - этот вариант не проверял, т.к. используется в системе крайне редко).
PS Это не баг, а известное поведение. Другое дело, что информационного сообщения о блокировании базы не хватает.

Оффлайн hasculdr

  • Завсегдатай
  • *
  • Сообщений: 672
Ну так "визуально" все центры управления, синаптики, установщики rpm и пр. закрыты. А помогает только перезагрузка. Видимо, что-то остается запущенным.

Оффлайн sb

  • Модератор глобальный
  • *****
  • Сообщений: 8 999
У вас часом chromium с pepperflash не установлен ? Или firefox с ним же ?
Потому как если установлен pepperflash, то пакет его устанавливающий тянет из Сети гугл хром, потом распаковывает из него этот самый flash и кладет куда надо. Поэтому на установке этого пакета происходит пауза до тех пор, пока хром с гугла не скачается.

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 251
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Ну так "визуально"
А что показывают
ps -afxи
top

Оффлайн hasculdr

  • Завсегдатай
  • *
  • Сообщений: 672
У вас часом chromium с pepperflash не установлен ? Или firefox с ним же ?
Потому как если установлен pepperflash, то пакет его устанавливающий тянет из Сети гугл хром, потом распаковывает из него этот самый flash и кладет куда надо. Поэтому на установке этого пакета происходит пауза до тех пор, пока хром с гугла не скачается.
Есть хромиум (не пользуюсь, держу на случай проблем с фаерфоксом), пепер-флеша нет ни там, ни сям.
Зависания были и до установки хромиума.
А что показывают
ps -afxи
top
Без grep'ов смотреть? Позже попытаюсь воспроизвести зависания и выложу вывод.

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 251
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Ну в файл скиньте, там посмотрим. Можно ещё fuser ' Ом посмотреть что держит каталог с базами.

Оффлайн Koi

  • alt linux team
  • ***
  • Сообщений: 1 893
  • валар дохаэрис
    • Канал на youtube
Ну так "визуально" все центры управления, синаптики, установщики rpm и пр. закрыты. А помогает только перезагрузка. Видимо, что-то остается запущенным.
Иногда после закрытия синаптика остается процесс от apt, к сожалению не помню как точно называется, давно не было такого. В общем этот процесс не дает работать apt нормально, его надо просто завершить принудительно и все становится нормально.
По умолчанию активен только apt-indicator, смотрите в любом мониторе есть ли еще что-то лишнее.

Перезагрузка тоже вариант, но грузить пк заново из-за одного процесса не практично мне кажется.

Оффлайн hasculdr

  • Завсегдатай
  • *
  • Сообщений: 672
apt grep'ом еще не искал. Проверю по возможности.

Оффлайн ruslandh

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

Пример:
Запускаю synaptic, а в консоли вхожу в root и вижу кто "держит" базу:

# fuser -va /var/cache/apt/*
                     ПОЛЬЗ-ЛЬ    PID ДОСТУП КОМАНДА
/var/cache/apt/archives:
/var/cache/apt/genpkglist:
/var/cache/apt/gensrclist:
/var/cache/apt/pkgcache.bin:
                     root      16318 ....m synaptic
/var/cache/apt/srcpkgcache.bin:

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 251
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Теперь смотрю, кто при запущенном из центра управения установщике программ:
# fuser -v /var/cache/apt/*
                     ПОЛЬЗ-ЛЬ    PID ДОСТУП КОМАНДА
/var/cache/apt/pkgcache.bin:
                     root      17086 ....m apt-pipe

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 251
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
А вот вышел из acc, и вижу, что apt-pipe по-прежнему держит базы apt:
# fuser -v /var/cache/apt/*
                     ПОЛЬЗ-ЛЬ    PID ДОСТУП КОМАНДА
/var/cache/apt/pkgcache.bin:
                     root      17086 ....m apt-pipe

Поздравляю - вы нашли багу, пишите в багзилу. (я смотрел в Сизифе).

Оффлайн ruslandh

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

Оффлайн Тарен

  • Завсегдатай
  • *
  • Сообщений: 78
  • "Жизнь как сон...сплошной обман..."
    Теперь осталось научиться самому без знаний программирования устранять этот баг.
.....мда....веское основание для освоения науки....
« Последнее редактирование: 05.02.2017 13:54:06 от Cвасти_Linux »

Оффлайн hasculdr

  • Завсегдатай
  • *
  • Сообщений: 672
Знаний программирования тут не нужно).
# ps -aux | grep pipe
# kill <номер процесса, где написано "pipe:ready">
И зависший процесс установки/обновления возобновится).