Как я могу сказать менеджеру обновлений не обновлять пакет?

7

Я использую 10.04 и установил Virtualbox 3.2.10 (а не один, а файл .deb из Oracle). Он зависит от libqt4-opengl, который зависит от qt версии 4.6, но менеджер обновлений хочет обновить до qt 4.7 и удалить Virtualbox.

Как я могу заставить его сделать это, чтобы получить остальные обновления?

    
задан Neth 20.10.2010 в 13:00
источник

4 ответа

5

Отвечая на вопрос - вот команда для вашей оболочки:

echo "libqt4-opengl hold" | dpkg --set-selections

и вернуть его обратно к обновлению:

echo "libqt4-opengl install" | dpkg --set-selections

Замените libqt4-opengl на имя своего пакета, если я неправильно догадался.

    
ответ дан Serge Broslavsky 20.10.2010 в 14:14
источник
2

Почему вы не устанавливаете его с помощью процесса дистрибутива Linux на основе Debian, это лучше и безопаснее, следуя шаговому соглашению с вашим дистрибутивом ubuntu:

Ссылка

    
ответ дан hhlp 20.10.2010 в 13:08
2

Вы можете использовать aptitude для хранения определенной версии пакета, это делается следующим образом:

aptitude install <package>=<version>

Это приведет к удержанию пакета для данной версии. Чтобы просто вернуться, выполните

aptitude unhold <package>
    
ответ дан LassePoulsen 20.10.2010 в 13:55
0

Менеджер обновлений имеет тенденцию делать это самостоятельно и поддерживать последние пакеты. Я не понял, как заставить Update Manager хранить пакеты там, где они есть, и поэтому я использую apt-get для привязки пакетов к определенной версии. NB - все системы управления пакетами имеют тенденцию делать это по-другому, поэтому вам нужно будет выбрать одного менеджера пакетов и придерживаться его.

Сначала установите нужную версию пакета.

Далее, используйте политику apt-cache, чтобы узнать, какую версию вы используете:

$$ apt-cache policy xterm
xterm:
  Installed: 241-1ubuntu1
  Candidate: 241-1ubuntu1
  Version table:
 *** 241-1ubuntu1 0
        500 http://us.archive.ubuntu.com jaunty/main Packages
        100 /var/lib/dpkg/status

Наконец, отредактируйте / etc / apt / policy и добавьте запись для своего пакета:

Package: xterm
Pin: version 241*
Priority: 1001

Теперь вы можете запустить:

$sudo apt-get update
$sudo apt-get upgrade

, и ваш пакет будет сохранен в текущей версии. Если вы хотите переопределить это использование dist-upgrade:

$sudo apt-get dist-upgrade
    
ответ дан spinlock 20.10.2010 в 20:10