Будет ли новый пакет отправлен на мою машину? [закрыто]

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

Например, что, если Ubuntu 18.04 выпущен, но через неделю Canonical понимает, что они забыли включить пакет foo. Включение пакета foo абсолютно критично, потому что каждую ночь работает cronjob, вызывая команду, включенную только в пакет foo. Таким образом, пока этот пакет не выйдет на все компьютеры Ubuntu 18.04, они будут продолжать крушить каждую полуночи.

В качестве другого примера последний и самый большой выпуск работает очень хорошо, пока Canonical не узнает, что существует дырочное отверстие безопасности «

]

Насколько я понимаю, apt-get upgrade и apt upgrade фокусируются на обновлении уже , если, как и когда [ ! d1]. apt-get dist-upgrade и apt full-upgrade также могут извлекать новые или даже удалять зависимости пакетов. 1 2

Но что, если совершенно новый пакет добавлен в релиз / репозиторий ОС, как в моих предыдущих примерах? Должен ли я идти в ногу с блогом где-нибудь, чтобы я знал, что нужно вручную устанавливать новые выпущенные пакеты?

1 Неактивные команды, такие как apt-get dist-upgrade и apt full-upgrade, в основном такие же, как upgrade, но обрабатывают

1 Аккуратные команды, такие как apt-get dist-upgrade и apt full-upgrade, в основном такие же, как upgrade, но обрабатывают зависимости по-разному - точно так же, как вне меня.

Некоторые документы

apt-get upgrade говорят:

Пакеты, установленные в настоящее время с новыми версиями, извлекаются и обновляются; ни при каких обстоятельствах в настоящее время не установлены удаленные пакеты или пакеты, которые еще не были установлены, извлечены и установлены.

apt-get upgrade говорит, что

Загружаются и обновляются пакеты с установленными новыми версиями; ни при каких обстоятельствах в настоящее время не установлены удаленные пакеты или пакеты, которые еще не были установлены, извлечены и установлены.

Другие дистрибутивы

Новые пакеты будут установлены, если потребуется для удовлетворения зависимостей [. ..].

В качестве дополнительного бонуса, возможно, гуру Linux хотелось бы добавить примечание о том, как все это обрабатывается на других дистрибутивах.

Честно говоря, я не совсем уверен, что я понял, как все релизы, пакеты и репозитории связаны друг с другом, и это может быть некоторые недостающие части информации, связанные с этим, которые бросаются в глаза. В частности, стало очень мутным, когда я прочитал зависимости distros lol.

0
задан 29 December 2017 в 06:55

6 ответов

Это ни в коем случае не авторитетный ответ, он в основном только документирует части моего собственного полу-мелкого понимания.

Новые пакеты никогда не считаются ошибками или исправлениями безопасности [править]. Они считаются новыми программами и новыми функциями ОС [править]. Новые пакеты никогда не добавляются в выпуск Ubuntu, потому что он «froozen».

Новые пакеты добавляются к следующей версии Ubuntu, которая должна быть завершена в froozen .

Даже удаление уже выпущенного пакета «технически невозможно» и вместо этого должно быть опустошено.

В конце дня, я думаю, примеры, изложенные в вопросе, однако, похоже, никогда не случалось в реальной жизни? Например. Canonical никогда не приходилось бросать самостоятельно новый пакет как часть исправления ошибки или безопасности.

0
ответ дан 18 July 2018 в 00:16

В Debian / Ubuntu вам необходимо обновить список пакетов, а затем обновить

sudo apt update && sudo apt upgrade

Другие дистрибутивы немного не соответствуют бит темы, некоторые дистрибутивы объединяют эти 2 шага в 1

В Fedora, например, вы просто

sudo dnf upgrade

На Ubuntu вы можете включить автоматическое обновление, если хотите

askubuntu.com/questions/9/how-do-i-enable-automatic -updates

См. man apt

update (apt-get (8)). Обновление используется для загрузки информации о пакете из всех настроенных источников. Другие команды работают с этими данными, например, выполнять обновления пакетов или искать и отображать сведения обо всех пакетах, доступных для установки

до релиза обновления до новой версии или версии Ubuntu

0
ответ дан 18 July 2018 в 00:16

Когда в продукте A обнаружен сбой безопасности, выпущен новый пакет для продукта A с более высокой версией. Это обновляется в списках пакетов, которые являются частью репозитория.

Когда вы запустите sudo apt update, вы загрузите список доступных пакетов. Позже, когда вы запустите sudo apt upgrade, учитывая, что у вас установлен продукт A, вы загрузите новую версию и установите ее.

Если у вас нет установленного продукта A, пакет не будет загружен, и не установлены.

Вся ваша система - это пакеты. Если проблема безопасности обнаружена в компоненте, например ядре, этот пакет будет обновлен до новой версии, но с точно таким же именем пакета.

Таким образом, это эффективно гарантирует получение безопасности исправления, которые подходят для установленного вами программного обеспечения.

Если вы установили программное обеспечение другими средствами, кроме репозиториев Ubuntu, вы , которые получат обновления для них через репозитории Ubuntu .

Это несколько отличается от модели Windows, где вы получаете обновления, и на самом деле это не говорит вам, какой модуль или часть обновленной ОС, и вы не можете выбрать, что устанавливать. Но в Ubuntu (и других дистрибутивах) все является пакетом - и вы можете выбирать из очень минимальной системы, взвешиваемой под гигабайтом без какой-либо графической среды, до полного рабочего стола или сервера.

Прямо сейчас у меня есть один пакет, который можно обновить в ящике, который у меня есть - firefox:

[~]$ sudo apt-get upgrade Reading package lists... Done Building dependency tree Reading state information... Done Calculating upgrade... Done The following packages have been kept back: xserver-xorg-hwe-16.04 The following packages will be upgraded: firefox 1 upgraded, 0 newly installed, 0 to remove and 1 not upgraded. Need to get 0 B/43.7 MB of archives. After this operation, 21.5 kB of additional disk space will be used. Do you want to continue? [Y/n] n Abort.

давайте посмотрим на этот пакет, используя apt-cache policy firefox:

[~]$ apt-cache policy firefox firefox: Installed: 57.0.1+build2-0ubuntu0.16.04.1 Candidate: 57.0.3+build1-0ubuntu0.16.04.1 Version table: 57.0.3+build1-0ubuntu0.16.04.1 500 500 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages *** 57.0.1+build2-0ubuntu0.16.04.1 500 500 http://no.archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages 100 /var/lib/dpkg/status 45.0.2+build1-0ubuntu1 500 500 http://no.archive.ubuntu.com/ubuntu xenial/main amd64 Packages [~]$

Здесь он показывает, что у меня установлено 57.0.1 + build2-0ubuntu0.16.04.1, но доступно 57.0.3 + build1-0ubuntu0.16.04.1. Если я захочу обновиться, я получу новую версию firefox.

В предыдущем примере xserver-xorg-hwe-16.04 хранится снова, потому что он зависит от xserver-xorg-legacy-hwe-16.04, который не установлен. Таким образом, apt upgrade не коснется его, если я не сделаю sudo apt-get install xserver-xorg-legacy-hwe-16.04:

[~]$ sudo apt-get install xserver-xorg-hwe-16.04 Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: xserver-xorg-legacy-hwe-16.04 The following packages will be REMOVED: xserver-xorg-legacy The following NEW packages will be installed: xserver-xorg-legacy-hwe-16.04 The following packages will be upgraded: xserver-xorg-hwe-16.04 1 upgraded, 1 newly installed, 1 to remove and 1 not upgraded. Need to get 41.1 kB of archives. After this operation, 3,072 B of additional disk space will be used. Do you want to continue? [Y/n]

Таким образом, пакет будет обновляться только до тех пор, пока он не отображает новые зависимости.

2
ответ дан 18 July 2018 в 00:16

Это ни в коем случае не авторитетный ответ, он в основном только документирует части моего собственного полу-мелкого понимания.

Новые пакеты никогда не считаются ошибками или исправлениями безопасности [править]. Они считаются новыми программами и новыми функциями ОС [править]. Новые пакеты никогда не добавляются в выпуск Ubuntu, потому что он «froozen».

Новые пакеты добавляются к следующей версии Ubuntu, которая должна быть завершена в froozen .

Даже удаление уже выпущенного пакета «технически невозможно» и вместо этого должно быть опустошено.

В конце дня, я думаю, примеры, изложенные в вопросе, однако, похоже, никогда не случалось в реальной жизни? Например. Canonical никогда не приходилось бросать самостоятельно новый пакет как часть исправления ошибки или безопасности.

0
ответ дан 24 July 2018 в 17:11

В Debian / Ubuntu вам необходимо обновить список пакетов, а затем обновить

sudo apt update && sudo apt upgrade

Другие дистрибутивы немного не соответствуют бит темы, некоторые дистрибутивы объединяют эти 2 шага в 1

В Fedora, например, вы просто

sudo dnf upgrade

На Ubuntu вы можете включить автоматическое обновление, если хотите

askubuntu.com/questions/9/how-do-i-enable-automatic -updates

См. man apt

update (apt-get (8)). Обновление используется для загрузки информации о пакете из всех настроенных источников. Другие команды работают с этими данными, например, выполнять обновления пакетов или искать и отображать сведения обо всех пакетах, доступных для установки

