Linux : Testar a velocidade da internet através do Terminal

21 Comentários

Hoje em dia é comum termos um contrato com uma operadora de comunicações que nos fornece, além do serviço de TV e telefone, acesso à Internet.

Por norma o serviço de Internet “oferecido” tem sempre um indicador razoável no que diz respeito à largura de banda. Mas quanto é que efectivamente conseguimos em termos de taxas de download e upload?

internet_00


Existem várias ferramentas que nos permitem avaliar a velocidade de acesso à Internet. Recentemente apresentamos aqui um conjunto de 5 serviços mas hoje deixamos uma pequena dica para Linux que nos foi enviada pelo nosso leitor Diogo Aleixo, tendo como base o kit Raspberry Pi do Pplware.

Como testar a velocidade de Internet através do Terminal?

Primeira coisa a fazer é o download de um script disponível no GitHub para fazer testes em linha de comandos. Para o descarregar usamos o comando wget.

speed_001

De seguida, e como é um script, vamos atribuir as respectivas permissões de execução usando o seguinte comando:

chmod +x speedtest-cli

O próximo passo é correr o script. Para isso basta que usem o seguinte comando:

speed_002

Agendar execução do script

Caso pretendam que o script seja executado de X em X tempo, e assim ficarem com um histórico da vossa ligação, podem recorrer ao crontab. Para isso foi criado um ficheiro com o nome testevelocidade.sh e com os seguintes comandos.

speed_003

Resumidamente, foi criada uma variável (data) que guarda o valor da data actual. Essa informação e a informação do estado da nossa ligação é posteriormente guardada no ficheiro velocidades.txt. Depois de criado o ficheiro com a informação referida é preciso dar permissões de execução.

chmod +x testevelocidade.sh

E podemos testar da seguinte forma:

speed_004

Para agendarem recorre-se ao crontab como referido. Para isso executamos o comando:

crontab –e

e de seguida adicionamos a entrada para que o script corra de duas em duas horas.

speed_005

E está feito. Esta é obviamente uma solução “caseira” mas que funciona na perfeição. É claro que o ficheiro vai acabar por ficar cada vez com mais informação mas também podem gerir o mesmo. Conhecem outras soluções?

Comentários

21

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

  1. Avatar de pedro
    pedro

    confesso que vou ja experimentar! Tenho um raspberry b+ e fiz dele um medidor de latência com o smokeping. Vou experimentar este, parece porreiro.

  2. Avatar de Rui
    Rui

    Espetaculo! Para ser 5 estrelas só colar aqui o link do script.

    1. Avatar de Diogo Aleixo
      Diogo Aleixo

      Do script em Python tens no comando wget e do script bash tens aí o código.

      1. Avatar de Pedro Pinto

        Está o link na palavra github

        1. Avatar de André Carvalho
          André Carvalho

          Mas o link na palavra github aponta para o repositório e não para o script. Para quem precisar, o link é este: wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest_cli.py

  3. Avatar de SoulReaver
    SoulReaver

    Obrigado Pedro, não conhecia este método…em Arch basta descarregar através do repositório “community”, e depois de instalado basta escrever “speedtest” no terminal para obter os resultados…muito bom!!!!!

  4. Avatar de Modem
    Modem

    Este artigo deixa muito a desejar.
    No entanto a forma mais rápida de instalar é com o comando:
    pip install speedtest-cli
    e depois executar com
    speedtest ou speedtest-cli

    1. Avatar de Pedro Pinto

      Mas porque deixa muito a desejar? Qual a tua dificuldade?

      1. Avatar de Modem
        Modem

        Desde o momento que pões os comandos e os scripts em imagens.

    2. Avatar de Diogo Aleixo
      Diogo Aleixo

      Deixa muito a desejar porque? Estou curioso. Realmente podias utilizar o pip porque é um script Python. Podias utilizar também o easy_install. Mas podes fazer uma casa de várias formas. Também o wget serve. E se quiseres, adicionas o caminho do script na PATH e executas com o nome só. Mas daí a deixar muito a desejar?

      1. Avatar de Modem
        Modem

        Na próxima vez não metas a linhas de comando e os scripts como imagem. Fica logo com outro aspeto.
        Olhei para aquela primeira imagem do wget e demorei um pouco a perceber o que era aquilo… Outros há que olham para aquilo como um burro a olhar para um palácio.
        E porque raio é que pelo meio existem alguns comandos como texto?
        Se achas que está tudo bem é porque não tens sentido critico.

        1. Avatar de André Carvalho
          André Carvalho

          Concordo, os comandos deviam estar como texto. Para quem precisar, aqui vai: wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest_cli.py
          Ou se preferirem o curl: curl https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest_cli.py > speedtest-cli

        2. Avatar de Diogo Aleixo
          Diogo Aleixo

          Eu escrevi isto no blog pessoal. É um repositório pessoal só. Digamos que não é nada comercial. Como tal, nem me importei com essa questão que falas. Mas tens razão. Por outro lado, o pessoa devia escrever em vez de copiar. E por imagem não copias.

        3. Avatar de Cristiano Alves
          Cristiano Alves

          Não, para a próxima o artigo deveria ser escrito exactamente assim com imagens. Obrigando as pessoas a escrever e a pensar no que estão a fazer e a escrever.

          Querem tudo oferecido sem ter o mínimo de trabalho.
          Triste mundo em que estamos do copy past, do roubo de trabalho de terceiros sem querer aprender o mínimo

          Ao copiar “à pata” aprende-se e pensa-se, o que não acontece com o ctrl-c ctrl-v

  5. Avatar de Modem
    Modem

    Os resultados no meu Pi:
    Retrieving speedtest.net configuration…
    Retrieving speedtest.net server list…
    Testing from xxxxxx (xx.xx.xx.xx)…
    Selecting best server based on latency…
    Hosted by xxxxx (Lisbon) [10.52 km]: 12.16 ms
    Testing download speed………………………………….
    Download: 93.30 Mbit/s
    Testing upload speed…………………………………………..
    Upload: 10.49 Mbit/s

  6. Avatar de Rui Óscar
    Rui Óscar

    No Ubuntu e derivados, abrir terminal e digitar: sudo apt-get install speedtest-cli

  7. Avatar de Diogo Aleixo
    Diogo Aleixo

    Aqui não tens nenhum repositórios mas se meteres o caminho absoluto do script na PATH faz o mesmo efeito. Mas também podes meter num repositórios claro. E provavelmente até já existe.

  8. Avatar de Alexandre Araújo
    Alexandre Araújo

    já uso este “speedtest” à algum tempo e acrescentei a possibilidade e receber o resultado por email…

    batch:
    txt=$(/root/speedtest_cli.py | mail -s “SpeedTest” endereçoemail@exp.exp)

    e o cron executa este batch.

    Fica a dica…

    1. Avatar de Diogo Aleixo
      Diogo Aleixo

      Caso já tenhas um MTA instalado só tens de fazer algo do género
      ./speedtest-cli > velocidadeMail
      mail -s “velocidade” mail@mail.mail < velocidadeMail

      Depois é adicionar isto no script que está no cron e ficas com as duas alternativas.

  9. Avatar de Alexsandro
    Alexsandro

    Nao conhecia, boa dica…

  10. Avatar de eli
    eli

    ola script muito bom seria possivel modificar para o script usar um medidor de conexao exemplo o fast.com ,tesmy.et ou ovh.net pq uso uma vps USA gostaria de saber si esto me entregando o uplink de 1Gbs como contratei