


Yocto-Tutorial „Erste Schritte': Erstellen Sie Ihr individuelles Linux-System auf Ubuntu
Wenn Sie ein Embedded-Entwickler sind, stoßen Sie möglicherweise auf diese Frage: Wie erstellt man ein geeignetes Linux-System für Ihre Hardwareplattform? Wie kann man die Funktionalität und das Erscheinungsbild eines Linux-Systems anpassen? Wie kann die Sicherheit und Stabilität des Linux-Systems gewährleistet werden? Diese Probleme können durch den Einsatz des Yocto-Projekts gelöst werden. Das Yocto-Projekt ist ein Open-Source-Kooperationsprojekt, das Ihnen hilft, benutzerdefinierte Linux-Systeme unabhängig von Ihrer Hardware-Architektur zu erstellen. Das Yocto-Projekt bietet einen flexiblen Satz an Tools und Ressourcen, mit denen Sie Ihre eigene Linux-Distribution von Grund auf erstellen oder basierend auf vorhandenen Linux-Distributionen modifizieren und optimieren können. In diesem Artikel erfahren Sie, wie Sie mit Yocto eine minimale Linux-Distribution unter Ubuntu erstellen und wie Sie die grundlegenden Konzepte und den Arbeitsablauf von Yocto kennenlernen.

Grundvoraussetzungen für die Entwicklungsmaschine
Mindestens 4-6 GB RAM
Die neueste Version des Ubuntu-Systems (dieser Artikel verwendet 16.04 LTS)
Der verbleibende Speicherplatz beträgt mindestens 60-80 GB
Installieren Sie die folgenden Pakete, bevor Sie eine Linux-Distribution erstellen
Laden Sie den neuesten stabilen Zweig von Yocto herunter (Poky ist die minimale Entwicklungsumgebung)
apt-get update apt-get install wget git-core unzip make gcc g++ build- essential subversion sed autoconf automake texi2html texinfo coreutils diffstat python- pysqlite2 docbook-utils libsdl1.2-dev libxml-parser-perl libgl1-mesa-dev libglu1-mesa- dev xsltproc desktop-file-utils chrpath groff libtool xterm gawk fop

Wie unten gezeigt, ist das für die Entwicklungsumgebung zu installierende Paket fast 1 GB groß.

In diesem Tutorial wird der Morty-Stable-Zweig von Poky auf das System geklont.
git clone -b morty git://git.yoctoproject.org/poky.git

Gehen Sie in das Poky-Verzeichnis und führen Sie den folgenden Befehl aus, um einige Umgebungsvariablen für die Yocto-Entwicklungsumgebung festzulegen (festzulegen/exportieren).
source oe-init-build-env
Wie unten gezeigt, wechselt der Pfad im Terminal nach dem Ausführen des Open Embedded (oe) Build Environment-Skripts automatisch zum Build-Verzeichnis für die anschließende Konfiguration und Erstellung der Release-Version.

Der Screenshot oben zeigt die Datei local.conf, die im Verzeichnis conf erstellt wurde. Dies ist die Konfigurationsdatei, die von Yocto verwendet wird, um die Zielmaschinendetails und die Zielarchitektur des SDK festzulegen.
Wie unten gezeigt, ist die hier festgelegte Zielmaschine qemux86-64.

Wie im Screenshot unten gezeigt, entkommentieren Sie die folgenden Parameter in local.conf.
DL_DIR ?= "${TOPDIR}/downloads"

SSTATE_DIR ?= "${TOPDIR}/sstate-cache"

TMPDIR ?= "${TOPDIR}/tmp"

PACKAGE_CLASSES ?= "package_rpm" SDKMACHINE ?= "i686"

Legen Sie wie unten gezeigt ein leeres Passwort und einige nachfolgende Parameter in local.conf für Yocto-basiertes Linux fest. Andernfalls können sich Benutzer nicht bei der neuen Version anmelden.
EXTRA_IMAGE_FEATURES ?= "debug-tweaks"

Wir planen nicht, grafische Tools zum Erstellen eines Linux-Betriebssystems zu verwenden, wie z. B. Toaster (Kochfeld wird nicht mehr unterstützt).
Yocto-Kompilierungs- und Erstellungsprozess
Führen Sie nun den Bitbake-Tool-Befehl unten aus, um mit dem Herunterladen und Kompilieren des Pakets für den ausgewählten Zielcomputer zu beginnen.
bitbake core-image-minimal

