Почему apt-get install python3 с дефисом в конце удаляет много пакетов? [дубликат]

Во время установки чего-то с помощью команды sudo apt-get install я случайно принял команду

sudo apt-get install python3-

(да, я знаю, что это глупо, просто примите это, но я сделал много таких, и я просто продолжал нажимать y ).

Выполнив команду, я удалил весь визуальный рабочий стол Ubuntu (у меня была только простая оболочка, но я восстановил визуальный рабочий стол). Я не знаю, глуп ли я, но, тем не менее, я хочу дать понять, что вам не следует использовать эту команду.

Если вы можете объяснить m e почему произошло то, что случилось, не стесняйтесь объяснять мне это.

7
задан 7 April 2019 в 22:36

2 ответа

Это не ошибка; это документируется в man страница. От man apt-get install section1 (шахта акцента):

Если дефис будет добавлен к имени пакета (без прошедшего пространства), то определенный пакет будет удален, если это будет установлено. Так же знак "плюс" может использоваться, чтобы определять пакет устанавливать.

Так, когда Вы сделали:

sudo apt-get install python3-

Вы удалили python3 пакет и все зависимые пакеты (который включает пакеты, которые Вы упомянули).


Зафиксируйте:

Во-первых, можно установить ubuntu-desktop метапакет для возвращения настольной среды по умолчанию:

sudo apt-get install ubuntu-desktop

Теперь, для переустанавливания удаленных пакетов перейдите в /var/log/apt/history.log, выберите пакеты и работайте sudo apt-get install на них.

Вы могли бы также хотеть посмотреть в /var/log/dpkg.log.


1, Если Вы имеете less как man пейджер, можно перейти в install раздел man apt-get непосредственно:

LESS='+/^[[:blank:]]+install' man apt-get
22
ответ дан 23 November 2019 в 06:07

Нет, Вы не нашли ошибку. От man apt-get:

Если дефис будет добавлен к имени пакета (без прошедшего пространства), то определенный пакет будет удален, если это будет установлено. Так же знак "плюс" может использоваться, чтобы определять пакет устанавливать. Эти последние функции могут быть использованы для переопределения решений, принятых способной-get's системой разрешения конфликтов.

Это является намеренным. Я не уверен, что это - хороший дизайн, но стоит считать, какие склонные изменения предлагает перед продолжением.

Объединенный с globbing это может произвести некоторых, скорее... представление время от времени заканчивается.

10
ответ дан 23 November 2019 в 06:07

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

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