Сброс dselect выбор перед установкой пакета

Похож на проблему шрифта - выполненный Font Book.app, нажмите All Fonts, затем выберите все шрифты в средней области (cmd-a) и выберите File-> Validate Font из меню. Это представит отчет любых шрифтов с проблемами.

При нахождении поврежденного файла шрифтов посмотрите, где он находится:

  • если это - системный шрифт (любой путь не в Пользователях/), замените его от медиа установки или рабочего (легче) Mac
  • если это - пользовательский шрифт (любой путь в Пользователях/), удалите его - системные шрифты должны быть достаточными, но пользовательские шрифты имеют приоритет, поэтому если пользователь установил некоторый borked шрифт, это может вызвать это.
6
11.07.2012, 03:54
3 ответа

Это складывается dpkg --get-selections не перечисляет то, что отмечено для установки и еще не установлено, но dpkg -l '*' делает и запускает эти строки с in.

В результате следующая строка сбрасывает эти выборы:

dpkg -l '*' | grep '^in ' | awk '{ print $2 " deinstall" }' | dpkg --set-selections
2
27.01.2020, 20:27

Используйте --set-selections* аргумент dpkg:

echo "<package-name> purge" | dpkg --set-selections

Можно затем использовать apt-get dselect-upgrade применять Ваш выбор пакета.


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

dpkg --get-selections | awk '{ if ($2=="install") print $1}' | grep -vF "$(dpkg -l | awk '/^ii/ {print $2}')"

Можно стать немного более необычными и канал тот назад в --set-selections, таким образом, автоматически отмена выбора чего-либо это уже не установлено:

dpkg --get-selections | awk '{ if ($2=="install") print $1,"deinstall"}' | grep -vF "$(dpkg -l | awk '/^ii/ {print $2}')" | dpkg --set-selections

*Можно также использовать dpkg --get-selections перечислять все явные выборы. Это также покажет Вам формат это --set-selections требует.

4
27.01.2020, 20:27
  • 1
    я хотел бы способ не должным быть записать каждое имя пакета. Насколько я вижу, --get-selections не перечисляет те пакеты, которые были отмечены для установки через dselect но еще не установлены. –  Bruno 10.07.2012, 22:48
  • 2
    @Bruno: я обновил свой ответ для создания этого более автоматическим. –  bahamat 11.07.2012, 02:59
  • 3
    Извините, это, кажется, не работает на меня. dselect выборы не обнаруживаются вообще через dpkg --get-selections. Я не уверен, объяснил ли я проблему правильно, но если выбор с помощью + что-то с dselect, проверьте выбор и затем перейдите в install раздел, это скажет, что "Следующие НОВЫЕ пакеты будут установлены" и несколько пакетов (затем выяснение, продолжить ли двигаться). Если я вышел и возвращаюсь к dselect позже для установки (или с помощью списка выборки) им все еще предлагают, все же они нисколько не находятся в --get-selections список, к сожалению. Это - выбор, я хотел бы сбросить –  Bruno 11.07.2012, 03:05
  • 4
    +1, даже если это не вполне работало, некоторые правильные элементы, был там, спасибо. Я все еще удивлен dpkg --get-selections не перечисляет те пакеты. (Я не уверен, является ли это проблема с этой конкретной версией: это находится на машине LTS Ubuntu 12.04.) –  Bruno 11.07.2012, 04:11
  • 5
    Те пакеты явно не выбраны затем. Зависимости никогда не выбираются (в смысле dpkg/dselect), чтобы быть установленными. Все те другие пакеты, которые, как это говорит, будут установлены, являются просто зависимостями. Если Вы не захотите их, то необходимо будет отменить выбор пакета, который зависит от них. –  bahamat 11.07.2012, 04:44

Используйте возможности поиска Способности получить список.

aptitude -F '%p' search '~ainstall !~i'

Передайте список dpkg --set-selections отметить их, как удалено будущим образом.

aptitude -F '%p deinstall' search '~ainstall !~i' | dpkg --set-selections

В стороне: добро пожаловать в 21-й век, я предлагаю переключиться на Способность вместо Dselect.

2
27.01.2020, 20:27
  • 1
    aptitude -F '%p' search '~ainstall !~i' не возвращает ничего вообще (и gnugo от моего примера все еще отмечен для установки в 'dselect). –  Bruno 11.07.2012, 04:15
  • 2
    Интересный... Это работает над Debian Lenny и Ubuntu 10.04, но не над Ubuntu 12.04... (Я думаю, что время для перемещения к aptitude так или иначе :-)) –  Bruno 11.07.2012, 04:35

Теги

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