pip WindowsLinuxmacOSPython 3

pip: pip install зависает при скачивании большого пакета

  • Обновлено
  • Чтение ≈ 3 минуты

Краткий ответ

Установка большого пакета надолго останавливается на Downloading, ReadTimeoutError или повторяет попытки. Нужно различать медленное соединение, отсутствие свободного места, ограничения зеркала и долгую распаковку или сборку.

В этой статье
  1. Что происходит и когда возникает ошибка
  2. Причины и признаки
  3. Подробная диагностика и исправление
  4. Проверка результата и действия при неуспехе

#Что происходит и когда возникает ошибка

Установка большого пакета надолго останавливается на Downloading, ReadTimeoutError или повторяет попытки. Нужно различать медленное соединение, отсутствие свободного места, ограничения зеркала и долгую распаковку или сборку.

#Причины и признаки

Возможная причинаКак узнатьЧто делать
Плохое соединение или нестабильное зеркалоСервер либо сеть прерывает передачу больших файлов.Счётчик загрузки не увеличивается, в логе Retry/ReadTimeoutПроверить источник и соединение, скорректировать таймаут.
Мало места на дискеpip использует кэш и временный каталог при скачивании и распаковке.В журнале No space left on deviceОсвободить место в своих каталогах, не удаляя системные данные.
Пакет уже не скачивается, а собираетсяВремя тратится на компиляцию или разрешение зависимостей.На экране Building wheel или установка build dependenciesСмотреть подробный вывод и совместимые колёса.

#Подробная диагностика и исправление

  1. Уточните этап, на котором всё останавливаетсяВ терминале прочитайте последнюю строку. Downloading означает сетевой этап, Installing build dependencies — подготовку сборки, Building wheel — компиляцию, Resolving — подбор версий. Если процесс медленно работает, но вывод меняется, не называйте его зависшим только по отсутствию шкалы.
  1. Проверьте сеть и доступ к выбранному индексуВ браузере откройте страницу официального индекса или корпоративного зеркала; при служебном прокси уточните его параметры у администратора. В том же терминале проверьте активный URL индекса через конфигурацию. Не переключайте корпоративный проект на публичный индекс без разрешения.
  2. Чтение настроек, без прав администратора
    Linux · Терминал (Bash)Команда
    Чтение настроек, без прав администратора. Перед пересылкой вывода удалите токены в URL.
    python -m pip config list
  1. Попробуйте контролируемое скачивание отдельноВ отдельной тестовой папке выполните pip download -d ./wheels ИМЯ_ПАКЕТА. Эта команда собирает файлы для установки, но не изменяет рабочую среду. Папка должна пополняться скачанными файлами. При ошибке зафиксируйте на каком файле она возникла.
  2. В каталоге проекта; создаёт подкаталог wheels и скачивает зависимости
    Linux · Терминал (Bash)Команда
    В каталоге проекта; создаёт подкаталог wheels и скачивает зависимости. Нужны место и доступ к сети.
    python -m pip download -d ./wheels ИМЯ_ПАКЕТА
  1. Измените таймаут лишь при подтверждённой медленной сетиЕсли журнал показывает повторные Read timed out, проверьте, помогает ли увеличенный таймаут 120 секунд на стабильном и доверенном индексе. --retries 3 ограничивает число повторов; параметры не исправят отказ сервера, подмену сертификата или обрыв VPN.
  2. Запускайте в отдельном каталоге, без прав администратора; не используйте --trusted-host
    Linux · Терминал (Bash)Команда
    Запускайте в отдельном каталоге, без прав администратора; не используйте --trusted-host.
    python -m pip download --timeout 120 --retries 3 -d ./wheels ИМЯ_ПАКЕТА
  1. Проверьте свободное место и кэшПосмотрите свободный объём на системном разделе и разделе временных файлов средствами ОС. Команда python -m pip cache dir показывает место хранения кэша; python -m pip cache info — его объём. Не очищайте весь кэш на общем сервере без согласования.
    Linux · Терминал (Bash)Команда
    Команды только читают сведения. Доступность зависит от версии pip.
    python -m pip cache dir
    python -m pip cache info
  1. Используйте готовый wheel при долгой сборкеЕсли задержка на Building wheel, проверьте наличие двоичного выпуска для вашей ОС и Python с --only-binary=:all: в чистой среде. При его отсутствии прочтите требования сборки. Не прерывайте установку, которая изменяет рабочее окружение, без предварительной резервной копии.
  1. Подтвердите успешную установкуПосле завершения вызовите python -m pip show ИМЯ_ПАКЕТА, затем запустите минимальный пример проекта. Если медленная загрузка повторяется на всех пакетах, приложите очищенный от секретов журнал и данные о сети администратору.

#Проверка результата и действия при неуспехе

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

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

Так эту ошибку тоже называют

Источники и обновления

Последнее обновление статьи: 2 ноября 2026. Версии программ и интерфейсы меняются — если шаги не совпадают с вашей версией, сверяйтесь с документацией производителя.