Bei Bananian handelt es sich dagegen um eine gezielt auf die A20-Familie und insbesondere auf die vorliegenden Rechner ausgelegte Distribution. Mit dem Hersteller hat sie nichts zu tun; Bananian stammt aus der Schmiede des Hamburgers Nico Isenbeck [5]. Der Vorteil gegenüber einem System wie Raspbian liegt in der Tatsache, dass es eine dedizierte Server-Distribution ist.
Das Image fällt dank einer konsequenten Paketauswahl recht klein aus. Vermissen Sie softwareseitig etwas, bereitet das Nachinstallieren aus den ARM7-Repositories von Debian via Apt-get keinerlei Probleme.
Leistung als Switch
Nach der üblichen Installation, bei der Sie das Image auf dem PC mittels Dd oder Win32 Disk Imager auf Micro-SD-Karte kopieren, booten Sie den R1 von dieser und melden sich als root und mit dem Passwort pi an. Als Nächstes konfigurieren Sie das Gerät mittels bananian-hardware und rufen danach bananian-config auf.
Dank HDMI-Ausgang und USB-Anschluss geht das wie vom RasPi gewohnt. Als Alternative schließen Sie die Platine per Kabel ans Ethernet an und loggen sich per SSH ein. Hierzu müssen Sie gegebenenfalls die Konfiguration des Netzwerks in der Datei /etc/network/interfaces (auf der zweiten Partition der Micro-SD-Karte) vor dem Booten an die lokalen Gegebenheiten anpassen – standardmäßig bezieht der R1 seine Adresse per DHCP.
Bananian startet auf dem R1 in seiner Grundkonfiguration als Standalone-Rechner. Alle per Ethernet angeschlossenen Rechner haben die Möglichkeit, mit dem R1 zu kommunizieren. Untereinander klappt das allerdings erst, wenn Sie alle Ports in ein gemeinsames VLAN zusammenfassen. Das erledigen Sie über die Datei /etc/network/if-pre-up.d/swconfig, in die Sie die Befehle aus Listing 1 eintragen. Eine dazu passende Interface-Konfiguration zeigt Listing 2.
Listing 1
#!/bin/sh ifconfig eth0 up swconfig dev eth0 set reset swconfig dev eth0 set enable_vlan 1 swconfig dev eth0 vlan 1 set ports '4 0 1 2 3 8t' swconfig dev eth0 set apply exit 0
Listing 2
auto lo iface lo inet loopback auto eth0.1 iface eth0.1 inet static address 192.168.1.1 netmask 255.255.255.0 gateway 192.168.1.250
Der Banana Pi R1 hat somit eine einzige IP-Adresse, alle Ports sind gleichberechtigt. Das Switching übernimmt hier der Switch-Chip in Hardware, die CPU-Last steigt selbst bei hohem Durchsatz im Netzwerk nicht. Der Durchsatz, gemessen mit Iperf, bewegte sich in unserem Test im Bereich von 110 MByte/s, sowohl zwischen zwei am Switch angeschlossenen Rechnern als auch zum R1 als Gegenstelle. Das ist ausreichend, in der Praxis bleibt davon aber ohnehin üblicherweise nur ein Teil übrig.
Im Idle-Modus nimmt das Board rund 3 Watt Leistung auf, unter Last im Switch-Betrieb steigt der Wert auf 5 Watt. Ein alter, “dummer” Switch im Haushalt benötigt zum Vergleich sowohl im Idle-Modus als auch unter Last konstant 3 Watt. Der TP-Link WDR4900, ein recht leistungsstarker SOHO-Router, benötigt 5 bis 7 Watt. Der dumme Switch ist nur scheinbar effizienter, denn der Switch zusammen mit einem Raspberry Pi würde mehr Strom benötigen als der R1. Trotzdem wäre der Rechner für den reinen Switch-Betrieb viel zu umfangreich ausgestattet. Erst ein zusätzlicher und quasi parallel betriebener Server macht den R1 als Kombination interessant.
Server-Dienste
Da Bananian die schon lange von Debian unterstützte ARMv7-Architektur nutzt, steht das ganze Debian-Universum an Paketen bereit. Darüber hinaus laufen alle speziell für den Raspberry Pi kompilierten Programme auf der Architektur, denn ARMv7 ist abwärtskompatibel.
Als Massenspeicher für die Server-Dienste kommen die Micro-SD-Karte, ein per USB angeschlossener Massenspeicher oder eine SATA-Disk infrage. Für das Streamen von Inhalten genügt die Performance aller dieser Speicher locker, als Network Attached Storage (NAS) zum Verwalten großer Datenbestände eignet sich das System jedoch weniger. Letztlich krankt der R1 an denselben I/O-Schwächen wie der Banana Pi, der Cubietruck oder andere A20-Designs: Die Last senkt den Durchsatz zum Netzwerk so stark ab, dass es bei der Wahl des Massenspeichers eher auf dessen Kapazität ankommt als auf die Geschwindigkeit.
Bei dem Einsatz einer SATA-Platte gilt es, zusätzlich noch einen Bug in der aktuellen Bananian-Version zu umschiffen: Die Hardware-Konfiguration versorgt die Platte nicht mit Strom. Der Kasten “Stromversorgung freischalten” zeigt, was zu tun ist.
Stromversorgung freischalten
Die Konfiguration der Hardware auf dem R1-Board ist in der Binärdatei script.bin auf der ersten Partition hinterlegt. Das System wertet diese während des Hochfahrens aus. Das Ändern der Datei gelingt recht einfach [7]. Nach dem Einhängen der ersten Partition nach /mnt wandeln Sie mittels des Tools bin2fex die Datei ins Textformat um; analog konvertiert fex2bin die Datei wieder zurück (Listing 3). Vergessen Sie nicht, vor dem Editieren eine Sicherungskopie der Datei anzulegen.
In der Textdatei gilt es, die Zeilen aus Listing 4 zu finden und anzupassen: Der Wert des Schlüssels sata_power_en bleibt im Original leer. Hier tragen Sie den in Zeile 3 angegebenen Wert ein. Anschließend wandeln Sie die Datei ins Binärformat zurück und starten den R1 neu. Nun sollte der SATA-Anschluss mit Strom versorgt sein.
Listing 3
$ sudo bin2fex /mnt/script.bin /mnt/script.fex $ sudo fex2bin /mnt/script.fex /mnt/script.bin
Listing 4
[sata_para] sata_used = 1 sata_power_en = port:PB03<1><default><default><0>
Tests in Bezug auf den Durchsatz mit FTP, SCP und Rsync liefern aus unerfindlichen Gründen stark schwankende Ergebnisse im Bereich von 16 MByte/s bei FTP und 7 MByte/s bei SCP beziehungsweise Rsync. Die Werte liegen selbst beim Einsatz einer SSD nur für FTP etwas höher (19 bis 33 MByte/s). In allen Fällen sind es nicht die Massenspeicher selbst, die den Flaschenhals darstellen, wie direktes Schreiben per Dd zeigt.