Es ist sehr wichtig, den obigen Befehl unter einem normalen Linux-Benutzer auszuführen und nicht unter dem Root-Benutzer . Wie im Screenshot unten gezeigt, tritt der unten gezeigte Fehler auf, wenn Sie den Bitbake-Befehl unter dem Root-Benutzer ausführen.

Führen Sie das Skript, das Umgebungsvariablen exportiert (oe-init-build-env), erneut aus und führen Sie denselben Befehl erneut aus, um den Download- und Kompilierungsprozess zu starten.

Wie unten gezeigt, besteht der erste Schritt beim Erstellen einer Skriptkomponente darin, die Konfiguration (Rezept) zu analysieren.

Der Screenshot unten zeigt den Parsing-Prozess des Build-Skripts. Außerdem werden die Details des Build-Systems angezeigt, das zum Erstellen Ihrer neuen Yocto-basierten Distribution verwendet wird.

Nach dem Herunterladen des SDK und der erforderlichen Bibliotheken besteht der nächste Schritt darin, das Paket herunterzuladen und zu kompilieren. Der Screenshot unten zeigt die Aufgaben, die zum Erstellen einer neuen Distribution ausgeführt werden. Dieser Schritt wird 2-3 Stunden dauern, da die benötigten Pakete zunächst heruntergeladen und dann für die neue Linux-Distribution kompiliert werden müssen.

Der Screenshot unten zeigt den Abschluss der Aufgabenliste.

Das neue Image, das für den Zielmaschinentyp qemux86-64 kompiliert wurde, befindet sich unter build/tmp/deploy/images/qemux86-64:

Wie unten gezeigt, generiert der obige Befehl einen Fehler, wenn er auf Putty ausgeführt wird.

Führen Sie den obigen Befehl erneut über RDP auf der Ubuntu-Plattform aus.

Öffnet einen neuen Bildschirm für qemu, auf dem die neue Yocto-basierte Linux-Distribution ausgeführt wird.

Das Folgende zeigt die Anmeldeschnittstelle der neuen Version sowie die Versionsnummer des verwendeten Yocto-Projekts. Der Standardbenutzername ist root und das Passwort ist leer.

Verwenden Sie abschließend den Root-Benutzernamen und das leere Passwort, um sich bei der neuen Distribution anzumelden. Wie im Screenshot unten gezeigt, werden grundlegende Befehle (data, ifconfig und uname) auf dieser minimalen Linux-Version ausgeführt.

Das Ziel dieses Artikels ist es, den Prozess der Erstellung einer neuen Linux-Distribution mit Yocto zu verstehen.
Durch diesen Artikel haben Sie gelernt, wie Sie Yocto verwenden, um eine minimale Linux-Distribution auf Ubuntu zu erstellen, sowie die grundlegenden Konzepte und den Arbeitsablauf von Yocto. Sie können Yocto verwenden, um ein geeignetes Linux-System für Ihre eingebetteten Geräte oder andere Szenarien anzupassen, um Ihre Bedürfnisse und Vorlieben zu erfüllen. Dies ist natürlich nur ein Teil der vielen Funktionen und Optionen, die das Yocto-Projekt bietet. Wenn Sie mehr über das Yocto-Projekt und die Embedded-Linux-Entwicklung erfahren möchten, müssen Sie es noch weiter erforschen und üben. Ich hoffe, dass dieser Artikel für Ihr Studium und Ihre Arbeit hilfreich sein kann. Gerne können Sie auch andere praktische Yocto-Fähigkeiten mit uns teilen, die Sie nutzen oder entdecken.
Das obige ist der detaillierte Inhalt vonYocto-Tutorial „Erste Schritte': Erstellen Sie Ihr individuelles Linux-System auf Ubuntu. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Die Schritte zum Starten von Apache sind wie folgt: Installieren Sie Apache (Befehl: sudo apt-Get-Get-Installieren Sie Apache2 oder laden Sie ihn von der offiziellen Website herunter). (Optional, Linux: sudo systemctl

Wenn der Port -80 -Port der Apache 80 besetzt ist, lautet die Lösung wie folgt: Finden Sie den Prozess, der den Port einnimmt, und schließen Sie ihn. Überprüfen Sie die Firewall -Einstellungen, um sicherzustellen, dass Apache nicht blockiert ist. Wenn die obige Methode nicht funktioniert, konfigurieren Sie Apache bitte so, dass Sie einen anderen Port verwenden. Starten Sie den Apache -Dienst neu.

