Beschränken der Internet-Bandbreitennutzung einer bestimmten Shell

21

Ich möchte mein Linux in einer Shell aktualisieren, aber standardmäßig verwenden wget oder axel im Updater die gesamte Bandbreite.

Wie kann ich die Geschwindigkeit in dieser Shell begrenzen?

Ich möchte, dass andere Shells einen fairen Anteil haben und alles in dieser Shell einschränken - so etwas wie ein Proxy!

Ich benutze Zsh und Arch Linux.

Diese Frage konzentriert sich auf prozessweite oder sitzungsweite Lösungen. Siehe So begrenzen Sie die Netzwerkbandbreite für systemweite oder containerweite Lösungen unter Linux.

Mohammad Efazati
quelle

Antworten:

22

Werfen Sie einen Blick auf Rinnsal eines User - Space Bandbreite Former. Starten Sie einfach Ihre Shell mit Rinnsal und geben Sie die Geschwindigkeit an, zB:

trickle -d 100 zsh

Dadurch wird versucht, die Download-Geschwindigkeit für alle in dieser Shell gestarteten Programme auf 100 KB / s zu begrenzen.

Als Erhaltungs verwendet LD_PRELOADdas wird nicht funktionieren mit statisch gelinkte Programme , aber das ist kein Problem für die meisten Programme.

Ulrich Dangel
quelle
Beachten Sie, dass es auf SOCK_STREAMS-Sockets beschränkt ist und somit beispielsweise den UDP-Verkehr nicht beeinträchtigt.
Stéphane Chazelas
5

http://lartc.org/wondershaper/

Es befindet sich in Ubuntu / Debian-Repositories, wahrscheinlich auch in anderen. Es beschränkt nicht nur eine einzelne Shell, sondern die gesamte Maschine. Ich habe es aber nie selbst versucht

jippie
quelle
2

Die Manpage fürwget enthält die folgenden Informationen:

 --limit-rate=amount

Begrenzen Sie die Download-Geschwindigkeit auf die Anzahl der Bytes pro Sekunde. Die Menge kann in Bytes, Kilobytes mit dem Suffix k oder Megabytes mit dem Suffix m angegeben werden. Beispiel: --limit-rate = 20k begrenzt die Abrufrate auf 20 KB / s. Dies ist nützlich, wenn Wget aus irgendeinem Grund nicht die gesamte verfügbare Bandbreite verbrauchen soll.

Marco Daniel
quelle
Update Frage: Ich möchte alle Anwendungen beschränkt, nicht nur wget
Mohammad Efazati
@Efazati: Tut mir leid, ich weiß nicht, wie ich es allgemein einstellen soll. Ich benutze es nur für wget und apt-get.
Marco Daniel
Ich wünsche dir keine Antwort;)
Mohammad Efazati