Проблемы с зависимостями или что такое ppa-purge

Стандартный
           

Без имени

Недавно столкнулся со следующей проблемой в Ubuntu 14.04: при добавлении любого файла (аудио, видео, изображения) в программу Bombono DVD она аварийно завершалась. Говоря простым языком, программа просто «вылетала». Можно было восстановить рабочую систему из образа, но хотелось найти и победить проблему.

По умолчанию в Убунту 14.04 уже нет в репозитории утилиты ffmpeg, поэтому я установил его из стороннего источника:

sudo apt-add-repository ppa:jon-severinsson/ffmpeg
sudo apt-get update
sudo apt-get install ffmpeg

Примерно после этого я заметил проблему, поэтому решил удалить данный репозиторий и ffmpeg:

sudo apt-get remove ffmpeg

но Терминал выдал предупреждение, что будут удалены множество нужных мне программ:

sudo apt-get remove ffmpeg
[sudo] password for dm:
no talloc stackframe at ../source3/param/loadparm.c:4864, leaking memory
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Следующие пакеты устанавливались автоматически и больше не требуются:
bombono-dvd-data dvdisaster dvdisaster-doc dvdrip-doc dvdrip-utils
dvdstyler-data dvgrab enca kdenlive-data libanyevent-perl
libasync-interrupt-perl libevent-execflow-perl libevent-perl
libevent-rpc-perl libgtk2-ex-formfactory-perl libguard-perl libqt4pas5
libqt5clucene5 libqt5help5 librecode0 libwxsvg0 lsdvd
qt5-image-formats-plugins scons subtitleripper transcode transcode-doc
Для их удаления используйте «apt-get autoremove».
Пакеты, которые будут УДАЛЕНЫ:
bombono-dvd devede dvdrip dvdstyler ffdiaporama ffdiaporama-texturemate
ffmpeg kdenlive libav-tools winff winff-gtk2
обновлено 0, установлено 0 новых пакетов, для удаления отмечено 11 пакетов, и 15 пакетов не обновлено.
После данной операции, объём занятого дискового пространства уменьшится на 163 MB.
Хотите продолжить? [Д/н]

Для начала я удалил репозиторий ffmpeg:

sudo add-apt-repository --remove ppa:jon-severinsson/ffmpeg

Затем снова вел команду для удаления ffmpeg и уже утвердительно согласился с удалением всех программ, которые предложила система. После этого я полностью удалил ffmpeg и все его компоненты:

sudo apt-get purge ffmpeg
sudo apt-get --purge remove libav-tools
sudo apt-get --purge autoremove

После всего этого я снова установил удаленные программы и проверил наличие проблемы. К сожалению эти действия не спасли ситуацию и я полез на форумы. Предложили следующий вариант решения. Рекомендовали установить ppa-purge, которая должна удалять указанный репозиторий и откатывать зависимости, связанные с этим источником, до официального источника вашего дистрибутива. Установим утилиту:

sudo apt-get install ppa-purge

Далее будем правильно удалять репозитории, которые могли создать проблему с зависимостями командой:

sudo ppa-purge ppa:репозиторий

например:

sudo ppa-purge ppa:flozz-flozz-trusty

Логически я понимал, что в моем случае нужно начать с источников, которые связаны с мультимедиа. Удалив несколько репозиториев я постепенно дошел до источника — jon-severinsson-ffmpeg-trusty. После команды удаления этого источника, Терминал выдал огромное сообщение:

sudo ppa-purge ppa:jon-severinsson/ffmpeg
Updating packages lists
PPA to be removed: jon-severinsson ffmpeg
Package revert list generated:
ffmpeg/trusty libav-tools/trusty libavcodec-extra/trusty
libavcodec-extra-54:amd64/trusty libavdevice53:amd64/trusty
libavfilter3:amd64/trusty libavformat54:amd64/trusty
libavresample1:amd64/trusty libavutil52:amd64/trusty libpostproc52:amd64/trusty
libswresample0:amd64/trusty libswscale2:amd64/trusty

