Wie kann ich die Bandbreite von apt-Mirror begrenzen?

11

Ich muss einen einmaligen Spiegel des gesamten Ubuntu-Repositorys erstellen (für die Aufzeichnung ist es, weil ich es nach Kenia sende (siehe hier und hier ).

Ich habe es schon einmal gemacht und Apt-Mirror verwendet , und das macht genau das, was ich will. Jetzt möchte ich es jedoch langsam machen, also möchte ich die Bandbreite begrenzen, die zum Herunterladen verwendet wird. Gibt es eine einfache Möglichkeit, dies zu tun? Irgendeine magische passende Konfigurationseinstellung?

Rory
quelle

Antworten:

16

Nachdem ich mir den Quellcode für Apt-Mirror angesehen hatte, stellte ich fest, dass Apt-Mirror über integrierte Funktionen zur Begrenzung der Bandbreitenrate verfügt.

Einfach ausgedrückt:

set limit_rate 50k

In Ihrer mirror.list-Datei und es wird das an wget übergeben. Diese Grenze gilt jedoch pro Thread. Wenn Sie also 10 Threads haben, sind dies 50.000 * 10 = 500.000. Diese Funktion ist überhaupt nicht dokumentiert.

Rory
quelle
2
Aus den begrenzten Tests, die ich durchgeführt habe (mit nload), geht hervor, dass dies in KiloBytes / s anstelle von KiloBits festgelegt ist. Daher möchten Sie möglicherweise durch 8 teilen. Wenn Sie beispielsweise auf 1 MBit pro Thread beschränken möchten, verwenden Sie den Wert 125k
Programster
6

Dan Carley hat Recht mit Perl Wrapper. Aber intelligenter - bearbeiten Sie ~ / .wgetrc (benutzerspezifische Konfiguration) oder / etc / wgetrc (systemweite Konfiguration) und fügen Sie die Option hinzu

limit-rate = 50k # or your limit rate
vlad
quelle
1
Ja, guter Punkt. Meine einzige kleine Reservierung wäre zu vergessen, dass Sie es zu einem späteren Zeitpunkt gestellt haben.
Dan Carley
4

Da apt-mirrorist nur ein Perl-Wrapper für wget. Sie können den Quellcode bearbeiten, um das wgetFlag zu verwenden, --limit-ratedas eine Download-Geschwindigkeit in Byte, Kilobyte oder Megabyte benötigt.

Abhängig von Ihrem Verständnis von Perl können Sie dies entweder richtig machen, indem Sie eine neue Konfigurationsoption hinzufügen und im Idealfall einen Patch an den Autor zurücksenden. Oder Sie können einfach den Wert fest codieren, den Sie für den Moment benötigen.

Dan Carley
quelle