Limitando o uso da largura de banda da Internet de um shell específico

21

Quero atualizar meu linux em um shell, mas, por padrão, o wget ou o axel no atualizador usam toda a largura de banda.

Como posso limitar a velocidade neste shell?

Eu quero que outras conchas tenham uma participação justa e que limitem tudo nessa concha - algo como um proxy!

Eu uso o Zsh e o Arch Linux.

Esta pergunta se concentra em soluções para todo o processo ou para toda a sessão. Consulte Como limitar a largura de banda da rede? para soluções em todo o sistema ou em todo o contêiner no Linux.

Mohammad Efazati
fonte

Respostas:

22

Ter um olhar para trickle um userspace largura de banda shaper. Basta iniciar seu shell com trickle e especificar a velocidade, por exemplo:

trickle -d 100 zsh

que tenta limitar a velocidade de download para 100 KB / s para todos os programas lançados dentro deste shell.

Como o uso lento, LD_PRELOADisso não funciona com programas estáticos vinculados, mas isso não é um problema para a maioria dos programas.

Ulrich Dangel
fonte
Observe que ele é limitado aos soquetes SOCK_STREAMS; portanto, não afetará o tráfego UDP, por exemplo.
Stéphane Chazelas 15/11
5

http://lartc.org/wondershaper/

Está nos repositórios Ubuntu / Debian, provavelmente outros também. Ele limita não apenas uma única concha, mas toda a máquina. Nunca tentei eu mesmo embora

jippie
fonte
2

A página do manualwget fornece as seguintes informações:

 --limit-rate=amount

Limite a velocidade do download para quantificar bytes por segundo. A quantidade pode ser expressa em bytes, kilobytes com o sufixo k ou megabytes com o sufixo m. Por exemplo, --limit-rate = 20k limitará a taxa de recuperação a 20 KB / s. Isso é útil quando, por qualquer motivo, você não deseja que o Wget consuma toda a largura de banda disponível.

Marco Daniel
fonte
pergunta Update: Eu quero tudo de aplicação limitada, não só wget
Mohammad Efazati
@Efazati: Desculpe, não sei como defini-lo em geral. Eu o uso apenas para wget e apt-get.
Marco Daniel
fazer o homem não Wory, apenas esperando por resposta;)
Mohammad Efazati