Disabling jon-severinsson PPA from
/etc/apt/sources.list.d/jon-severinsson-ffmpeg-trusty.list
Updating packages lists
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
E: Выпуск «trusty» для «ffmpeg» не найден
E: Выпуск «trusty» для «libswresample0» не найден
Не удаётся найти архив «trusty» пакета «ffmpeg»
Не удаётся найти архив «trusty» пакета «libswresample0»
Не удаётся найти архив «trusty» пакета «ffmpeg»
Не удаётся найти архив «trusty» пакета «libswresample0»
Следующие пакеты будут ЗАМЕНЕНЫ НА БОЛЕЕ СТАРЫЕ:
libav-tools libavcodec-extra libavcodec-extra-54 libavdevice53
libavfilter3 libavformat54 libavresample1 libavutil52 libpostproc52
libswscale2
0 пакетов обновлено, 0 установлено новых, 10 пакетов заменены на старые версии, 0 пакетов отмечено для удаления, и 22 пакетов не обновлено.
Необходимо получить 6.490 kБ архивов. После распаковки 7.153 kБ будет занято.
Следующие пакеты имеют неудовлетворённые зависимости:
gstreamer1.0-libav : Зависит: libavcodec54 (>= 6:9.1-1) но его установка не запланирована. или
libavcodec-extra-54 (>= 6:9.13) но будет установлен 6:9.11-2ubuntu2.
audacity : Зависит: libavcodec54 (>= 6:9.1-1) но его установка не запланирована. или
libavcodec-extra-54 (>= 6:9.13) но будет установлен 6:9.11-2ubuntu2.
vlc-nox : Зависит: libavcodec54 (>= 6:9.1-1) но его установка не запланирована. или
libavcodec-extra-54 (>= 6:9.16) но будет установлен 6:9.11-2ubuntu2.
ffmpeg : Зависит: libavcodec54 (>= 7:1.2.5~) но его установка не запланирована. или
libavcodec-extra-54 (>= 7:1.2.5~) но будет установлен 6:9.11-2ubuntu2.
Зависит: libavdevice53 (>= 7:1.2.5~) но будет установлен 6:9.11-2ubuntu2.
Зависит: libavfilter3 (>= 7:1.2.5~) но будет установлен 6:9.11-2ubuntu2.
Зависит: libavformat54 (>= 7:1.2.5~) но будет установлен 6:9.11-2ubuntu2.
Зависит: libavresample1 (>= 7:1.2.5~) но будет установлен 6:9.11-2ubuntu2.
Зависит: libavutil52 (>= 7:1.2.5~) но будет установлен 6:9.11-2ubuntu2.
Зависит: libpostproc52 (>= 7:1.2.5~) но будет установлен 6:0.git20120821-4.
Зависит: libswscale2 (>= 7:1.2.5~) но будет установлен 6:9.11-2ubuntu2.
Ломает: libav-tools (< 7:0.10~) но будет установлен 6:9.11-2ubuntu2.
libswresample0 : Зависит: libavutil52 (>= 7:1.2.5~) но будет установлен 6:9.11-2ubuntu2.
Следующие действия разрешат зависимости:

Удалить следующие пакеты:
1) audacity
2) ffmpeg
3) gstreamer1.0-libav
4) handbrake-gtk
5) libswresample0
6) totem-plugin-arte
7) vlc
8) vlc-nox
9) vlc-plugin-notify
10) vlc-plugin-pulse
11) vlc-plugin-samba

Оставить следующие зависимости неразрешёнными:
12) kazam рекомендует gstreamer1.0-libav
13) kino рекомендует ffmpeg
14) ubuntu-restricted-addons рекомендует gstreamer1.0-libav
15) audacity-data рекомендует audacity
16) imagination рекомендует ffmpeg
17) foobnix рекомендует ffmpeg
18) vlc рекомендует vlc-plugin-samba (= 2.2.0+ppa2.1)
Принять данное решение? [Y/n/q/?]

