Что означает «Ign», «Get» или «Hit» при запуске обновления apt-get?

68

У меня была куча ошибок при выводе обновления sudo apt-get: повторяющиеся записи и 404 не найденных ошибок.

Надеюсь, я понял это: я удалил PPA, с которыми не было связано никаких пакетов, а затем удалил дублирующую запись /etc/apt/sources.list.

Кажется, я по-королевски его запутал. Теперь большинство строк говорят Ign, когда я делаю sudo apt-get update.

Как мне исправить то, что я облажался? Мне нужно избавиться от этих Ignповсюду. Есть около 50% (догадка глазного яблока) Ign!

брюс
источник
3
Это означает: Игн руда
Rinzwind

Ответы:

65

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

  • Hit означает, что apt проверил метки времени в списке пакетов, они совпадают и изменений нет.

  • Ign означает, что в файле индекса pdiff нет никаких изменений, он не будет загружать его снова.

  • Get означает, что apt проверил метки времени в списке пакетов, произошли изменения и будут загружены.

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

Бруно Перейра
источник
AFAIK список пакетов содержится в файле packages.gz / bz2 в репозитории. Итак, означает ли ваш ответ следующее: Нажмите « Стенд» для проверки метки времени файла packages.gz и его значения «ОК». И если метки времени не совпадают, тогда он проверяет содержимое файла packages.gz буквально на соответствие кешу моего компьютера, если найдены все пакеты, то выдает Ign , в противном случае обновляет этот кеш репо. Если я не прав, не могли бы вы быть более конкретным для меня?
Heemayl
3
Похоже, это противоречит superuser.com/questions/454867/…, который говорит, что Ign является ошибкой.
pbhj
7
Я посмотрел исходный файл acqprogress.cc из «apt», и он тоже выглядит противоречивым: он выдает «Ign» if (Itm.Owner->Status == pkgAcquire::Item::StatDone)- StatDone означает, что файл загружен (cf acqu-item.h), но блок, в котором выводится Ign, является блок обработки ошибок для неудачных загрузок ... это, по-видимому, за пределами моего понимания кодирования новичка. Просто отметив противоречие с superuser.com.
pbhj
12
Этот ответ не верен. Ignозначает, что aptпытался загрузить что-то (например, перевод или InReleaseфайл), но не нашел, но это можно игнорировать. Перейдите к следующему. Hitозначает, что aptнеобходимо загрузить Releaseфайл (потому что каким-то образом он был удален) и после его загрузки он проверяет контрольную сумму файла пакета и обнаруживает, что контрольная сумма, упомянутая во вновь загруженном Releaseфайле, совпадает с контрольной суммой файла пакета, которая уже существует. Это Hit. Таким образом, он не будет загружать Packageфайл снова.
Анвар
1
-1, поскольку Ign неверен.
эллиптический вид
27

Правильный ответ на этот вопрос:

  • Ignозначает, что aptпытался загрузить что-то (например, перевод или InReleaseфайл), но не нашел, но это можно игнорировать, поэтому перейдите к следующему. Поскольку перевод может быть вторичным приоритетом, и если InReleaseфайл не может быть найден, он использует другой метод аутентификации, например использование Releaseи Release.gpgсопряжение.

  • Hitозначает, что aptнеобходимо загрузить Releaseфайл или InReleaseфайл (потому что каким-то образом он был удален), и как только он загружен, он проверил контрольную сумму файла индекса в нем и обнаружил, что упомянутая там контрольная сумма совпадает с контрольной суммой уже загруженного файла пакета, который находится в /var/lib/apt/lists, Вот почему это Hit. Таким образом, он не будет загружать Packageфайл снова.


Нашел ответ от:

Анвар
источник