speedtest-raspberry-pi

Vet du hur snabbt internet du faktiskt har till din Raspberry Pi? Med ett enkelt kommando kan du snabbt ta reda på det med hastighetstjänsten Speedtest, och att komma igång tar bara några minuter. Så här gör du!

Börja med att installera filerna som behövs för att göra ett hastighetstest med Speednet. Installationen tar bara några sekunder.

Installera pakethanterare och skript

sudo apt-get install python-pip

sudo pip install speedtest-cli

Den första raden installerar ett hanteringssystem för paket i Python. Den andra hämtar paketet speedtest-cli som används för att utföra själva testet. Du måste ha båda på din Raspberry Pi för att det ska fungera.

Testa om skriptet fungerar

När installationen är klar kan du göra ett första test genom att köra följande kommando.

speedtest-cli

Skriptet du installerade tidigare kommer nu att göra tre saker. Det första är att identifiera de snabbaste servrarna som finns närmast dig och välja en av dessa. Därefter körs ett nerladdnings- och ett uppladdningstest.

Resultatet kommer att se likt det här under. Siffrorna är givetvis annorlunda än vad jag visar här, men de ger dig en idé om hur det kan se ut.

$ speedtest-cli
Retrieving speedtest.net configuration...
Testing from Bredbandsbolaget AB (XXX.XXX.XXX.XXX)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by Fiberby ApS (Copenhagen) [66.57 km]: 6.721 ms
Testing download speed.................................
Download: 93.38 Mbit/s
Testing upload speed...................................
Upload: 93.90 Mbit/s
$

Om du inte vill köra kommandot manuellt hela tiden utan skapa en automatisk loggfil som uppdateras med nya värden varje timme så är det enkelt att göra.

Skapa en loggfil för automatiska hastighetstester

Vi börjar med att skapa det skript som ska köras automatiskt i Raspbian. Tänk på att ändra ”pi” till din användare om du inte köra med standardanvändaren för Raspbian.

Vi startar redigeraren nano och namnger skriptet med följande kommando.

sudo nano speedtest.sh

Klistra in följande kodrader här under i filen. Därefter sparar du och stänger Nano.

#!/bin/bash

date >> /home/pi/speedtest.log
/usr/local/bin/speedtest --simple >> /home/pi/speedtest.log

Gör skriptet körbart.

chmod +x speedtest.sh

Testa att köra skriptet för att se så allt fungerar korrekt.

./speedtest.sh

Skriptet kan ta någon minut att köra. När det har kört färdigt öppnar du loggfilen med ”nano home/pi/speedtest.log”. Du bör se något likt det här under.

Sun  3 Dec 09:09:56 UTC 2017
Ping: 8.672 ms
Download: 93.42 Mbit/s
Upload: 93.87 Mbit/s

Ställ in crontab för att köra skriptet åt dig

Dags att automatisera processen. Kör kommandot här under och välj alternativ 2 som din redigerare (Nano).

crontab -e

Klistra in följande rad längst ner i redigeraren, därefter sparar du och stänger Nano. Byt sökvägen till skriptet om det behövs.

0 * * * * /home/pi/speedtest.sh

Du har nu sagt åt din Raspberry Pi att köra skriptet för att testa internetanslutningen en gång i timmen. Om det är för ofta kan du köra en gång per dygn istället, exempelvis mitt i natten när belastningen i nätet troligtvis är som lägst. Här är ett exempel för körning kl 03.00 varje natt.

0 3 * * * /home/pi/speedtest-cron.sh

Vill du ha andra tider kan du med fördel använda den här Crontab-generatorn för att generera teckenraden som ska klistras in istället.

Gör testresultaten mer användbara med speedtest-cli-extras

Testresultaten är kanske enkla att titta på i sin nuvarande form, men om du vill använda loggfilen med exempelvis Google Sheets eller Microsoft Excel så blir det genast knepigt. Därför ska vi nu konvertera resultatet till ett användbart CSV-format.

Om du inte har Git installerat på din Raspberry Pi måste du först installera denna.

sudo apt-get install git

Därefter hämtar vi de nödvändiga filerna från Github. Cred till Henrik Bengtsson som har skapat koden vi använder här.

sudo git clone https://github.com/HenrikBengtsson/speedtest-cli-extras.git

Gå till mappen som skapas för filerna.

sudo cd /speedtest-cli-extras/bin

Och kör följande kommando.

./speedtest-csv --header >> /home/pi/speedtestlog.tsv

Öppna crontab och sätt ett # framför den rad du skapade tidigare i guiden. Klistra därefter in följande rad istället.

0 3 * * * /home/pi/speedtest-cli-extras/bin/speedtest-csv >> /home/pi/speedtestlog.tsv

Betydligt enklare att använda i Google Sheets eller Microsoft Excel. Dessutom redo för automatisk importering via IFTTT om du vill det.

Har du följt guiden och sparat dina egna resultat? Skriv en rad och berätta! Eller tipsa oss om något som har gått fel eller kan förbättras!

LÄMNA ETT SVAR

Please enter your comment!
Please enter your name here