Forum: PC-Programmierung Ubuntu abspecken?


von CANSystem (Gast)


Lesenswert?

Hallo zusammen,

wir haben in ein Messsystem ein SOM (System on module) integriert. Von 
Haus aus wird ein BSP zur Verfügung gestellt inkl. Ubuntu-basierte 
Beispiel Distribution (root filesystem). Die Hardware läuft mit der 
Beispiel Distribution sehr gut. Es wurden diverse Anpassungen an 
Treibern, Devicetree usw. vorgenommen.

Jetzt stellt sich mir die Frage, warum jetzt (wie immer) eine eigene 
Distribution bzw. root filesystem z. B. mit Yocto oder mit Buildroot 
erstellen, wenn es so ganz gut funktioniert. Never change a running 
system :-)

Das Problem, wir können (wollen) unseren Kunden kein Ubuntu inkl. z. B. 
LibreOffice verkaufen :-)

Die Fragen:
1. Wie kann ich Ubuntu am besten abspecken bzw. an unsere Bedürfnisse 
anpassen?
2. Gibt es da eine elegante Möglichkeit oder Erfahrungen zu?

Danke :-)

von Dieter (Gast)


Lesenswert?

Abspecken: Nicht Ricccarda mit dazu stellen.

Einfach mal die Suchmaschine anwerfen und nachlesen, wie man seine 
eigene Distro oder Paketauswahl baut.

Du darfst ohne Genehmigung kein Ubuntu verkaufen.

von Oliver S. (oliverso)


Lesenswert?

Dieter schrieb:
> Du darfst ohne Genehmigung kein Ubuntu verkaufen.

Du darfst ohne Genehmigung kein verändertes Ubuntu weitergeben, egal, ob 
gegen Geld oder nicht.

Oliver

von (prx) A. K. (prx)


Lesenswert?

CANSystem schrieb:
> Wie kann ich Ubuntu am besten abspecken bzw. an unsere Bedürfnisse
> anpassen?

"Ubuntu base" als Grundlage verwenden.

von CANSystem (Gast)


Lesenswert?

Dieter schrieb:
> Einfach mal die Suchmaschine anwerfen und nachlesen, wie man seine
> eigene Distro oder Paketauswahl baut.

Antwort:

CANSystem schrieb:
> Distribution bzw. root filesystem z. B. mit Yocto oder mit Buildroot
> erstellen

Oliver S. schrieb:
> Du darfst ohne Genehmigung kein verändertes Ubuntu weitergeben, egal, ob
> gegen Geld oder nicht.

Es geht hier um ein Beispiel-Root-Dateisystem der Ubuntu-Distribution. 
->

CANSystem schrieb:
> Ubuntu-basierte
> Beispiel Distribution (root filesystem).

(prx) A. K. schrieb:
> "Ubuntu base" als Grundlage verwenden.

Sas könnte ich mir mal ansehen. DANKE!

von Frank K. (fchk)


Lesenswert?

Das initiale Erstellen eines rootfs bei Debian-basierten Distributionen 
wird Bootstrapping genannt. Da gibt es dann ein Tool, das Du auf dein 
Paketrepository zeigen lässt, und das nimmt sich dann alle Pakete aus 
main mit dem Status "essential" und packt die in einem neuen Rootfs aus. 
Dazu kommen dann die diversen Konfigurationsdateien, Kernel, Module, 
Bootloader,...

https://wiki.ubuntuusers.de/Installation_mit_debootstrap/

fchk

von Oliver S. (oliverso)


Lesenswert?

CANSystem schrieb:
> Es geht hier um ein Beispiel-Root-Dateisystem der Ubuntu-Distribution.
> ->
>
> CANSystem schrieb:
>> Ubuntu-basierte
>> Beispiel Distribution (root filesystem).

Lies die Ubuntu-Lizenz, da steht alles drin. Wenn Ubuntu draufsteht, 
kommst du um die nicht drumherum. Die gilt auch für Ubuntu-Base.

Oliver

von CANSystem (Gast)


Lesenswert?

Frank K. schrieb:
> Das initiale Erstellen eines rootfs bei Debian-basierten
> Distributionen
> wird Bootstrapping genannt.

Dazu habe ich gerade was beim Hersteller gefunden.
Bootstrapping war das Stichwort.
Danke!

von imonbln (Gast)


Lesenswert?

CANSystem schrieb:
> Die Hardware läuft mit der
> Beispiel Distribution sehr gut. Es wurden diverse Anpassungen an
> Treibern, Devicetree usw. vorgenommen.

Die Anpassungen sollten der GPL unterliegen und daher, auch bei anderen 
Systemen leicht eingepflegt werden können.

CANSystem schrieb:
> Jetzt stellt sich mir die Frage, warum jetzt (wie immer) eine eigene
> Distribution bzw. root filesystem z. B. mit Yocto oder mit Buildroot
> erstellen, wenn es so ganz gut funktioniert.

Stimmt, eine eigene Distribution sollte man wirklich nicht erstellen. 
Aber ein eigens BSP für das System hätte schon einen gewissen Charme.

Distribution = Generische Sammlung von Paketen, die möglichst ein 
breites Spektrum an Hardware & Use Cases abdecken sollen.

BSP = speziell auf das Gerät und den aktuellen Anwendungsfall angepasste 
Software, meist kleiner und leichter zu warten.

Die Vorteile von BSPs welche zum Beispiel mit yocto erstellt worden 
sind.

