Jak mogę ograniczyć przepustowość apt-mirror?

11

Muszę zrobić jednorazowe lustro z całego repozytorium apt Ubuntu (dla przypomnienia, ponieważ wysyłam je do Kenii (patrz tutaj i tutaj ).

Zrobiłem to wcześniej i użyłem apt-mirror , i robi to dokładnie to, czego chcę. Jednak teraz chcę to robić powoli, więc chcę ograniczyć przepustowość, której używa do pobierania. Czy jest jakiś prosty sposób? Jakieś ustawienia konfiguracji Magic apt?

Rory
źródło

Odpowiedzi:

16

Po przejrzeniu kodu źródłowego apt-mirror odkryłem, że apt-mirror ma wbudowane możliwości ograniczania przepustowości.

Po prostu włóż:

set limit_rate 50k

W pliku mirror.list przekaże to do wget. Jednak ten limit dotyczy jednego wątku. Więc jeśli masz 10 wątków, będzie to 50k * 10 = 500k. Ta funkcja w ogóle nie jest udokumentowana.

Rory
źródło
2
Z ograniczonych testów, które przeprowadziłem (używając nload), wygląda na to, że ustawia to w KiloBytes / s zamiast KiloBits, więc można podzielić przez 8, np. Jeśli chcesz ograniczyć do 1 Mb na wątek, użyj wartości 125k
Programster
6

Dan Carley ma rację co do opakowania perla. Ale mądrzejszy sposób - edytuj ~ / .wgetrc (konfiguracja specyficzna dla użytkownika) lub / etc / wgetrc (konfiguracja ogólnosystemowa) i dodaj opcję

limit-rate = 50k # or your limit rate
Vlad
źródło
1
Tak, dobra uwaga. Moją jedyną małą rezerwacją byłoby zapomnienie, że umieściłeś ją w późniejszym terminie.
Dan Carley
4

Ponieważ apt-mirrorjest to tylko opakowanie Perla wget. Możesz edytować kod źródłowy, aby użyć wgetflagi, --limit-ratektóra pobiera prędkość pobierania wyrażoną w bajtach, kilobajtach lub megabajtach.

W zależności od twojego rozumienia Perla, możesz to zrobić we właściwy sposób, dodając nową opcję konfiguracji i idealnie przesyłając łatkę autorowi. Możesz też po prostu zakodować wartość, której potrzebujesz w danym momencie.

Dan Carley
źródło