In diesem Artikel wird beschrieben, wie die SSL -Leistung von NGINX -Servern auf Debian -Systemen effektiv überwacht wird. Wir werden Nginxexporter verwenden, um Nginx -Statusdaten in Prometheus zu exportieren und sie dann visuell über Grafana anzeigen. Schritt 1: Konfigurieren von Nginx Erstens müssen wir das Modul stub_status in der nginx -Konfigurationsdatei aktivieren, um die Statusinformationen von Nginx zu erhalten. Fügen Sie das folgende Snippet in Ihre Nginx -Konfigurationsdatei hinzu (normalerweise in /etc/nginx/nginx.conf oder deren inklusive Datei): location/nginx_status {stub_status

In diesem Artikel werden zwei Methoden zur Konfiguration eines Recycling -Bin in einem Debian -System eingeführt: eine grafische Schnittstelle und eine Befehlszeile. Methode 1: Verwenden Sie die grafische Schnittstelle Nautilus, um den Dateimanager zu öffnen: Suchen und starten Sie den Nautilus -Dateimanager (normalerweise als "Datei") im Menü Desktop oder Anwendungen. Suchen Sie den Recycle Bin: Suchen Sie nach dem Ordner recycelner Behälter in der linken Navigationsleiste. Wenn es nicht gefunden wird, klicken Sie auf "Andere Speicherort" oder "Computer", um sie zu suchen. Konfigurieren Sie Recycle Bin-Eigenschaften: Klicken Sie mit der rechten Maustaste auf "Recycle Bin" und wählen Sie "Eigenschaften". Im Eigenschaftenfenster können Sie die folgenden Einstellungen einstellen: Maximale Größe: Begrenzen Sie den im Recycle -Behälter verfügbaren Speicherplatz. Aufbewahrungszeit: Legen Sie die Erhaltung fest, bevor die Datei automatisch im Recyclingbehälter gelöscht wird

Befolgen Sie die folgenden Schritte, um den Apache -Server neu zu starten: Linux/MacOS: Führen Sie sudo systemCTL RESTART APache2 aus. Windows: Net Stop Apache2.4 und dann Net Start Apache2.4 ausführen. Führen Sie Netstat -a | Findstr 80, um den Serverstatus zu überprüfen.

In Debian -Systemen werden Readdir -Systemaufrufe zum Lesen des Verzeichnisinhalts verwendet. Wenn seine Leistung nicht gut ist, probieren Sie die folgende Optimierungsstrategie aus: Vereinfachen Sie die Anzahl der Verzeichnisdateien: Teilen Sie große Verzeichnisse so weit wie möglich in mehrere kleine Verzeichnisse auf und reduzieren Sie die Anzahl der gemäß Readdir -Anrufe verarbeiteten Elemente. Aktivieren Sie den Verzeichnis -Inhalt Caching: Erstellen Sie einen Cache -Mechanismus, aktualisieren Sie den Cache regelmäßig oder bei Änderungen des Verzeichnisinhalts und reduzieren Sie häufige Aufrufe an Readdir. Speicher -Caches (wie Memcached oder Redis) oder lokale Caches (wie Dateien oder Datenbanken) können berücksichtigt werden. Nehmen Sie eine effiziente Datenstruktur an: Wenn Sie das Verzeichnis -Traversal selbst implementieren, wählen Sie effizientere Datenstrukturen (z.

Apache kann aus den folgenden Gründen nicht beginnen: Konfigurationsdatei -Syntaxfehler. Konflikt mit anderen Anwendungsports. Berechtigungen Ausgabe. Aus dem Gedächtnis. Prozess -Deadlock. Dämonversagen. Selinux -Berechtigungen Probleme. Firewall -Problem. Software -Konflikt.

Die Readdir -Funktion im Debian -System ist ein Systemaufruf, der zum Lesen des Verzeichnisgehalts verwendet wird und häufig in der C -Programmierung verwendet wird. In diesem Artikel wird erläutert, wie Readdir in andere Tools integriert wird, um seine Funktionalität zu verbessern. Methode 1: Kombinieren Sie C -Sprachprogramm und Pipeline zuerst ein C -Programm, um die Funktion der Readdir aufzurufen und das Ergebnis auszugeben:#include#include#includeIntmain (intargc, char*argv []) {Dir*Dir; structDirent*Eintrag; if (argc! = 2) {{
