Как Ign и Hit влияют на обновление apt-get?

10

Мое понимание Ignи то, Hitчто отображается в выводе команды apt-get update, это Hit: File found. No change in its timestampи Ign: File ignored. No change in its content..

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

PeanutsMonkey
источник

Ответы:

16

Из того, что я вижу в исходном коде apt, «Ign» означает, что при получении файла произошла ошибка, но эта ошибка игнорируется. Когда я запускаю apt-get update, я вижу 3 сообщения Ign, все из которых для Translation-enфайлов. Дамп пакета показывает, что запросы на эти файлы получили ответы HTTP 404.

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

«Хит» с другой стороны означает именно то, что вы сказали. Файл был найден на сервере и не изменялся с момента последней загрузки. На это указывает HTTP-код 304. Обратите внимание, что мы не говорим о временных метках для отдельных пакетов, поскольку apt-get updateони не загружаются. Он загружает список доступных пакетов и другую связанную информацию. Сравниваемые метки времени находятся в этих файлах списков, а не в самих пакетах.

Алан Карри
источник
Что вы подразумеваете под "ошибкой игнорируется"? Я также понимаю, Hitчто у меня есть копия последнего списка с момента apt-get updateпоследнего запуска. Это верно?
PeanutsMonkey
1
Ошибка игнорируется, потому что это ошибка при загрузке несущественного файла. Hitозначает, что старая копия в вашем кэше совпадает с текущей на сервере.
Алан Карри
3
Это, кажется, противоречит askubuntu.com/questions/294525/…, который говорит, что Ign «означает, что в файле индекса pdiff нет никаких изменений».
pbhj
1
@pbhj Это правильный ответ, так как я несколько раз проверял свой локальный репозиторий. Ignне найден, но не проблема.
Анвар
Это не может быть правильно, как видно в этом примере из моего местного зеркала. Ign:19 ssh://[server]/apt-mirror/mirror/us.archive.ubuntu.com/ubuntu bionic-updates/main DEP-11 48x48 IconsФайл существует.
Органический мрамор