Следующие пакеты будут ЗАМЕНЕНЫ НА БОЛЕЕ СТАРЫЕ:
libav-tools libavcodec-extra libavcodec-extra-54 libavdevice53
libavfilter3 libavformat54 libavresample1 libavutil52 libpostproc52
libswscale2
Следующие пакеты будут УДАЛЕНЫ:
audacity{a} audacity-data{u} ffmpeg{a} gstreamer1.0-libav{a}
handbrake-gtk{a} libportsmf0{u} libsbsms10{u} libsoxr0{u}
libswresample0{a} libvamp-hostsdk3{u} totem-plugin-arte{a} vlc{a}
vlc-nox{a} vlc-plugin-notify{a} vlc-plugin-pulse{a} vlc-plugin-samba{a}
0 пакетов обновлено, 0 установлено новых, 10 пакетов заменены на старые версии, 16 пакетов отмечено для удаления, и 22 пакетов не обновлено.
Необходимо получить 6.490 kБ архивов. После распаковки освободится 38,1 MБ.
Хотите продолжить? [Y/n/?] y
Получено: 1 http://archive.ubuntu.com/ubuntu/ trusty/universe libav-tools amd64 6:9.11-2ubuntu2 [3.308 kB]
Получено: 2 http://archive.ubuntu.com/ubuntu/ trusty/universe libavdevice53 amd64 6:9.11-2ubuntu2 [32,2 kB]
Получено: 3 http://archive.ubuntu.com/ubuntu/ trusty/universe libavfilter3 amd64 6:9.11-2ubuntu2 [93,7 kB]
Получено: 4 http://archive.ubuntu.com/ubuntu/ trusty/universe libpostproc52 amd64 6:0.git20120821-4 [30,6 kB]
Получено: 5 http://archive.ubuntu.com/ubuntu/ trusty/universe libswscale2 amd64 6:9.11-2ubuntu2 [81,6 kB]
Получено: 6 http://archive.ubuntu.com/ubuntu/ trusty/universe libavresample1 amd64 6:9.11-2ubuntu2 [39,2 kB]
Получено: 7 http://archive.ubuntu.com/ubuntu/ trusty/universe libavformat54 amd64 6:9.11-2ubuntu2 [480 kB]
Получено: 8 http://archive.ubuntu.com/ubuntu/ trusty/universe libavcodec-extra-54 amd64 6:9.11-2ubuntu2 [2.350 kB]
Получено: 9 http://archive.ubuntu.com/ubuntu/ trusty/universe libavutil52 amd64 6:9.11-2ubuntu2 [65,9 kB]
Получено: 10 http://archive.ubuntu.com/ubuntu/ trusty/universe libavcodec-extra all 6:9.11-2ubuntu2 [9.802 B]
Получено 6.490 kБ в 4с (1.544 kБ/с)
(Чтение базы данных … на данный момент установлено 305476 файлов и каталогов.)
Removing audacity (2.0.5-1ubuntu3.2) …
Removing audacity-data (2.0.5-1ubuntu3.2) …
Processing triggers for mime-support (3.54ubuntu1) …
Processing triggers for man-db (2.6.7.1-1) …
Processing triggers for menu (2.1.46ubuntu1) …
Processing triggers for gnome-menus (3.10.1-0ubuntu2) …
Processing triggers for desktop-file-utils (0.22-1ubuntu1) …
Processing triggers for bamfdaemon (0.5.1+14.04.20140409-0ubuntu1) …
Rebuilding /usr/share/applications/bamf-2.index…
Processing triggers for hicolor-icon-theme (0.13-1) …
Processing triggers for shared-mime-info (1.2-0ubuntu3) …
Unknown media type in type ‘all/all’
Unknown media type in type ‘all/allfiles’
Unknown media type in type ‘uri/mms’
Unknown media type in type ‘uri/mmst’
Unknown media type in type ‘uri/mmsu’
Unknown media type in type ‘uri/pnm’
Unknown media type in type ‘uri/rtspt’
Unknown media type in type ‘uri/rtspu’
dpkg: предупреждение: снижение версии libav-tools с 7:1.2.6-1~trusty1 до 6:9.11-2ubuntu2
(Чтение базы данных … на данный момент установлен 305331 файл и каталог.)
Preparing to unpack …/libav-tools_6%3a9.11-2ubuntu2_amd64.deb …
Unpacking libav-tools (6:9.11-2ubuntu2) over (7:1.2.6-1~trusty1) …
Replaced by files in installed package ffmpeg (7:1.2.6-1~trusty1) …
Processing triggers for man-db (2.6.7.1-1) …
dpkg: ffmpeg: имеются проблемы с зависимостями, но по вашему указанию
он всё равно будет удалён:
winff-gtk2 зависит от libav-tools | ffmpeg, однако:
Пакет libav-tools пока не настроен.
Пакет ffmpeg будет удалён.

