Не могу установить пользовательскую libvirt
Я просто не могу установить пользовательскую версию libvirt на Ubuntu Server 14.04. Я использую этот PPA, и я использовал метод ручной вставки в следующих строках внизу моего файла sources.list:
deb http://ppa.launchpad.net/zulcss/esx/ubuntu trusty main
deb-src http://ppa.launchpad.net/zulcss/esx/ubuntu trusty main
Я также создал следующий файл /etc/apt/preferences:
Package: libvirt-bin
Pin: origin ppa.launchpad.net
Pin-Priority: 610
Package: libvirt-bin
Pin: origin us.archive.ubuntu.com
Pin-Priority: 600
Package: libvirt-bin
Pin: origin security.ubuntu.com
Pin-Priority: 590
Вот вывод политики apt-cache libvirt-bin
libvirt-bin:
Installed: (none)
Candidate: 1.2.2-0ubuntu9
Package pin: 1.2.2-0ubuntu9
Version table:
1.2.2-0ubuntu13.1.14 610
500 http://us.archive.ubuntu.com/ubuntu/ trusty-updates/main amd64 Packages
100 /var/lib/dpkg/status
1.2.2-0ubuntu13.1.7 610
500 http://security.ubuntu.com/ubuntu/ trusty-security/main amd64 Packages
1.2.2-0ubuntu13 610
500 http://us.archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
1.2.2-0ubuntu9 610
500 http://ppa.launchpad.net/zulcss/esx/ubuntu/ trusty/main amd64 Packages
Вот что происходит, когда я на самом деле пытаюсь установить:
root@ubuntu:/etc/apt/sources.list.d# apt-get install libvirt-bin
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
libvirt-bin : Depends: libvirt0 (= 1.2.2-0ubuntu9) but 1.2.2-0ubuntu13.1.14 is to be installed
E: Unable to correct problems, you have held broken packages.
root@ubuntu:/etc/apt/sources.list.d#
Кто-нибудь может придумать способ решить эту проблему без ручной компиляции?
2 ответа
Назначьте более высокий приоритет всем пакетам из PPA:
Package: *
Pin: origin ppa.launchpad.net
Pin-Priority: 610
Если вы назначаете приоритет только для libvirt-bin
, пакеты зависимости как libvirt0
не влияют, так apt-get
выбирает самую высокую доступную версию для тех, которые будут из Ubuntu. PPA предоставляет следующие пакеты:
libvirt-bin
libvirt-dev
libvirt-doc
libvirt0
libvirt0-dbg
Таким образом, вы также можете назначить приоритет libvirt-bin
а также libvirt0
:
Package: libvirt-bin libvirt0
Pin: origin ppa.launchpad.net
Pin-Priority: 610
Создать конфигурацию
sudo nano /etc/apt/preferences.d/zulcss-esx-ppa-pin
с содержанием
Package: *
Pin: release o=LP-PPA-zulcss-esx
Pin-Priority: 1001
в пользу всех пакетов в этом PPA.
Я использую аналогичную конфигурацию также для моего PPA.