Менеджер пакунків APT і не стабільний інтернет

Типово, утиліти з комплекту APT поводять себе наступним чином: якщо при завантаженні пакунків або метаданих сховищ немає відповіді від сервера протягом десяти секунд, то APT повідомляє про це, після чого повторно намагається завантажити пакунок або метадані сховища. Але насправді – відсутність відповіді може бути зумовлена не лише проблемами з боку сервера, а й нестабільністю інтернету користувача. Наприклад – при використанні мобільного інтернету 2G або 3G, можуть виникати затримки при передачі даних.

Щоб збільшити проміжок часу, протягом якого APT очікує відповідь від сервера, на якому розташоване сховище, слід зробити наступне:

1. У каталозі:

/etc/apt.conf.d

потрібно створити текстовий файл. Оскільки конфігураційні файли з цього каталогу опрацьовуються в алфавітному порядку, а також у зв’язку з тим що інші застосунки можуть класти в цей каталог свої файли налаштувань для APT, найкращим варіантом буде дати цьому файлу ім’я, яке починається з 99; А також складається зі сполучення символів, яке, ймовірно, не перетнеться з іменем файлу якого-небудь застосунка. Наприклад – можна назвати файл 99localconf. Для цього, відкривши термінал, створюємо текстовий файл, використовуючи свій улюблений текстовий редактор (я буду використовувати Pluma):

sudo pluma /etc/apt.conf.d/99localconf

2. У створений текстовий файл, потрібно додати такі рядки:

Acquire::HTTP::Timeout "60";
Acquire::HTTPS::Timeout "60";
Acquire::FTP::Timeout "60";

Ці директиви змушують APT очікувати відповідь від сервера не десять, а шістдесят секунд (перший рядок задає значення для протоколу HTTP, другий – для протоколу HTTPS, а третій, відповідно, для протоколу FTP).
Також можна додати ще такий рядок:

Acquire::Retries "10";

Ця директива визначає кількість спроб завантаження того чи іншого пакунка чи метаданих сховища. Іншими словами – якщо вичерпано проміжок часу очікування, що становить шістдесят секунд, APT знову спробує продовжити завантаження того ж пакунка чи метаданих сховища (тобто не перейде до інших). Значення 10 означає, що APT спробує десять разів відновити завантаження поточної сутності, і лише потім, після вичерпання цієї кількості спроб, перейде до завантаження інших сутностей.

3. Після додавання цих рядків, потрібно зберегти зміни у файлі.

Внаслідок цих маніпуляцій, використовуючи команди на кшталт apt update або apt full-upgrade, можна взагалі не помічати якихось тимчасових затримок передачі даних. Звісно, значення параметрів наведено тут як приклад, кожен може налаштовувати все під себе. В більшості випадків наведених мною значень параметрів достатньо для оновлень метаданих сховищ, встановлення пакунків та оновлення системи, а також для всього, що пов’язано із завантаженням, при використанні утиліт з комплекту APT.

Поделитесь с друзьями

Добавить комментарий

0 комментариев
Вбудовані Відгуки
Переглянути всі коментарі
0
Ми любимо ваші думки, будь ласка, прокоментуйте.x