(Чтение базы данных … на данный момент установлено 305378 файлов и каталогов.)
Removing ffmpeg (7:1.2.6-1~trusty1) …
Processing triggers for man-db (2.6.7.1-1) …
dpkg: предупреждение: снижение версии libavdevice53:amd64 с 7:1.2.6-1~trusty1 до 6:9.11-2ubuntu2
(Чтение базы данных … на данный момент установлено 305346 файлов и каталогов.)
Preparing to unpack …/libavdevice53_6%3a9.11-2ubuntu2_amd64.deb …
Unpacking libavdevice53:amd64 (6:9.11-2ubuntu2) over (7:1.2.6-1~trusty1) …
dpkg: предупреждение: снижение версии libavfilter3:amd64 с 7:1.2.6-1~trusty1 до 6:9.11-2ubuntu2
Preparing to unpack …/libavfilter3_6%3a9.11-2ubuntu2_amd64.deb …
Unpacking libavfilter3:amd64 (6:9.11-2ubuntu2) over (7:1.2.6-1~trusty1) …
dpkg: предупреждение: снижение версии libpostproc52:amd64 с 7:1.2.6-1~trusty1 до 6:0.git20120821-4
Preparing to unpack …/libpostproc52_6%3a0.git20120821-4_amd64.deb …
Unpacking libpostproc52 (6:0.git20120821-4) over (7:1.2.6-1~trusty1) …
dpkg: предупреждение: снижение версии libswscale2:amd64 с 7:1.2.6-1~trusty1 до 6:9.11-2ubuntu2
Preparing to unpack …/libswscale2_6%3a9.11-2ubuntu2_amd64.deb …
Unpacking libswscale2:amd64 (6:9.11-2ubuntu2) over (7:1.2.6-1~trusty1) …
(Чтение базы данных … на данный момент установлено 305337 файлов и каталогов.)
Removing libswresample0:amd64 (7:1.2.6-1~trusty1) …
Processing triggers for libc-bin (2.19-0ubuntu6.3) …
dpkg: предупреждение: снижение версии libavresample1:amd64 с 7:1.2.6-1~trusty1 до 6:9.11-2ubuntu2
(Чтение базы данных … на данный момент установлено 305330 файлов и каталогов.)
Preparing to unpack …/libavresample1_6%3a9.11-2ubuntu2_amd64.deb …
Unpacking libavresample1:amd64 (6:9.11-2ubuntu2) over (7:1.2.6-1~trusty1) …
dpkg: предупреждение: снижение версии libavformat54:amd64 с 7:1.2.6-1~trusty1 до 6:9.11-2ubuntu2
Preparing to unpack …/libavformat54_6%3a9.11-2ubuntu2_amd64.deb …
Unpacking libavformat54:amd64 (6:9.11-2ubuntu2) over (7:1.2.6-1~trusty1) …
(Чтение базы данных … на данный момент установлено 305325 файлов и каталогов.)
Removing vlc-plugin-notify (2.2.0+ppa2.1) …
Removing handbrake-gtk (0.9.9ppa1~raring1) …
dpkg: vlc-nox: имеются проблемы с зависимостями, но по вашему указанию
он всё равно будет удалён:
vlc зависит от vlc-nox (= 2.2.0+ppa2.1).
vlc-plugin-samba зависит от vlc-nox (= 2.2.0+ppa2.1).

Removing vlc-nox (2.2.0+ppa2.1) …
dpkg: gstreamer1.0-libav:amd64: имеются проблемы с зависимостями, но по вашему указанию
он всё равно будет удалён:
totem-plugin-arte зависит от gstreamer1.0-libav.

