Я могу сбросить все пакеты к repo версиям без ppa-чистки?

Это - просто теоретическое для меня (это - настоящая проблема для другого пользователя), но скажем:

  • Я обновляю загрузку пакетов от PPA на 12,04
  • Я обновляю до 14,04
  • Некоторые пакеты сдержаны, потому что мои обновленные до PPA пакеты имеют более новые версии, которые повреждают зависимости

Этой точкой я думаю, что это слишком опаздывает ppa-purge быть полезным. Гипотетический-Oli должен был работать ppa-purge перед обновлением... Но то, что сделано, сделано. Как мы превращаем эту мертвую блокировку зависимости в работу, обновляемую систему?

Идеально мы отправили бы все с версиями Ubuntu-repo назад к тем версиям... Но как я могу сделать это?

4
задан 21 May 2014 в 20:46

2 ответа

  • Идеально ppa-purge должен работать, поскольку это - та же процедура. PPA всегда имеет версию, которая выше затем оба из precise и trusty.

  • Единственный случай, о котором я думаю, при контакте абсолютных пакетов или переименованных (Если переходный пакет не, обеспечивает).

    В этом случае я предложил бы:

    1. Добавьте назад все точные репозитории.

      echo -e "deb http://archive.ubuntu.com/ubuntu/ precise main universe multiverse restricted\ndeb http://security.ubuntu.com/ubuntu/ precise-security main universe multiverse restricted\ndeb http://archive.ubuntu.com/ubuntu/ precise-update main universe multiverse restricted" | sudo tee /etc/apt/sources.list.d/precise.list
      
    2. Списки пакета обновления

      sudo apt-get update
      
    3. Произведите чистку PPA

      sudo ppa-purge ppa:...
      

      Если не работал попытка:

      sudo ppa-purge -d precise ppa:...
      

      Можно попробовать также aptitude который предоставляет решения со снижением.

      Иногда, ручная фиксация является единственной опцией.

      • Можно использовать, удаляют их пакет без их зависимых, с помощью

        sudo dpkg -r --force-depends ...
        ##disable ppa source then
        sudo apt-get -f install
        
      • Или сила, устанавливающая определенную версию из официального репозитория. Но необходимо поместить все связанные пакеты в ту же команду.

        sudo apt-get install pkg1=ver1 pkg2=ver2 ...
        
      • В худшем случае можно загрузить те пакеты версией из официального репозитория, и сила устанавливают их использование:

        sudo dpkg -i --force-depends ...
        

        AFAIK APT не должен далеко делать этого.

0
ответ дан 17 November 2019 в 17:31

Необходимо создать файл (скажем, 00_reset_ppas) в папке /etc/apt/preferences.d со следующим содержанием

Package: *
Pin: release o=Ubuntu
Pin-Priority: 1100

После того выполнения

sudo apt update
sudo apt full-upgrade

и большинство (или еще лучше все), пакеты от PPAs были бы заменены от стандартных, которые идут с человечностью, при условии, что нет никаких конфликтов nanimg (т.е. пакеты с различными именами в ppas), который может представить конфликты.

0
ответ дан 17 November 2019 в 17:31

Другие вопросы по тегам:

Похожие вопросы: