Что значит & ldquo; sudo apt-get update & rdquo; делать?

Мне интересно, что делает sudo apt-get update?

Что он обновляет?

640
задан 31 August 2014 в 09:34

9 ответов

В двух словах, apt-get update фактически не устанавливает новые версии программного обеспечения. Вместо этого он обновляет списки пакетов для обновлений для пакетов, которые нуждаются в обновлении, а также для новых пакетов, которые только что поступили в хранилища.

  • apt-get update загружает списки пакетов из репозиториев и «обновляет» их, чтобы получить информацию о новейших версиях пакетов и их зависимостях. Это будет сделано для всех репозиториев и PPA. Из http://linux.die.net/man/8/apt-get :

    Используется для повторной синхронизации файлов индекса пакетов из их источников. Индексы доступных пакетов выбираются из местоположений, указанных в /etc/apt/sources.list (5). Обновление всегда следует выполнять перед обновлением или dist-upgrade.

  • apt-get upgrade извлечет новые версии пакетов, существующих на компьютере, если APT узнает об этих новых версиях посредством apt-get update.

    От http://linux.die.net/man/8/apt-get :

    Используется для установки новейших версий всех пакетов в настоящее время. установлена ​​в системе из источников, перечисленных в /etc/apt/sources.list (5). Пакеты, установленные в настоящее время с доступными новыми версиями, извлекаются и обновляются; ни при каких обстоятельствах установленные в настоящее время пакеты не удаляются, а пакеты, которые еще не установлены, не извлекаются и не устанавливаются. Новые версии установленных в настоящее время пакетов, которые нельзя обновить без изменения состояния установки другого пакета, останутся в их текущей версии. [Выделение мое] Сначала необходимо выполнить обновление, чтобы apt-get знал, что доступны новые версии пакетов.

  • apt-get dist-upgrade будет выполнять ту же работу, что и apt-get upgrade, плюс она также будет интеллектуально обрабатывать зависимости, поэтому может удалять устаревшие пакеты или добавлять новые из них. Смотрите здесь: Что такое «dist-upgrade»? и почему он обновляет больше, чем «обновление»?

    с http://linux.die.net/man/8/apt-get :

    < blockquote>

    В дополнение к выполнению функции обновления, эта опция также интеллектуально обрабатывает изменение зависимостей с новыми версиями пакетов; apt-get имеет «умную» систему разрешения конфликтов, и при необходимости она попытается обновить самые важные пакеты за счет менее важных. Файл /etc/apt/sources.list (5) содержит список мест, из которых можно извлечь нужные файлы пакета. Смотрите также apt_preferences (5) для механизма переопределения общих настроек для отдельных пакетов.

Команды с && можно комбинировать следующим образом:

sudo apt-get update && sudo apt-get install foo bar baz foo-dev foo-dbg

или для получения новейших версий в соответствии с требованиями версий зависимостей: [ 1132]

sudo apt-get update && sudo apt-get dist-upgrade

Вам нужно sudo оба раза, но, поскольку sudo по умолчанию не запрашивает вас в течение 5 минут или более с момента последней операции sudo, вам будет предложено ввести пароль только один раз. (или не совсем).

0
ответ дан 31 August 2014 в 09:34

Запуск sudo apt-get update просто гарантирует, что ваш список пакетов из всех репозиториев и PPA обновлен. Если вы не выполните эту команду, вы можете получить более старые версии различных устанавливаемых вами пакетов или, что еще хуже, проблемы с зависимостями. Если вы только что добавили PPA и не обновили его, ничто из PPA не будет работать вообще, поскольку у вас нет списка пакетов из этого PPA или репозитория.

В двух словах: настоятельно рекомендуется запускать sudo apt-get update перед установкой, но его можно пропустить, если у вас действительно мало времени , если вы не изменили репозитории или PPA с последнего apt-get update.

0
ответ дан 31 August 2014 в 09:34

Вам нужно запустить apt-get update один раз перед установкой новых пакетов, так как это обновит информацию о локальном репозитории. Если вы собираетесь установить несколько пакетов вскоре после этого, вам не нужно запускать apt-get update. Кроме того, вы можете установить несколько пакетов одновременно, если вы наберете sudo apt-get install package1 package2...

0
ответ дан 31 August 2014 в 09:34

Обновляет список доступного программного обеспечения на вашем компьютере.

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

Обратите внимание, что update отличается от upgrade. При обновлении, как упоминалось выше, будет загружено доступное программное обеспечение и обновляются списки, а upgrade будет устанавливать новые версии программного обеспечения, установленного на вашем компьютере (фактические обновления программного обеспечения).

Чтобы действительно обновить ваше программное обеспечение (не «обновлять» списки), вы выполняете команду

sudo apt-get upgrade

, которая обычно выполняется после «обновления».

0
ответ дан 31 August 2014 в 09:34

Поиск в Google может дать вам определение практически для любой команды терминала, как и --help в терминале. Например,

apt-get --help

sudo apt-get update по существу состоит из трех частей:

sudo

выполняет следующую команду с возможностями суперпользователя (root). Многие действия, требующие изменения системных файлов или установки приложений, требуют дополнительных разрешений.

apt-get

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

update

- это опция для программы apt-get, которая обновляет списки пакетов из сервер в интернете. Списки пакетов предоставляют утилите apt-get важную информацию о пакетах программного обеспечения, которые вы можете установить с помощью apt-get. apt-get использует эти списки, чтобы определить, какое программное обеспечение устанавливать, когда ему дается команда для установки. Например,

sudo apt-get install guake

установит терминал Guake, так как он в настоящее время указан в локальных списках программного обеспечения моего компьютера. Однако это может быть не подходящая версия, или, если программа новая, она может быть вообще недоступна. Таким образом, при установке программного обеспечения с помощью apt-get вы обычно набираете

sudo apt-get update
sudo apt-get install <package>

, гарантируя, что apt-get знает, что нужно установить самую последнюю версию пакета.

Другим полезным источником информации является сайт help.ubuntu.com. Например, если вы искали на этом сайте apt-get, вы найдете AptGet / Howto в качестве одного из результатов.

0
ответ дан 31 August 2014 в 09:34

Когда Вы устанавливаете пакеты из командной строки с sudo apt-get install ... (или sudo aptitude install ...), или когда Вы обновляете их из командной строки (с upgrade или dist-upgrade вместо install), следующая информация получена из конфигурации Вашей локальной системы, а не из Интернета:

  1. какие пакеты доступны

  2. какие версии их доступны

  3. откуда доступные пакеты должны быть получены

Выполнение sudo apt-get update (или sudo aptitude update) обновления это в Вашей локальной системе. Это - шаг, который на самом деле получает информацию о том, какие пакеты могут быть установлены, включая то, какие обновления в настоящее время устанавливаемых пакетов пакетов доступны из интернет-источников.

Когда Вы устанавливаете пакеты с графическим интерфейсом (Менеджер обновлений, Центр программного обеспечения или Синаптический Диспетчер пакетов), работа sudo apt-get update сделан автоматически. При установке пакетов от командной строки это не, и необходимо всегда делать это сами, если Вы не сделали так совсем недавно.

Поскольку информация о том, какие обновленные версии пакетов доступны, получена путем выполнения sudo apt-get update (или sudo aptitude update), желательно выполнить это прежде, чем установить любой пакет, и необходимый для выполнения его для установки последних обновлений, даже если Вы не добавили или удалили какие-либо Источники программного обеспечения (такие как PPA).

Обратите внимание на то, что, если Вы собираетесь выполнить несколько операций управления пакетом в то же время, Вы не должны работать sudo apt-get update перед каждым. Именно, только если информация не была обновлена некоторое время, необходимо удостовериться, что выполнили ее.

6
ответ дан 31 August 2014 в 09:34

Как упоминал Элиах Каган, вы ожидали , что приложение с графическим интерфейсом будет работать apt-get update до apt-get install / apt-get upgrade, но я только что обнаружил интересную ошибку 404 при относительно новом наступлении машина виртуальной безопасности, которая поставила меня в тупик на минуту.

Из командной строки я запустил apt-get update, а затем снова попробовал команду «Системные инструменты / Обновление программного обеспечения», и на этот раз она работала без ошибок 404.

Итак, я думаю, вы не всегда можете предположить, что apt-get update запускается из приложений с графическим интерфейсом ...

0
ответ дан 31 August 2014 в 09:34

Как говорили многие люди до меня, это обновляет ваш локальный репозиторий (список пакетов).

Вы можете столкнуться с проблемами, если попытаетесь установить

apt-get install foobar

и у foobar или зависимости нет последней версии в репозитории. Это может быть особенно проблематично, если вы устанавливаете файл .deb вручную или ppa от третьего лица.

По сути, это удостоверяет, что ваш список соответствует списку master .

0
ответ дан 31 August 2014 в 09:34

Рассмотрим пример установки VLC media player на Ubuntu:

sudo apt-get update

Он проверит репозитории на наличие доступных обновлений.

Тогда как

sudo apt-get install vlc vlc-plugin-pulse mozilla-plugin-vlc

установит VLC media player из репозиториев, которые мы искали.

Если вы вошли в систему как пользователь root (администратор), вам не нужно использовать sudo, потому что у вас уже есть привилегии суперпользователя.

0
ответ дан 31 August 2014 в 09:34

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

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