до релиза обновления до новой версии или версии Ubuntu

0
ответ дан 24 July 2018 в 17:11

Когда в продукте A обнаружен сбой безопасности, выпущен новый пакет для продукта A с более высокой версией. Это обновляется в списках пакетов, которые являются частью репозитория.

Когда вы запустите sudo apt update, вы загрузите список доступных пакетов. Позже, когда вы запустите sudo apt upgrade, учитывая, что у вас установлен продукт A, вы загрузите новую версию и установите ее.

Если у вас нет установленного продукта A, пакет не будет загружен, и не установлены.

Вся ваша система - это пакеты. Если проблема безопасности обнаружена в компоненте, например ядре, этот пакет будет обновлен до новой версии, но с точно таким же именем пакета.

Таким образом, это эффективно гарантирует получение безопасности исправления, которые подходят для установленного вами программного обеспечения.

Если вы установили программное обеспечение другими средствами, кроме репозиториев Ubuntu, вы , которые получат обновления для них через репозитории Ubuntu .

Это несколько отличается от модели Windows, где вы получаете обновления, и на самом деле это не говорит вам, какой модуль или часть обновленной ОС, и вы не можете выбрать, что устанавливать. Но в Ubuntu (и других дистрибутивах) все является пакетом - и вы можете выбирать из очень минимальной системы, взвешиваемой под гигабайтом без какой-либо графической среды, до полного рабочего стола или сервера.

Прямо сейчас у меня есть один пакет, который можно обновить в ящике, который у меня есть - firefox:

[~]$ sudo apt-get upgrade Reading package lists... Done Building dependency tree Reading state information... Done Calculating upgrade... Done The following packages have been kept back: xserver-xorg-hwe-16.04 The following packages will be upgraded: firefox 1 upgraded, 0 newly installed, 0 to remove and 1 not upgraded. Need to get 0 B/43.7 MB of archives. After this operation, 21.5 kB of additional disk space will be used. Do you want to continue? [Y/n] n Abort.

давайте посмотрим на этот пакет, используя apt-cache policy firefox:

[~]$ apt-cache policy firefox firefox: Installed: 57.0.1+build2-0ubuntu0.16.04.1 Candidate: 57.0.3+build1-0ubuntu0.16.04.1 Version table: 57.0.3+build1-0ubuntu0.16.04.1 500 500 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages *** 57.0.1+build2-0ubuntu0.16.04.1 500 500 http://no.archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages 100 /var/lib/dpkg/status 45.0.2+build1-0ubuntu1 500 500 http://no.archive.ubuntu.com/ubuntu xenial/main amd64 Packages [~]$

Здесь он показывает, что у меня установлено 57.0.1 + build2-0ubuntu0.16.04.1, но доступно 57.0.3 + build1-0ubuntu0.16.04.1. Если я захочу обновиться, я получу новую версию firefox.

В предыдущем примере xserver-xorg-hwe-16.04 хранится снова, потому что он зависит от xserver-xorg-legacy-hwe-16.04, который не установлен. Таким образом, apt upgrade не коснется его, если я не сделаю sudo apt-get install xserver-xorg-legacy-hwe-16.04:

[~]$ sudo apt-get install xserver-xorg-hwe-16.04 Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: xserver-xorg-legacy-hwe-16.04 The following packages will be REMOVED: xserver-xorg-legacy The following NEW packages will be installed: xserver-xorg-legacy-hwe-16.04 The following packages will be upgraded: xserver-xorg-hwe-16.04 1 upgraded, 1 newly installed, 1 to remove and 1 not upgraded. Need to get 41.1 kB of archives. After this operation, 3,072 B of additional disk space will be used. Do you want to continue? [Y/n]

Таким образом, пакет будет обновляться только до тех пор, пока он не отображает новые зависимости.

2
ответ дан 24 July 2018 в 17:11
  • 1
    Сначала у вас есть обновление – Panther 29 December 2017 в 05:21
  • 2
    Не могли бы вы рассказать об этом несколько загадочном комментарии? Если я что-то забыл - непременно измените :) – vidarlo 29 December 2017 в 05:22
  • 3
    Обновление Sudo apt обновляет список пакетов. Вы забыли этот важный шаг – Panther 29 December 2017 в 05:24
  • 4
    Я специально пропустил это, но я вижу, что это было плохое решение. Благодаря :) – vidarlo 29 December 2017 в 05:24
  • 5
    Да, таким образом, это тот шаг, на который пропустил опер при просмотре обновлений или новых пакетов или, похоже, – Panther 29 December 2017 в 05:26

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

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