Du stellst die Paketauswahl für dein System zusammen, kannst entscheiden 
wie weit du die Software für deinen Anwendungsfall optimieren willst und 
die Hemmschwelle bei Kunden Software nachzuinstallieren, ist deutlich 
größer als wenn da ein Ubuntu läuft. Ein weiterer Vorteil von einem BSP 
im Vergleich zu einer Distribution, ein BSP wird meistens als komplettes 
Image an den Kunden verteilt. Beim Update gibt es ein komplett neues 
Image. Das spart Signifikaten QA Aufwand, da die QA genau einen Zustand 
testen muss und nicht eine Matrix aus unterschiedlichen Paketen, die 
vielleicht mal ins System eingespielt wurden.
Außerdem hast du bei einem eigen BSP die Möglichkeit, den Update Zyklus 
der Software besser zu steuern. Bei einer generischen Distribution musst 
du immer damit rechnen, dass die irgendwas updaten, dass bei deiner 
eigenen Software einen unerwarteten Nebeneffekt auslöst. Meisten 
passiert, das kurz nachdem du die Software Released hast oder wenn du 
gerade im Urlaub bist.
Last but not least, kann auch für Selbst machen sprechen, dass du eigene 
BSP Images leichter Digital Signieren kannst, sicher das machen 
Distributionen mit Ihrer Software auch, aber bei Selbermachen bist du 
der einzige der denn Schlüssel hat und musst nicht auf Zulieferer 
vertrauen, ob das ein gutes Argument ist hängt von deinen Use Case ab.

Nachteil von Selbermachen ist natürlich, es kostet Zeit und/oder Geld. 
Hier gibt es einige Dienstleister, welche dir helfen können, ein BSP 
Initial mit Yocto ( defakto Industrie Standard zur Zeit) einzurichten.
Aber damit ist es nicht getan, du solltest bedenken, dass du regelmäßig 
die Software auf einen aktuellen Stand halten solltest. Meine 
persönliche Erfahrung, sagt das geht am Schmerz freisten, wenn du 
regelmäßig kleine Updates machst, ob du die Veröffentlichst ist eine 
andere Entscheidung, aber wenn du es zulange schleifen lässt, werden die 
Änderungen sehr Komplex.

von usuru (Gast)


Lesenswert?


von CANSystem (Gast)


Lesenswert?

@imonbln 22.04.2022 10:16
Ich danke Dir für die tolle Zusammenfassung.
Wir werden es mit Yocto umsetzen.
Zum SOM gibt es auch schon -> Yocto BSP layer.

Schönes Wochenende :-)

von Dutart (Gast)


Lesenswert?

CANSystem schrieb:
> Das Problem, wir können (wollen) unseren Kunden kein Ubuntu inkl. z. B.
> LibreOffice verkaufen :-)

Vom Hersteller des SOM ein System einfordern welches nicht nur eine Demo 
darstellt.


CANSystem schrieb:
> @imonbln 22.04.2022 10:16
> Ich danke Dir für die tolle Zusammenfassung.
> Wir werden es mit Yocto umsetzen.
> Zum SOM gibt es auch schon -> Yocto BSP layer.
> Schönes Wochenende :-)

Sehr gute Wahl, die Lernkurve ist aber ordentlich.

Wobei das meiste schon erledigt ist sofern ihr ein sauberes BSP bekommt 
(und kein Demo BSP!).

SWupdate mit U-Boot Aktualisierung auch alles seitens BSP dabei?

Kernel schön mittels Overlay oder gar Mainline?

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Entscheidend wird wohl auch ein bisschen sein, wie das sich beim Kunden 
denn mit SW-Updates gestalten soll.
Soll der dann selber mit "sudo apt-get gedoens" & co rumfuhrwerken - 
oder doch eher von euch mit kompletten Updates versorgt werden? Und wie 
kommen die dann auf sein System?

Gruss
WK

von Dutart (Gast)


Lesenswert?

Dergute W. schrieb:
> Moin,
> Entscheidend wird wohl auch ein bisschen sein, wie das sich beim Kunden
> denn mit SW-Updates gestalten soll.
> Soll der dann selber mit "sudo apt-get gedoens" & co rumfuhrwerken -
> oder doch eher von euch mit kompletten Updates versorgt werden? Und wie
> kommen die dann auf sein System?
> Gruss
> WK

https://wiki.ubuntuusers.de/Aktualisierungen/Konfiguration/#unattended-upgrades


Aber mit Yocto richten die Jungs hinter einer Domain einen Server ein 
von dem ihre Updates mittels SWupdate (oder Alternativen wobei die 
Updates mit Dual Boot einfach simpel und sicher sind) automatisch 
gepullt werden.

Alternativ bringt die Software direkt die Möglichkeit mit von USB Sticks 
zu aktualisieren oder mittels eingebautem Webserver, ähnlich einer 
Fritzbox.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Dutart schrieb:
> Aber mit Yocto richten die Jungs hinter einer Domain einen Server ein
> von dem ihre Updates mittels SWupdate (oder Alternativen wobei die
> Updates mit Dual Boot einfach simpel und sicher sind) automatisch
> gepullt werden.
>
> Alternativ bringt die Software direkt die Möglichkeit mit von USB Sticks
> zu aktualisieren oder mittels eingebautem Webserver, ähnlich einer
> Fritzbox.

axo. Na, dann.

Gruss
WK

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.