Removing gstreamer1.0-libav:amd64 (1.2.4-1~ubuntu1) …
Processing triggers for gnome-menus (3.10.1-0ubuntu2) …
Processing triggers for desktop-file-utils (0.22-1ubuntu1) …
Processing triggers for bamfdaemon (0.5.1+14.04.20140409-0ubuntu1) …
Rebuilding /usr/share/applications/bamf-2.index…
Processing triggers for mime-support (3.54ubuntu1) …
Processing triggers for hicolor-icon-theme (0.13-1) …
Processing triggers for man-db (2.6.7.1-1) …
dpkg: предупреждение: снижение версии libavcodec-extra-54:amd64 с 7:1.2.6-1~trusty1 до 6:9.11-2ubuntu2
(Чтение базы данных … на данный момент установлен 304891 файл и каталог.)
Preparing to unpack …/libavcodec-extra-54_6%3a9.11-2ubuntu2_amd64.deb …
Unpacking libavcodec-extra-54:amd64 (6:9.11-2ubuntu2) over (7:1.2.6-1~trusty1) …
dpkg: предупреждение: снижение версии libavutil52:amd64 с 7:1.2.6-1~trusty1 до 6:9.11-2ubuntu2
Preparing to unpack …/libavutil52_6%3a9.11-2ubuntu2_amd64.deb …
Unpacking libavutil52:amd64 (6:9.11-2ubuntu2) over (7:1.2.6-1~trusty1) …
(Чтение базы данных … на данный момент установлено 304886 файлов и каталогов.)
Removing libportsmf0:amd64 (0.1~svn20101010-4) …
Removing libsbsms10:amd64 (2.0.1-1) …
Removing libsoxr0:amd64 (0.1.1-1) …
Removing libvamp-hostsdk3:amd64 (2.5+repack0-2) …
Removing totem-plugin-arte (3.2.1-2) …
Removing vlc-plugin-pulse (2.2.0+ppa2.1) …
Removing vlc (2.2.0+ppa2.1) …
Removing vlc-plugin-samba (2.2.0+ppa2.1) …
Processing triggers for libc-bin (2.19-0ubuntu6.3) …
Processing triggers for libglib2.0-0:i386 (2.40.0-2) …
Processing triggers for libglib2.0-0:amd64 (2.40.0-2) …
Processing triggers for man-db (2.6.7.1-1) …
Processing triggers for mime-support (3.54ubuntu1) …
Processing triggers for menu (2.1.46ubuntu1) …
Processing triggers for gnome-menus (3.10.1-0ubuntu2) …
Processing triggers for desktop-file-utils (0.22-1ubuntu1) …
Processing triggers for bamfdaemon (0.5.1+14.04.20140409-0ubuntu1) …
Rebuilding /usr/share/applications/bamf-2.index…
dpkg: предупреждение: снижение версии libavcodec-extra с 7:1.2.6-1~trusty1 до 6:9.11-2ubuntu2
(Чтение базы данных … на данный момент установлено 304793 файла и каталога.)
Preparing to unpack …/libavcodec-extra_6%3a9.11-2ubuntu2_all.deb …
Unpacking libavcodec-extra (6:9.11-2ubuntu2) over (7:1.2.6-1~trusty1) …
Настраивается пакет libavutil52:amd64 (6:9.11-2ubuntu2) …
Настраивается пакет libavcodec-extra-54:amd64 (6:9.11-2ubuntu2) …
Настраивается пакет libavformat54:amd64 (6:9.11-2ubuntu2) …
Настраивается пакет libavdevice53:amd64 (6:9.11-2ubuntu2) …
Настраивается пакет libavresample1:amd64 (6:9.11-2ubuntu2) …
Настраивается пакет libswscale2:amd64 (6:9.11-2ubuntu2) …
Настраивается пакет libavfilter3:amd64 (6:9.11-2ubuntu2) …
Настраивается пакет libav-tools (6:9.11-2ubuntu2) …
Настраивается пакет libpostproc52 (6:0.git20120821-4) …
Настраивается пакет libavcodec-extra (6:9.11-2ubuntu2) …
Processing triggers for libc-bin (2.19-0ubuntu6.3) …

Текущее состояние: 526 новых [-3].
PPA purged successfully using aptitude fallback

После этой большой команды моя проблема с Bombono DVD пропала. Рекомендую выполнить команды, которые лечат «битые» зависимости:

sudo apt-get install -f

если проблем не будет, то выполните:

sudo apt-get install aptitude
sudo aptitude install -f

Мораль сей басни такова — используя сторонние источники, будьте готовы к всевозможным проблемам. Но кто не рискует, тот не пьет шампанского. Как тогда получать опыт, если не экспериментировать?

Удачи!

5 Comments

  1. Я установил графическую среду pantheon, которая включает в себя браузер Midori. Midori мне нафиг не нужен и я его удалил, обойдя зависимости. Теперь Synaptic требует, чтобы я удалил pantheon. Как сделать так, что бы pantheon не зависел от midori?

Leave a Reply

Статьи