При выполнении aptitude update
/ apt-get update
или использовании диспетчера обновлений для обновления иногда я получаю ссылку на репозиторий, которая занимает слишком много времени. Процент не заканчивается, и требуется некоторое время, прежде чем он игнорирует его.
Как можно уменьшить время, чтобы, если конкретному хранилищу потребовалось более 10 секунд, чтобы подключиться или завершить работу, оно проигнорировало его и переместило следующие. Вот изображение, объясняющее проблему:
Он пытается подключиться к archive.ubuntu.com , но так как это занимает слишком много времени он просто сидит там как минимум от 3 до 5 минут (не измерял время), а затем показывает, что игнорируется, и переходит к следующему. Я хочу изменить это на секунды вместо минут.
Как можно уменьшить время, чтобы, если конкретный репозиторий занимал более 10 секунд для подключения или завершения, он игнорировал его и перемещал следующие?
blockquote>Зеркала - это одно вариант, как объяснил @adempewolff. Позвольте мне дать вам прямой ответ:
Установка таймаутов соединения apt-get
Вы можете управлять этими таймаутами с помощью следующих опций
apt.conf
:
Acquire::http::Timeout "10"; Acquire::ftp::Timeout "10";[ 1131]Обратите внимание, что это относится только к тайм-аутам соединения, а НЕ к тайм-аутам «времени окончания», т. Е. Если он подключается в течение 10 секунд, он продолжит загрузку пакета объемом 100 МБ, даже если он равен 1 КБ / с:)
Чтобы реализовать эти опции, просто создайте файл conf в
/etc/apt/apt.conf.d
; Предположим, мы называем это99timeout
.
- Нажмите
Alt+F2
, введитеgksudo gedit /etc/apt/apt.conf.d/99timeout
- Введите / вставьте вышеуказанные строки, выбрав время ожидания в секундах
- Сохраните и выйдите.
- Теперь попробуйте
sudo apt-get update
И взломайте «найти лучший сервер» у терминального наркомана!
Расширены и перемещены как ответ на этот еще соответствующий вопрос
Дополнительные опции apt-get conf, которые вы можете попробовать настроить
Acquire::Queue-Mode
: режим очереди; Режим очереди может быть одним изhost
илиaccess
, который определяет, как APT распараллеливает исходящие соединения.host
означает, что будет открыто одно соединение на целевой хост,access
означает, что будет открыто одно подключение на тип URI.
Acquire::Retries
: количество повторных попыток. Если это ненулевое значение, APT будет повторять неудачные файлы указанное количество раз.
Acquire::http::Dl-Limit
: принимает целочисленные значения в килобайтах, чтобы снизить скорость загрузки и не замедлять просмотр / электронную почту / и т. Д. при обновлении. Значение по умолчанию 0, которое деактивирует ограничение и пытается максимально использовать пропускную способность. Если он включен, он отключит функцию параллельной загрузкиapt-get
.Пролистайте
man apt.conf
, если думаете, что что-то еще может помочь!
Часто некоторые репозитории загружаются мучительно медленно, это просто симптом использования медленного зеркала. Зеркала по умолчанию для многих регионов не самые быстрые (я знаю, что это так в Китае).
Менять зеркало действительно легко через графический интерфейс Software Sources, вы можете открыть это окно двумя способами:
Ubuntu Software Center
и нажать Software Sources
в меню Edit
. или
alt-F2
) и выполните software-properties-gtk
Когда появится это окно, вы заметите выпадающее меню с надписью Download From:
, которое выбирает ваше зеркало. Выберите опцию Other
из этого меню.
В открывшемся новом окне нажмите кнопку Выбрать лучший сервер kbd>, и это проверит и автоматически выберет самый быстрый сервер для вашего местоположения. [ 1120] Надеюсь, это поможет! См. Также:
apt-fast работает как apt-get , но загружает обновления репозитория и пакеты параллельно. См. этот урок , чтобы узнать, как его использовать.