[Решено] Невозможно проанализировать файл пакета /var/lib/apt/lists
Видите ошибку «Невозможно проанализировать файл пакета /var/lib/apt/lists» в Ubuntu Linux? Вот как справиться с этой распространенной ошибкой обновления в дистрибутивах на базе Ubuntu.
В прошлом я обсуждал ряд ошибок обновления Ubuntu. Если вы используете командную строку для обновления Ubuntu, вы можете столкнуться с некоторыми «ошибками».
Некоторые из этих «ошибок» по сути представляют собой встроенные функции, предотвращающие несанкционированные изменения в вашей системе. Я не буду вдаваться в эти детали в этом кратком уроке.
В этом кратком совете я покажу вам, как устранить следующую ошибку, с которой вы можете столкнуться при обновлении системы или установке нового программного обеспечения:
Чтение списков пакетов… Ошибка!
E: Невозможно проанализировать файл пакета /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_bionic_InRelease
E: Не удалось проанализировать или открыть списки пакетов или файл состояния.
Подобная ошибка может возникнуть в Debian:
E: Невозможно проанализировать файл пакета /var/lib/apt/extended_states (1)
Нет абсолютно никакой необходимости паниковать, даже если там написано: «Файл кэша пакета поврежден». Это действительно легко «исправить».
Обработка ошибки «Невозможно проанализировать файл пакета» в дистрибутивах Linux на базе Ubuntu и Debian
Вот что вам нужно сделать. Внимательно посмотрите на имя и путь к файлу, на который жалуется Ubuntu.
Чтение списков пакетов… Ошибка!
E: Невозможно проанализировать файл пакета /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_bionic_InRelease
E: Не удалось проанализировать списки пакетов или файл состояния. быть проанализированы или открыты.
Например, в приведенной выше ошибке он жаловался на /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_bionic_InRelease.
Это дает вам представление о том, что с этим файлом что-то не так. Теперь все, что вам нужно сделать, это удалить этот файл и восстановить кеш.
sudo rm <file_that_is_not_parsed>
Итак, в моем случае я мог бы использовать эту команду: sudo rm /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_bionic_InRelease, а затем перестроить кеш с помощью sudo apt update
команда.
Шаг за шагом для новичков
Если вы знакомы с командами Linux, возможно, вы знаете, как удалить файл по его абсолютному пути. Для начинающих пользователей позвольте мне помочь вам безопасно удалить файл.
Сначала вам следует перейти в каталог, в котором хранится файл:
cd /var/lib/apt/lists/
Теперь удалите файл, который не анализируется:
sudo rm archive.ubuntu.com_ubuntu_dists_bionic_InRelease
Теперь, если вы снова запустите обновление, кэш apt будет восстановлен.
sudo apt update
Слишком много файлов невозможно проанализировать?
Это нормально, если у вас есть один или два файла, которые не анализируются при обновлении системы. Но если система жалуется на десять-двадцать таких файлов, удалять их по одному слишком утомительно.
Что можно сделать в таком случае, чтобы удалить весь кеш и затем сгенерировать его заново:
sudo rm -r /var/lib/apt/lists/*
sudo apt update
Объяснение того, как это решило вашу проблему
/var/lib/apt — это каталог, в котором хранятся файлы и данные, связанные с менеджером пакетов apt. /var/lib/apt/lists — это каталог, который используется для хранения информации для каждого ресурса пакета, указанного в исходном списке вашей системы.
Проще говоря, в /var/lib/apt/lists хранится кэш информации о пакете. Когда вы хотите установить или обновить программу, ваша система проверяет в этом каталоге информацию об указанном пакете. Если она находит подробную информацию о пакете, то она переходит в удаленный репозиторий и фактически загружает программу или ее обновление.
Когда вы запускаете sudo apt update
, он создает кеш. Вот почему даже если вы удалите все в каталоге /var/lib/apt/lists, при запуске обновления будет создан новый кеш.
Вот как он решает проблему, когда файлы не анализируются. Ваша система пожаловалась на то, что информация о конкретном пакете или репозитории каким-то образом была повреждена (либо неудачная загрузка, либо изменение файла source.list вручную). Удаление этого файла (или всего) и восстановление кеша решает проблему.
Все еще сталкиваетесь с ошибкой?
Это должно решить проблему для вас. Но если проблема все еще сохраняется или у вас есть какие-либо другие проблемы, дайте мне знать в разделе комментариев, и я постараюсь вам помочь.