home
erste Version am 25.07.2014
letzte Änderung am 25.07.2014

CubieTruck mit Cubie aufsetzen


Anbei mein (etwas leserlicher aufbereiteter) Schmierzettel, der bei der Installation und Einrichtung des CubieTrucks entstanden ist.
Ziel war es, einen Stromspar-Rechner mit Debian, Gigabit-Netzwerkinterface und ohne grafische Oberfläche zu haben.


Inhalt
  1. SD-Card vorbereiten
  2. SD-Card anpassen
  3. ssh-Keys hinterlegen
  4. Hostname ändern
  5. Abschluß der Grundkonfiguration
  6. SD-Card aufs NAND übertragen


SD-Card vorbereiten


Zunächst erstmal das Image laden von:
    http://www.igorpecovnik.com/2013/12/24/cubietruck-debian-wheezy-sd-card-image/
bzw. direkt:
    http://cubie.nobrainz.de/downloads/CTDebian_2.4_wheezy_vga.zip
oder vom Mirror:
    https://debianer.puppis.uberspace.de/files/Cubieboard3-Cubietruck/

Das ZIP entpacken.

SD-Card in einen Rechner stecken und per dmesg die Gerätekennung der SD-Card suchen.
Liefert sowas wie:
[761146.380218] usb 3-1: new high-speed USB device number 7 using xhci_hcd
[761146.398627] usb 3-1: New USB device found, idVendor=0781, idProduct=a7c1
[761146.398636] usb 3-1: New USB device strings: Mfr=3, Product=4, SerialNumber=2
[761146.398641] usb 3-1: Product: SDDR-113
[761146.398645] usb 3-1: Manufacturer: SanDisk
[...]
[761147.584089]  sdb: sdb1


Dann ins Verzeichnis mit der Datei "CTDebian_2.3_wheezy_vga.raw" wechseln und ausführen:
sudo dd bs=1M if=CTDebian_2.3_wheezy_vga.raw of=/dev/sdb
Wobei das of=/dev/sdb natürlich durch die per dmesg ermittelte Gerätekennung zu ersetzen ist.
Analog beim Dateinamen bzw. dessen Versionsnummer.
Die Ausgabe des dd sieht etwa so aus:
1000+0 Datensätze ein
1000+0 Datensätze aus
1048576000 Bytes (1,0 GB) kopiert, 127,062 s, 8,3 MB/s


Damit ist die SD-Card vorbereitet.


SD-Card anpassen


Nun die SD-Card in den CubieTruck stecken, danach Netzwerk-Kabel und Strom (über OTG-Anschuß) anschließen.
Der erste Start dauert zwei / drei Minuten.
Nach dem ersten Start rebootet sich cubie einmal selbst.
Nicht hektisch werden.

Immer mal wieder:
ping cubie
oder auf dem DHCP-Server auf cubie warten.

Danach:
ssh root@cubie
Das Passwort lautet: 1234

Liefert sowas wie:

  ____      _     _      _                   _   
 / ___|   _| |__ (_) ___| |_ _ __ _   _  ___| | __
