Bootparameter bearbeiten:
mount /dev/mmcblk0p1 /mnt
nano /mnt/boot.cmd
So sieht die geänderte boot.cmd aus.
#--------------------------------------------------------------------------------------------------------------------------------
# Boot loader script to boot with different boot methods for old and new kernel
# Credits: https://github.com/igorpecovnik - Thank you for this great script!
#--------------------------------------------------------------------------------------------------------------------------------
if load mmc 0:1 0x00000000 uImage-next
then
# mainline kernel >= 4.x
#--------------------------------------------------------------------------------------------------------------------------------
setenv bootargs console=ttyS0,115200 console=tty0 console=tty1 root=/dev/sda1 rootfstype=ext4 elevator=deadline rootwait
load mmc 0:1 0x49000000 dtb/${fdtfile}
load mmc 0:1 0x46000000 uImage-next
bootm 0x46000000 - 0x49000000
#--------------------------------------------------------------------------------------------------------------------------------
else
# sunxi 3.4.x
#--------------------------------------------------------------------------------------------------------------------------------
setenv bootargs console=ttyS0,115200 console=tty0 console=tty1 sunxi_g2d_mem_reserve=0 sunxi_ve_mem_reserve=0 hdmi.audio=EDID:0 disp.screen0_output_mode=EDID:1680x1050p60 root=/dev/sda1 rootfstype=ext4 elevator=deadline rootwait
setenv bootm_boot_mode sec
load mmc 0:1 0x43000000 script.bin
load mmc 0:1 0x48000000 uImage
bootm 0x48000000
#--------------------------------------------------------------------------------------------------------------------------------
fi
Zweimal folgendes ändern:
root=/dev/mmcblk0p2
in
root=/dev/sda1
ändern.
Danach müssen wir aus der boot.cmd eine ausführbare Datei machen, dazu nimmt man folgenden Befehl.
cd /mnt
mkimage -C none -A arm -T script -d boot.cmd boot.scr
Dann kommt aber eine Fehlermeldung das mkimage fehlt, ok kurz nachinstallieren.
apt-get install u-boot-tools
Dann nochmal probieren und das Ergebnis sieht wie folgt aus.
root@bananapi /tmp # mkimage -C none -A arm -T script -d boot.cmd boot.scr
Image Name:
Created: Sun Apr 17 20:41:34 2016
Image Type: ARM Linux Script (uncompressed)
Data Size: 1626 Bytes = 1.59 kB = 0.00 MB
Load Address: 00000000
Entry Point: 00000000
Contents:
Image 0: 1618 Bytes = 1.58 kB = 0.00 MB
Nun starten wir den BananaPi mit
shutdown -r now
neu. Wieder einloggen und checken ob die Platte richtig erkannt wurde. Dazu geben wir
df -h
ein. (diskfree)
Ausgabe:
Filesystem Size Used Avail Use% Mounted on rootfs 1.4T 1.1G 1.3T 1% / /dev/root 1.4T 1.1G 1.3T 1% / devtmpfs 486M 0 486M 0% /dev tmpfs 98M 232K 97M 1% /run tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 195M 0 195M 0% /run/shm
Meine Festplatte ist 1,5T groß, die Karte nur 4GB. Das rootfs ist 1.4T groß, damit bin ich zufrieden. Der BananaPI bootet jetzt nur noch von der SD-Karte danach läuft alles auf der Platte. Das macht das ganze System wesentlich flotter, eine Class 10 Karte kann man mit mindestens 10MB/s beschreiben, mein Test unten ergab ca. 40MB/s auf der Platte.