Gluon2Futro && Futro S700

Diese Thin-Clients sind doch immer wieder für eine Überraschung gut.

Ich hatte mir mal ’ne Handvoll Futro S700 mit 2. Ethernet gesichert — primär, weil dieses 2. Ethernet PoE-fähig ist und als Einzelmodul mehr als zwei jener Futros kostete, dabei aber in einer weiter Reihe von Futros (IIRC S5xx, S7xx, S9xx) einsetzbar ist.

Daß Gluon2Futro damit nicht umgehen kann, war vorauszusehen, daß es aber mehr als nur eine geänderte bitte_nicht_loeschen.sh für die S700-CPU brauchte, überraschte.

Letztlich lag es daran, daß der USB-Stick nicht als /dev/sdb1 gemountet wurde, sondern als /dev/sdc1; dies machte Änderungen an home/tc/start.sh notwendig und dies die Arbeit mit cpio.

Kurz:

$ mkdir core.tmp
$ cd core.tmp/
$ zcat /media/wusel/GLUON2FUTRO/boot/core.gz | sudo cpio -i
$ sudo vi home/tc/start.sh
$ find . | sudo cpio -o -H newc | gzip >/media/wusel/GLUON2FUTRO/boot/core.gz
$ umount /media/wusel/GLUON2FUTRO

Die „sudo“ sind wichtig, damit die Permissions erhalten bleiben — core.gz ist letztlich der zukünftige Inhalt des RAM-Disk-root-FS …

Die Änderung in quick & dirty ist dann an sich trivial:

--- ../core.old/home/tc/start.sh	2022-09-01 19:23:37.214038944 +0200
+++ ../core.tmp/home/tc/start.sh	2022-09-01 19:06:22.496316124 +0200
@@ -31,13 +31,13 @@
 echo
 echo "################################################################################"
 echo "#                                                                              #"
-echo "#                       GLUON auf Futro S550 Autoinstaller                     #"
+echo "#                       GLUON auf Futro Sxxx Autoinstaller                     #"
 echo "#                                                                              #"
 echo "################################################################################"
 echo
 echo
 
-mount /dev/sdb1
+mount /dev/sdb1 || mount /dev/sdc1
 if [ $? != "0" ]; then
   echo Fehler: Kann USB-Partition mit Gluon-Image-Datei nicht einbinden!
   echo Abbruch!
@@ -50,16 +50,18 @@
 fi
 echo
 
-cd /mnt/sdb1
+cd /mnt/sdb1 || cd /mnt/sdc1
 
 /bin/sh bitte_nicht_loeschen.sh
 
 if [ $? != "0" ]; then
   cd
-  sudo umount /mnt/sdb1
+  sudo umount /mnt/sdb1 ||:
+  sudo umount /mnt/sdc1 ||:
   Sirene
 else
-  sudo umount /mnt/sdb1
+  sudo umount /mnt/sdb1 ||:
+  sudo umount /mnt/sdc1 ||:
 fi
 
 sudo poweroff

Dazu dann noch der if-Zweig für den AMD G-T44R in bitte_nicht_loeschen.sh:

--- Gluon2Futro/interna/bitte_nicht_loeschen.sh	2022-09-01 13:29:27.356799600 +0200
+++ /media/wusel/GLUON2FUTRO/bitte_nicht_loeschen.sh	2022-09-01 04:36:14.000000000 +0200
@@ -94,17 +94,21 @@
       if (grep -Fq "AMD GX-217GA" /proc/cpuinfo) ; then
         echo "AMD GX-217GA Prozessor gefunden -> Futro S720"
       else
-        echo
-        echo Fehler:
-        echo Kein Futro S550, S550-2, S720 oder Wyse R90LE.
-        echo
-        echo Fehlergrund:
-        echo Keinen AMD Sempron 2100+, 200U, 210U oder GX-217GA gefunden.
-        echo
-        echo Abbruch!
-        echo
-        sleep 3
-        exit 1
+        if (grep -Fq "AMD G-T44R Processor" /proc/cpuinfo) ; then
+          echo "AMD G-T44R Processor Prozessor gefunden -> Futro S700"
+        else
+          echo
+          echo Fehler:
+          echo Kein Futro S550, S550-2, S700, S720 oder Wyse R90LE.
+          echo
+          echo Fehlergrund:
+          echo Keinen AMD Sempron 2100+, 200U, 210U, G-T44R oder GX-217GA gefunden.
+          echo
+          echo Abbruch!
+          echo
+          sleep 3
+          exit 1
+        fi
       fi
     fi
   fi

Und dann fluppt’s auch mit dem S700; aber nicht vergessen, das total doofe „No keyboard detected, press any key to continue“ im BIOS abzustellen, wenn der Futro ohne angeschlossene Tastatur laufen soll …

EDIT: PR gestellt.