| |  | | | | '_ \| |/ _ \ __| '__| | | |/ __| |/ /
| |__| |_| | |_) | |  __/ |_| |  | |_| | (__|   <
 \____\__,_|_.__/|_|\___|\__|_|   \__,_|\___|_|\_\
                                                 


Load: 0.30, 0.09, 0.03 - Board: 29.8°C - Memory: 1978Mb

root@cubie:~#


Jetzt erstmal das root-Passwort ändern und einen eigenen User (hier "dede") anlegen:
passwd

adduser dede
usermod -aG sudo dede
nano /etc/sudoers


und in /etc/sudoers ein NOPASSWD: einbauen bzw. die entsprechende Zeile darum erweitern:
%sudo   ALL=(ALL:ALL) NOPASSWD: ALL

Danach auf DE umstellen:
locale-gen de_DE.UTF-8
dpkg-reconfigure locales


Auswählen: [*] de_DE.UTF-8 UTF-8
und "Default locale for the system environment:" auf "de_DE.UTF-8"
Dann:
dpkg-reconfigure tzdata
und einstellen:  Europe + Berlin

Anschließend:
apt-get update
apt-get upgrade

cd
nano .bashrc

und "alias ll" u.s.w aktivieren.
Analog bei:
nano /home/dede/.bashrc

Jetzt ist eine gute Zeit für den ersten Reboot:
reboot


ssh-Keys hinterlegen


Nach dem Reboot kann man mit dem eben neu angelegten User weitermachen und gleich RSA-Schlüssel für Passwort-losen ssh-Zugang hinterlegen:
ssh dede@cubie

mkdir .ssh
cd .ssh
scp 11w:~/.ssh/auth* .
scp 11w:~/.ssh/*.pub .
cat *.pub >>authorized_keys
rm *.pub
exit

ssh dede@cubie
Hier wurden die auf dem Rechner 11w berechtigten RSA-Keys kopiert und um den eigenen öffentlichen Schlüssel von 11w erweitert.
Somit kann man sich in Zukunft von all denen Systemen, die auf 11w ohne Passwort zugreifen können, auch auf dem CubieTruck anmelden - inkl. 11w.


Hostname ändern


Nun wird der Hostname von cubie auf ct1 geändert:
sudo bash
hostname ct1

und in folgenden Dateien jedes Vorkommen von "cubie" auf "ct1" ändern:
nano /etc/hostname
nano /etc/hosts
nano /etc/ssh/ssh_host_dsa_key.pub
nano /etc/ssh/ssh_host_ecdsa_key.pub
nano /etc/ssh/ssh_host_rsa_key.pub

reboot


Abschluß der Grundkonfiguration


Anmelden mit neuem Hostnamen, danach ein paar Tools installieren:
ssh ct1

sudo bash
apt-get install rcconf iftop htop less


LEDs einschalten:
chmod -x /etc/init.d/disable_led.sh

root-Login abschalten:
nano /etc/ssh/sshd_config
und in der Zeile
PermitRootLogin yes
das yes auf no umstellen.

Und dann noch ntpdate deinstallieren, damit ntp beim Systemstart hoch kommt:
sudo dpkg --purge ntpdate


SD-Card aufs NAND übertragen


Nachdem die SD-Card nun eingerichtet ist, möchte man sie vielleicht in den NAND kopieren, um davon schneller starten zu können.
Trotz mehrerer Versuche bin ich nicht drumrum gekommen, die "PhoenixSuite" von http://cubieboard.org/download/ zu installieren.
Die gibts zwar auch für Linux (Ubuntu, Fedora, Redhat, CentOS), aber diese Distributionen habe ich nicht auf Hardware laufen.
Und eine VM tuts nicht, weil USB-Treiber installiert werden müssen. Man kann die Treiber zwar durchaus in der VM installieren, nützt aber nix, weil der drunterliegende Rechner bzw. Hypervisor mangels USB-Treiber den CubieTruck gar nicht erst sieht und somit auch nicht zur VM durchreichen kann.
Daher habe ich kurzerhand den (letzten mir verfügbaren) Windows-Rechner vom Sohnemann dafür requiriert und mich an folgende Anleitung gehalten:
Steps:
1. Download PhoenixSuite (or Livesuite for Lunix) from cubieboard.org
2. Download lubuntu for NAND image from cubieboard.org
3. Flash lubuntu for NAND using PhoenixSuite (or Livesuite)
    4. Download CTDebian image from this page
    5. Write CTDebian image to SD card
6. Install SD card into Cubietrack and power on. Wait for 5-10 mins for the first run and reboot.
7. Run /root/nand-install.sh and follow the instructions.
allerdings ohne 4. und 5. - weil ja schon erfolgt.
Die SD-Card ist dabei nicht gesteckt bzw. wird erst im Schritt 6 gesteckt.

Beim Anschluß des CubieTrucks an den Rechner mit der PhoenixSuite muß die FEL-Taste gedrückt gehalten werden, um in den Programmier-Modus zu gelangen.
Im Zweifelsfall gibt es zu dem Thema "CubieTruck NAND install" YouTube-Videos.

Nach Programmierung hat man zwar erstmal ein lubuntu im NAND liegen....macht aber nix....es ging dabei nur darum, irgendwelche Bits in irgendwelchen Chip-internen Registern zu setzen, um danach beliebig oft [erfolgreich] ein Linux von SD-Card nach NAND kopieren zu können. Zumindest habe ich es so verstanden, dass man die PhoenixSuite immer nur dann braucht, wenn man zwischen Android und Linux (im NAND) wechseln will. Und "ab Werk" kam mein CubieTruck zwar ohne Android aber offenbar mit für Android gesetzten Bits.

Im nachhinein ist mir noch die Idee gekommen, dass ich statt Sohnemanns Windows-Rechner wohl auch eine Ubuntu-Live-CD hätte verwenden können, um in dem Live-System die PhoenixSuite zu installieren und einmalig zu nutzen.