Raspberry Pi

Raspberry Pi, de $25 Linux computer? OK, de zaak ligt iets genuanceerder, maar het is toch een interessant project. Oorspronkelijk is dit project in de UK opgezet om kinderen op scholen weer in aanraking te laten komen met 'echte computers' in plaats van kant-en-klare kastjes. Ondertussen is dit wereldwijd in deRaspberry Pi Logo belangstelling gekomen als een ideaal low-cost Linux-gebaseerd hobby-platform. De organisatie is vervolgens volledig overstroomd door alle aandacht...

Toch heb ik er destijds vrij vroeg een te pakken gekregen (juli 2012): een van de eerste B-versies van $35 met ethernet-aansluiting, krap €41 incl invoerrechten/verzendkosten. Draaide haast 4 jaar, of eigenlijk: draaien, ik heb er twee; een als server, en een bijvoorbeeld voor de infrarood camera. Zelfs in augustus 2012 al een presentatie voor Raspberry Pi 1B beginners over gehouden bij EmSE: Embedded Systems Eindhoven.

En nu is er dus de Raspberry Pi versie 3, met meer geheugen en rekenkracht, sinds half maart in mijn bezit (nu voor €42). Eens kijken wat dat voor verschil maakt voor mijn servers (want die gaat'ie draaien). Deze pagina begint toch nog met mijn Raspberry Pi 1B verhaal, want dat is toch hoe ik begonnen ben, en zeker voor beginners mogelijk ook nog de logische route. Pas aan het einde de Raspberry Pi 3B! Er zijn toch wel belangrijke verschillen...

  • Hardware: Voor hardware, en speciaal I/O-experimenten (m.n. gpio en i2c) zie mijn Raspberry hardware pagina. Bedoeling om met de hardware ook apparaten te kunnen besturen en uit en aan te zetten ('home control'), maar de bijhorende pagina is nog niet klaar.
  • Services: Voor mijn gebruik als (file, media, proxy, openVPN, ...)-server zie mijn Raspberry Server pagina. Samen met de veilige toegang via ssh kan ik overal via het internet bij mijn gegevens, veilig internetten en zo, zelfs vanuit een terrasje in de zon met een onbetrouwbare WiFi hot spot.
  • Projects: Wat rommelde daar op het dak? Gekeken met een Raspberry en de NOIR-camera: blijkt een steenmarter te zijn

Raspberry Pi board

"Raspberry Pi" is a trademark of the Raspberry Pi Foundation

Wat is de Raspberri Pi 1: een klein computerprintje (credit-card formaat, behalve de dikte: ongeveer 8½ bij 5½ bij 2 cm) met voldoende kracht om een volledige Linux-omgeving inclusief grafische omgeving te draaien. Het systeem bevat een 700 MHz ARM11 processor en video-coprocessor (Broadcom BCM2835), 256 of 512 MB werkgeheugen, HDMI-poort, SD-card interface, USB, audio etc. Wel zelf een 5-Volt (micro-USB) voeding toevoegen, plus eventueel een monitor, keyboard etc. Krachtig genoeg voor b.v. Blueray video playback. Fedora, Debian en ArchLinux support.

De Raspberry Pi 3 lijkt er erg op, maar met een Broadcom BCM2837 1.2 GHz Quad-core 64-bit ARM processor (A53), 1 Gbyte geheugen, WiFi/Bluetooth Low Energy en nog wat uitbreidingen.

Meer info op de Raspberry Pi FAQ en Forum, en de Raspberry Pi HUB Wiki met tutorials, projecten en meer info. Op Techspot een artikel over de eerste setup en installatie. En hier nog een alternatief forum.

Wat ga ik er mee doen? Voorlopig niet direct media-player, ik zie het meer als een energie-zuinige vervanger voor mijn NSLU2 file server die een beetje te krap begint te worden. Vandaar ook de keuze voor Debian; draait ook op de NSLU en ben ik bekend mee. Plus wat I/O experimenten (er zijn ook goedkope prototype-bordjes voor te krijgen maar ik ga zelf aan de slag): zie mijn Raspberry hardware pagina. Plus dat ik er een aantal extra services op heb lopen, zoals SSH (veilig access naar mijn thuisnetwerk), media streaming, etc; zie mijn Raspberry server pagina.

Andere Raspberry Projecten

Alternatieven

Overigens, dit is zeker niet de enige kleine low-cost computer, kijk bijvoorbeeld op Board Computers Compared voor een lijstje (bedankt Maarten), of op de 10 Tiny Development Boards van EETimes. Zou ik er nu een kopen, dan zou ik ook kijken naar de TI BeagleBone Black Mini-PC (€45 bij Conrad) met veel I/O; of waarschijnlijker het RIoTboard met iMX6 1 GHz processor vanwege Gbit ethernet (€89 bij Conrad). Nog meer high-end? Kijk eens naar de UDOO Quad, heeft vier cores maar ook een Arduino-compatible processor op dezelfde PCB (€149).

En nu nieuw: een 'opgevoerde Raspberry': de Hummingbird. Zelfde afmetingen, maar een krachtiger processor (iMX met ARM V7 architectuur ipv de ARM V6, 1 Gbit ethernet, en zelfs dual-core mogelijk). En de Banana-Pi (ARM Cortex-A7 dual-core, 1GHz, Mali400MP2 GPU, €39.99 bij Conrad), de ...; het gaat maar door.

De voorbereiding

Let op, dit is nog voor de Raspberry Pi 1, niet voor de 3! Van de Raspberry downloadpagina de toen recente Raspbian (FAQ) gedownload, een voor de Raspberry aangepaste versie van de experimentele Debian 7 “wheezy” (ondertussen de laatste versie "Jessie"). Dit is een zip-archief dat uitgepakt moet worden, en vervolgens (voor uitleg en bv Windows zie de Wiki) met het Linux-commando dd op een SD-card van minimaal 2GB geplaatst moet worden. En vast de snoertjes (micro-usb en ethernet) en voeding (advies 5V/1A usb) bij elkaar zoeken. Nu is het wachten tot ik er zelf een heb... hopelijk rond eind juni. Er is ondertussen een geoptimaliseerde Debian Linux voor Raspberry: Raspbian, met bv hardware floating point support.

Ook alvast opgezocht hoe te beginnen: links als de beginners pages op het forum, de probleemzoekgids (trouble shooting guide) etc. Benieuwd of mijn SD-card het gaat doen; zijn blijkbaar nogal wat problemen met SD cards maar 2GB-cards zouden geen issue moeten zijn.

Raspberri Pi eindelijk binnen

Binnen (4 juli 2012)... Is best wel klein! Helaas, de eerste weken vreselijk druk, dus wat vertraagd er mee aan de slag gegaan. En ik heb het originele T-shirt!

Eerste teken van leven

De eerste test is in een 'headless' configuratie zoals ik die ook uiteindelijk als server ga gebruiken: alleen op voeding en op netwerk, dus géén display/keyboard. Met een Ethernet-kabel aangesloten op mijn router, zodat de Raspberry automatisch een IP-adres zou krijgen, en het configuratiescherm van mijn router in beeld op mijn PC, zodat ik ook wist welk adres dit dan wel was, om er met ssh vanaf mijn desktop bij te kunnen (in tegenstelling tot vroegere releases zou ssh standaard 'aan moeten staan' op de Raspberry).

Na aanzetten ging de rode led aan, en de groene OK-LED knipperen, zag er dus goed uit: knippert gedurende de boot van ongeveer 20 seconden. Op de router zag ik de aanvraag voor het IP-adres, en kon ik inloggen (PuTTY, of SSH pi@192.168.1.138)! Yes!

Linux raspberrypi 3.1.9+ #168 PREEMPT Sat Jul 14 18:56:31 BST 2012 armv6l

The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law.

Type 'startx' to launch a graphical session

/usr/bin/xauth:  file /home/pi/.Xauthority does not exist

NOTICE: the software on this Raspberry Pi has not been fully configured. Please run 'sudo raspi-config'

Statistics

Even wat statistics: 2.6x zo snel als mijn NSLU2 (en kan zelfs naar 1 GHz overgeklokt?). Check met BogoMIPS:

cat /proc/cpuinfo | grep Bogo
BogoMIPS : 697.95

Ps: vanaf kernel 3.8 is BogoMIPS: 2.00; zie link...

Volgens free is er 188 MB memory waarvan 171 MB free (zonder X gestart te hebben, hangt geen display aan), veel meer dan de NSLU2. Heb gekozen voor 64 MB videogeheugen (arm192_start.elf), dus die 188 MB komt aardig in de buurt van de 192 die over zou moeten zijn.

Disk space: gebruik df -h, geeft 370 MByte free op de 2GB card (333 MB na samba etc installeren).

Daar is'ie dan. OK, niet wereldschokkend, maar de basis is er. Er verschijnt een menu om een aantal zaken in te kunnen stellen zoals de tijdzone, waarna de zaak nog een keer boot, en klaar is voor gebruik. Het menu is later weer eventueel op te roepen met sudo raspi-config.

De laatste software

En natuurlijk: de eerste actie is altijd even zorgen dat de zaak up-to-date is (zie ook 'Raspberry updaten' onderaan de pagina): sudo apt-get update; sudo apt-get upgrade: 32 packages, 23 MByte. Upgrade duurt wel even, ga gerust koffie drinken! Nog maar een 2BG geheugenkaart dus zoveel mogelijk geheugen vrijhouden: sudo apt-get autoclean; sudo apt-get clean (ook bij 4 GB aan te raden); check met df hoe veel er vrij is. Dan even sudo reboot. Mijn huidige kernel is nu ondertussen al 3.10 (uname -a):

Linux raspberry1 3.10.25+ #622 PREEMPT Fri Jan 3 18:41:00 GMT 2014 armv6l GNU/Linux

Grotere SD-card

Toch maar een grotere SD-card aangeschaft (370 MB vrij is toch wat weinig), zie de lijst van werkende SD-cards. In mijn geval een class-10 8 Gbyte aangeschaft. Met sudo dd bs=1M if=/dev/sde of=debian6-kmo eerst de 2GB kaart met de geconfigureerde debian (heb de stappen hieronder genoemd in diversen ook al gedaan) naar mijn schijf gekopieerd (10 MB/s). Ps: wel de '/dev/sde' aanpassen aan je eigen situatie! Op die manier heb ik gelijk een mooie backup. Daarna deze file met dd op de nieuwe 8 GB SD-card gezet; hoef ik de basis-instellingen niet te herhalen. Hierna moet nog de partitie opgerekt worden naar 8 Gbyte: op de PC met gparted (mijn route, zie deze RPi Resize Flash handleiding), of op de Raspberry zelf via het menu in sudo raspi-config. df -h geeft nu 4.9 GByte vrij (1 Gbyte swap en 2 Gbyte systeem). Gelijk de partities van namen voorzien (boot, raspbian, swap).

Backup!

Maak ook eens een back-up van je SD-card. Ik had pas dat aan het einde van een update de Raspberry niet meer bij kwam... Oops. Gelukkig had ik eerder een keer met dd een backup van de SD-card gemaakt, die ik er weer op terug kon zetten.

sudo dd bs=1M if=/dev/sd<x> of=raspbian_backup.bin

Wat betreft de swap: ik had gewoontegetrouw ook een 1 GByte swap-partitie heb aangemaakt. Maar, Raspbian gebruikt een ander swapmechanisme: een swapfile in /var (zie dphys-swapfile) in plaats van een aparte partitie. Ik heb deze swapfile (op de 8 GB SDcard) even vergroot naar 512 MB (in /etc/dphys-swapfile). De configuratie is standaard al zo ingesteld dat Raspbian minimaal swapt, zie  /etc/sysctl.conf : vm.swappiness=1. Ik heb dit naar 10 verhoogd; geheugen dat echt weinig wordt gebruikt mag best naar swap; en na een aantal dagen draaien als file server is er nog steeds maar zo'n 90 kB in gebruik (zie swapon -s), verwaarloosbaar dus. Ook nog eens kijken naar zram system: schijnt door compressie extra werkgeheugen op te kunnen leveren?

Voor een langere levensduur noatime en andere parameters optimaal voor SSD (ook nuttig voor SD-cards) in /etc/fstab toevoegen zodat er niet onnodig veel naar de SD geschreven wordt. De optie data=writeback stelt het wegschrijven van buffers uit; wacht dus enkele seconden voor het uitzetten van de raspberry, of gebruik eerst netjes 'sudo poweroff' en wacht tot alle LEDs behalve de rode uitgegaan zijn! Alternatief is data-ordered, iets veiliger en iets trager, of het nog veiliger data=journal. Tip: noatime impliceert ook nodiratime. Alles hieronder is op één regel:

/dev/mmcblk0p2  /  ext4  defaults,noatime,data=writeback,commit=120,errors=remount-ro   0   1

Performance

Wat benchmark informatie: hoe snel is'ie eigenlijk? Op dit moment geeft mijn standaard 700 MHz Raspberry 1 (met software raspbian build #272, 7 augustus):

  • Processor getest met openssl, omdat dat standaard op mijn systemen aanwezig is: openssl speed aes geeft op 256-byte block AES berekeningen 12 MB/s (aes-256 cbc), mijn nslu2 doet 2.1 MB/s, een verschil van een factor 5.7 bij een klokverschil van factor 2.6 (dit verschilt overigens per algoritme en blokgrootte, lang niet altijd zo'n groot verschil). En mijn desktop... 70.8 MB/s (op één core van een Intel E8400 op 3 GHz, dus naar verhouding weinig verschil per MHz clock maar wel veel minder energiegebruik per berekening)
  • SD card (8GB class-10) 17.7MB/s write, 19.7 MB/s read met de dd-test van (en sudo hdparm -t /dev/mmcblk0 geeft 18.7 MB/s read). Niet slecht, al doet de SSD in mijn dektop 224 MB/s. Een 4 GB class-4 card gaf 7.2 MB/s write, 20.1 MB read; er is dus verschil in classes (maar: in de praktijk meer in merken...).
  • Willekeurige USB stick (sudo dd if=/dev/sda of=/dev/null bs=32M count=10 iflag=direct) lezen geeft 14.5 MB/s, maar daar is de stick vermoedelijk beperkend (desktop geeft zelfs ook maar 15.3 MB/s). Mijn external USB 2.0 disk gaat met 27.2 MB/s (behalve de eerste keer, toen sliep'ie nog: 17.6 MB/s inclusief opstarten).
De Raspberry Pi kan een stuk sneller door in config.txt te optimaliseren. Zie bijvoorbeeld SD Card performance in R-Pi onboard slot. De core, het geheugen en andere bussen overklokken kan ook via deze file, core tot maximaal iets rond 1 GHz. Nog eens uitproberen, voorlopig eerst andere zaken. Uiteraard gaat het energiegebruik ook omhoog bij overklokken.

Diversen

Hier moet ik stukjes nog wat meer uitleggen, als ik tijd heb... Wachtwoord veranderen met het passwd commando. .bashrc en zo goed configureren. Maar, met SSH wil ik eigenlijk niet met wachtwoord maar met SSH key-files werken net als op mijn NSLU2: kopieer de authorized_keys naar /home/pi/.ssh.

Minimum setup met een Raspberry Pi
Minimum opzet van een Raspberry Pi: +5 Volt en ethernet

Opzetten vast IP adres (zie fixedip, voorlopig even op 192.168.1.210); zodat de raspberry zelfs zonder router direct aan een laptop gehangen kan worden met alleen maar een ethernetkabeltje tussen de twee: hier is mijn configuratiefile /etc/network/interfaces. Let op: bij een directe verbinding moet je dan ook aan de kant (dus op de laptop) een IP-adres met de hand configureren want dat wordt in deze situatie niet automatisch toegewezen; bv in Linux met sudo ifconfig eth0 192.168.1.1 netmask 255.255.255.0 up, of in windows in de IPv4 properties van de netwerkaansluiting in het netwerkcentrum.

Vervolgens extra gebruikers zoals mezelf toevoegen met adduser, en zorgen dat de 'uid' etc van de gebruikers synchroon lopen met mijn andere systemen (raspberry verplaatst naar uid 1010). En mezelf toegevoegd aan de lijst van users die sudo mogen gebruiken, met behulp van het commando sudo visudo (vanuit gebruiker pi).

Wat extra programma's geïnstalleerd die ik verder nog niet genoemd heb met apt-get install, zoals het handige screen.

Handmatig mounten van een externe USB stick of disk kan met het onderstaande commando (ook nog een keertje in /etc/fstab opnemen), wel eerst éénmalig de directory /mnt/stick aanmaken:

sudo mount -o noauto,noexec,noatime,errors=remount-ro,uid=1000,gid=100,fmask=113,dmask=002 /dev/sda1 /mnt/stick

X-windows zonder hdmi-TV

X starten?

De grafische LXDE omgeving start niet automatisch; gebruik startx hiervoor. X stoppen zou moeten met:
/etc/init.d/lightdm stop (???)

Zoals gezegd, ik had er nog geen display aan hangen, en overigens ook geen toetsenbord en muis (alles gaat via SSH op mijn desktop), ik wil de raspberry voorlopig toch 'headless' gebruiken. Maar, dat wil niet zeggen dat je geen grafische programma's kunt draaien, integendeel. Ik zit nu tenslotte ook achter een beeldscherm: van mijn desktop. En, lang leve het X11 windows systeem: ik kan dus de applicaties op de Raspberry Pi gebruik laten maken van de X-server op mijn Ubuntu PC! Handig als je files wilt bewerken op de Raspberry, met de leafpad editor (stuk makkelijker dan vi).

Je moet hiervoor wel in Putty X11 forwarding aanzetten (SSH → X11), of je normale SSH config goed zetten, of starten met -X. Ook is het nuttig de .Xauthority file bij te werken met de waardes van de magic cookies van de Raspberry; met behulp van het xauth commando. Heb de .Xauthority file op de Raspberry gelijk gemaakt voor /home/pi, /home/kees en /root, LXDE apps als leafpad (text editor als gedit), pcmanfm (file manager) en lxterminal werken nu soepel.

kees@DualCore:~$ xauth
Using authority file /home/kees/.Xauthority
xauth> list
DualCore/unix:0  MIT-MAGIC-COOKIE-1  <lange hex value>
xauth> add DualCore/unix:10  MIT-MAGIC-COOKIE-1  <hex value van de raspberry .Xauthority>
xauth> exit

Alternatieve interface

LXDE is niet iedereens smaak; lijkt wat bij elkaar geraapt. Gnome en KDE zijn te zwaar voor de Raspberry, maar Xfce is een alternatief. Start met startxfce.

leafpad geeft nog wat issues omdat leafpad een Gtk app is: verwacht een folder .local/share. Met deze aangemaakt, en de .Xauthority OK, werkt ook dit. Meestal... En, kreeg nog een foutmelding "Failed to load module "canberra-gtk-module": sudo apt-get install libcanberra-gtk-module verhelpt dit.

Met TV zonder toetsenbord

Ondertussen (eind september) heb ik hem toch ook aan de TV gehangen. Maar, hoe bedien je het dan vanaf je bank? Je kan uiteraard een draadloos toetsenbord met muis op de USB-poort aansluiten, maar een ander alternatief is het gebruik van je Android telefoon/tablet met de remoteDroid app (werkt ook voor het bedienen van computers). Op het scherm van je telefoon of tablet verschijnt er dan een toetsenbord en mouse pad, om je Raspberry (of andere computer) te bedienen. Op mijn Ubuntu PC werkt dit prima, op de Raspberry moet ik het nog proberen. Moet je wel java op je Raspberry geïnstalleerd hebben (300 Mbyte...), apt-get install openjdk-7-jdk. Vervolgens de app starten met java -jar RemoteDroidServer.jar

Raspberry SW bijwerken

Vervanging voor NSLU2

Veel van de configuratie gaat lijken op die van mijn NSLU2, dus kijk daar voor verdere stappen...

Om de Raspberry Pi te updaten is een aantal stappen nodig. Ik zou eerst wat ruimte op de SD-kaart vrijmaken (gebruik 'df' om de disk ruimte te bekijken) door de oude applicatiecache te legen met het clean commando, en dan de lijst met recente versies ophalen om daarmee de applicaties bij te werken:

sudo apt-get autoclean;
sudo apt-get clean; # eerste de cache opruimen, scheelt ruimte
sudo apt-get update; # nieuwe lijst van packages
sudo apt-get upgrade; # de daadwerkelijke update
sudo apt-get autoremove; # opruimen packages die niet meer nodig zijn

Maar, dit werkt nog niet de onderliggende kernel en bootfiles bij; hiervoor is nog een extra commando nodig:

# sudo apt-get install rpi-update; # install als je hem nog niet hebt
sudo rpi-update; # werk kernel en boot-scripts etc bij
sudo sync; sudo reboot

Hiermee heb ik de laatste kernel, zie hieronder het verschil met het commando 'uname -a' voor en na de meest recente rpi-update:

# Origineel: Linux raspberrypi 3.1.9+  #168 PREEMPT Sat Jul 14 18:56:31 BST 2012 armv6l
# Voor:      Linux raspberry1 3.12.22+ #691 PREEMPT Wed Jun 18 18:29:58 BST 2014 armv6l
# Na update: Linux raspberry1 3.18.3+  #741 PREEMPT Fri Jan 23 13:32:52 GMT 2015 armv6l GNU/Linux
# Hieronder verder voor de Raspberry3

Overigens heb ik soms het probleem dat niet alle packages worden bijgewerkt, met de melding 'The following packages have been kept back' en een lijst van packages. Meer hierover is te vinden op deze pagina, ik doe meestal gewoon het onderstaande commando en dan gaat het goed:

sudo apt-get dist-upgrade

Maar, zie de waarschuwing op bovengenoemde pagina. Daarnaast, maak regelmatig een backup!!! Na een update kon ik niet meer booten; had gelukkig een backup en kon de BOOT partitie terugzetten. Ach, en is gelijk een goed moment om de netwerkschijf eens een file system check te laten doen (fsck), was 893 dagen geleden... 0 fouten!!

De Raspberry Pi 3

OK, we slaan de 2 over en gaan gelijk naar de 3. Ik ga niet voor de NOOBS beginners-versie want weet al redelijk wat ik wil: op een lege SD-card (8 GB, class 10) de minimale Raspbian versie gezet (2016-02-26-raspbian-jessie-lite). Ik wil er geen volledige desktop op, wordt toch als server zonder display en toetsenbord opgezet. Gelukkig staat SSH standaard tegenwoordig aan, dus ik sluit alleen een Ethernetkabel en de voeding aan. Er gaan lampjes aan en uit, en met Fing zie ik dat er eeen apparaat bij is gekomen op het interne netwerk! Zie ook gelijk het automatisch toegewezen IP-adres: we kunnen inloggen met ssh pi@192.168.0.125, wachtwoord is 'raspberry'.

De volgende stap is de eerste configuratie: nieuw wachtwoord, instellen tijdzone, etc. Dit gaat met het commando sudo raspi-config, even door alle opties heenlopen (bijvoorbeeld om I2C aan te zetten). De locale heb ik ingesteld op en_US.UTF-8. Daarna even opnieuw opstarten. Vreemd, de locale lijkt niet overgekomen te zijn; lijkt nu een mix tussen UK en NL? Later... Eerst de meest recente SW versies, zie hierboven op deze pagina in Raspberry SW bijwerken. Dat gaat wel een heel stuk rapper dan op de Raspberry 1. Welke versie staat er ondertussen na nog wat updates op (uname -a):

# Linux Raspberry3 4.1.21-v7+ #872 SMP Wed Apr 6 17:34:14 BST 2016 armv7l GNU/Linux
# Linux raspberry3 4.4.26-v7+ #915 SMP   Thu Oct 20 17:08:44 BST 2016 armv7l GNU/Linux
# Linux raspberry3 4.9.13-v7+ #974 SMP Wed Mar 1 20:09:48 GMT 2017 armv7l GNU/Linux

Voeding

Als je de RP3 stopt met sudo halt gaat het stroomgebruik vreemd genoeg omhoog tot 0.57 Ampere, wat ook aan de temperatuur te voelen is...

Stoppen kan beter netjes met sudo shutdown -h now, dan is het stroomgebruik nog maar 50 mA, ruim 10x minder.

Er wordt gezegd dat je een goede voeding van 2.5 Ampere nodig hebt. Maar, hoe veel gebruikt'ie nu echt? Ik meet waardes tussen de 0.23 Ampere (rust) en 0.4 Ampere (SSL benchmark). Die 2.5 Ampere is dus meer bedoeld als je ook nog bijvoorbeeld een harde schijf via de USB voedt, plus toetsenbord, muis en zo voort; en ook nog zwaar video speelt. Voor mij (geen display, niets op de USB aangesloten behalve een extern gevoede harde schijf) zal 1 Ampere voldoende zijn, moet ik eens testen. Wel moet de voeding goed stabiel zijn. Ps: 0.4 Ampere bij 5 Volt is 2 Watt, een mooie waarde. Kan wat mij betreft gerust 24 uur per dag aan staan.

Snelheid

En de snelheid? Inderdaad 10x die van de Raspberry 1? Een snelle test met 'openssl speed rsa1024' laat onderstaande waardes zien (is het aantal rsa1024 verificaties per seconde). Is natuurlijk slechts één benchmark, maar komt wel in de buurt van een factor 10, als je alle cores aan het werk zet (openssl gebruikt zelf maar een core, dus 4x starten). Moet nog eens een 'echte' benchmark doen, dit was even een snelle eerste indicatie.

Processor
Raspberry 1
Raspberry 3 (een core)
Raspberry 3 (4 cores)
Intel E8400 1 core
Snelheid
1566
5030
10400
52900
Factor
1 x
3.2 x
6.6 x
34 x

Van de RP1 naar de RP3

En dan wordt het tijd om alle services over te zetten (zie de server lijst). Ga ik dit doen door de zaak opnieuw te installeren, of trek ik het kaartje uit de Raspberry 1 en plug het in de Raspberry 3? Schijnt te kunnen, mits de software is bijgewerkt naar een versie na het uitbrengen van de RP3. Maar helaas, bij mij lukt dit niet, zal toch alles opnieuw moeten installeren, gaat even duren. Gelukkig dat ik (onder andere in deze paginas) heb bijgehouden wat ik er zoal op heb gezet. En, na 4 jaar eens alles wat nodig is 'vers' installeren kan geen kwaad. Begonnen met de eerste stappen, met name de security:

  • SSH server configureren (keyfiles in plaats van passwords, ander poortnummer, geen root login, en zo)
  • iptables (en ip6tables) configureren, zie mijn firewall pagina
  • Samba server opzetten om als netwerkdisk te werken. Samba server is iets nieuwer dan op de RP1, maar verschillen zijn minimaal.
  • C compiler testen: build-essential en GCC zijn al geinstalleerd, en hello.c ("Hello World") en mijn I2C LM75BD temperatuursensor-uitlezing werken. Mooi.
  • Wat ik voorlopig nog niet installeer is squid (gebruik ik niet meer sinds ik OpenVPN heb draaien). Ook jailkit lijkt (nog) niet nodig.
  • En de basics voor de servers: eCryptfs, dnsmasq, mediatomb minidlna, openVPN, exim4; grotendeels met de configuratie vanuit de raspberry Pi 1's /etc/ map en zo overgekopieerd. Handigst is om instellingen met 'tar' inclusief toegangsrechten etc in te pakken, bijvoorbeeld sudo tar -pcjf /home/kees/httpd.tar.bz2 /home/httpd. Dan de gemaakte tar file op de Raspberri 3 zetten en weer uit pakken (doe ik via mijn home directory) met sudo tar -xpjf /home/kees/httpd.tar.bz2 home/httpd; sudo mv home/httpd /home
  • En maar eens een backup maken van de SD-card, nu ik een goede basis-configuratie heb.

Nu de rest nog. Tot de volgende keer...