Inhaltsverzeichnis
Deb-Paketanalyse
Deb-Paket erstellen
Was kann an der oben genannten Methode zur Erstellung von Deb-Paketen verbessert werden:
Heim Computer-Tutorials Computerwissen Es ist so einfach, ein Deb-Paket unter Linux zu erstellen: Analyse der internen Zusammensetzung und Nutzungsprinzipien der Deb-Installationspaketdatei von Ubuntu

Es ist so einfach, ein Deb-Paket unter Linux zu erstellen: Analyse der internen Zusammensetzung und Nutzungsprinzipien der Deb-Installationspaketdatei von Ubuntu

Feb 19, 2024 pm 01:21 PM
linux 文件 deb

Es ist so einfach, ein Deb-Paket unter Linux zu erstellen: Analyse der internen Zusammensetzung und Nutzungsprinzipien der Deb-Installationspaketdatei von Ubuntu

Deb-Datei ist eine Archivdatei, die zum Verteilen und Installieren von Linux Debian und seinen abgeleiteten Verteilungsprogrammen verwendet wird und normalerweise Anwendungsdaten enthält. Sie sind praktisch für den Umgang mit Abhängigkeiten, die Desktop-Integration und die Ausführung von Skripten vor und nach der Installation. Ein weiteres Paketformat, das dem Deb-Format ähnelt, ist die RPM-Datei, die häufig in Distributionen der Fedora-Serie verwendet wird.

Dieser Artikel zeigt anhand von Beispielen, wie man ein einfaches Deb-Paket erstellt, erklärt die Rolle jeder Datei im Deb-Paket und wie sie nach der Installation wirksam wird und aufrechterhalten wird.

Deb-Paketanalyse

deb ist ein gängiges Unix-AR-Archivformat, das Anwendungs- und andere Dienstprogrammdateien enthält. Die Schlüsselkomponente ist die Steuerdatei (Control), die wichtige Informationen über das Deb-Paket und den Installer enthält.

  • Intern enthält das Deb-Paket eine Sammlung von Dateien, die die typische Dateisystem-Verzeichnisstruktur von Linux simulieren, wie z. B. /usr, /usr/bin, /opt usw. Während der Installation werden Dateien, die in einem dieser Verzeichnisse abgelegt werden, an denselben Speicherort im tatsächlichen Dateisystem kopiert. Beispielsweise werden Binärdateien wie /usr/bin/binaryfile im Paket im Verzeichnis /usr/bin/binaryfile des Systems installiert.
  • Extern folgen alle Deb-Paketdateien einer bestimmten Namenskonvention:
_-_.deb
Nach dem Login kopieren

Angenommen, Sie möchten ein Programm namens mynano, Version 1.0, veröffentlichen, das für 64-Bit-Prozessoren (AMD64) entwickelt wurde. Der Name Ihrer Deb-Datei lautet etwa mynano_1.0-0_amd64.deb

Deb-Paket erstellen

Wir sind bereit, das Paket zu generieren. Bitte stellen Sie sicher, dass auf Ihrem System das dpkg-deb-Tool (im Paket dpkg bereitgestellt) installiert ist. Das endgültige Deb-Paket wird später mit dpkg-deb generiert.

(1) Erstellen Sie ein Arbeitsverzeichnis zum Speichern der Paketdateien und benennen Sie sie gemäß der vorherigen Namenskonvention.

mkdir mynano_1.0-1_amd64/
Nach dem Login kopieren

(2) Erstellen Sie die interne Struktur und platzieren Sie die Programmdateien dort, wo sie auf dem Zielsystem installiert werden sollen. Angenommen, Sie möchten die ausführbare Datei unter /usr/bin/

installieren

Erstellen Sie zunächst das Verzeichnis:

mkdir -p mynano_1.0-1_amd64/usr/bin/
Nach dem Login kopieren

Das Flag -p des Befehls mkdir erstellt verschachtelte Verzeichnisse und erstellt sie automatisch, wenn eines davon nicht vorhanden ist. Kopieren Sie dann die ausführbare Datei hinein:

# 假设你开发的程序可执行文件为 ~/YourProjects/mynano/src/targets/release/mynano
cp ~/YourProjects/mynano/src/targets/release/mynanomynano_1.0-1_amd64/usr/bin/
Nach dem Login kopieren

(3) Erstellen Sie die Dateisteuerung. Diese Datei befindet sich im DEBIAN-Verzeichnis (beachten Sie, dass der Verzeichnisname in Großbuchstaben geschrieben ist)

Erstellen Sie zuerst den Ordner: DEBIAN

mkdir mynano_1.0-1_amd64/DEBIAN
Nach dem Login kopieren

Dann erstellen Sie eine leere Datei: control

touch mynano_1.0-1_amd64/DEBIAN/control
Nach dem Login kopieren

Füllen Sie den Inhalt der Steuerdatei aus:

Package: mynano
Version: 1.0
Architecture: amd64
Maintainer: linuxlibs 
Description: 基于nano的自定义编辑器
Depends: nano (>= 5.0)
Nach dem Login kopieren

Unter ihnen:

  • Paket – Programmname;
  • Version– Programmversion;
  • Architektur – Zielarchitektur;
  • Betreuer – Name und E-Mail-Adresse der Person, die für die Wartung des Pakets verantwortlich ist;
  • Beschreibung – Eine kurze Beschreibung des Programms.
  • Abhängig – Andere Pakete, von denen dieses Paket abhängt.

Die Datei kann andere nützliche Felder enthalten, z. B. „Depends“, das auf die Abhängigkeitsliste des Deb-Pakets hinweist. Wenn Sie dann den Befehl apt verwenden, um das Deb-Paket zu installieren, wird zuerst die nano>=5.0-Version des Softwarepakets installiert und dann wird mynano installiert.

(5) Der letzte Schritt: Erstellen Sie das Deb-Paket wie folgt:

dpkg-deb --build --root-owner-group 
Nach dem Login kopieren
Nach dem Login kopieren

In unserem Beispiel:

dpkg-deb --build --root-owner-group 
Nach dem Login kopieren
Nach dem Login kopieren

Das Flag –root-owner-group macht hier alle Deb-Paketinhalte zum Eigentum des Root-Benutzers, was der Standardansatz ist. Wenn kein solches Flag vorhanden ist, ist der Eigentümer aller Dateien und Ordner Ihr aktueller Benutzer. Da das System, auf dem das Deb-Paket installiert wird, jedoch nicht unbedingt über ein Konto mit demselben Namen wie Ihres verfügt, verwenden Sie –root-owner- Gruppe Vernünftiger.

Der obige Befehl generiert eine .deb-Datei neben dem Arbeitsverzeichnis oder gibt Fehler aus, wenn im Paket Fehler vorhanden sind oder fehlen. Wenn der Vorgang erfolgreich ist, können Sie das generierte Deb-Paket an andere verteilen.

(6) Mit dem Deb-Paket im System installieren: Sie können sehen, dass bei der Installation des Deb-Pakets, das wir mit der apt-Methode erstellt haben, die Abhängigkeit automatisch installiert wird: Nano-Softwarepaket

# apt install ./mynano_1.0-1_amd64.deb
正在读取软件包列表... 完成
正在分析软件包的依赖关系树... 完成
正在读取状态信息... 完成
注意,选中 'mynano' 而非 './mynano_1.0-1_amd64.deb'
将会同时安装下列软件:
nano
建议安装:
hunspell
下列【新】软件包将被安装:
mynano nano
升级了 0 个软件包,新安装了 2 个软件包,要卸载 0 个软件包,有 79 个软件包未被升级。
需要下载 280 kB/1,135 kB 的归档。
解压缩后会消耗 881 kB 的额外空间。
您希望继续执行吗? [Y/n] y
获取:1 /root/my-nano-editor-src/mynano_1.0-1_amd64.deb mynano amd64 1.0.0 [855 kB]
获取:2 https://mirrors.ustc.edu.cn/ubuntu jammy/main amd64 nano amd64 6.2-1 [280 kB]
已下载 280 kB,耗时 1秒 (422 kB/s)
正在选中未选择的软件包 nano。
(正在读取数据库 ... 系统当前共安装有 231799 个文件和目录。)
准备解压 .../archives/nano_6.2-1_amd64.deb...
正在解压 nano (6.2-1) ...
正在选中未选择的软件包 mynano。
准备解压 .../mynano_1.0-1_amd64.deb...
正在解压 mynano (1.0.0) ...
正在设置 nano (6.2-1) ...
update-alternatives: 使用 /bin/nano 来在自动模式中提供 /usr/bin/editor (editor)
update-alternatives: 使用 /bin/nano 来在自动模式中提供 /usr/bin/pico (pico)
正在设置 mynano (1.0.0) ...
正在处理用于 install-info (6.8-4build1) 的触发器 ...
正在处理用于 man-db (2.10.2-1) 的触发器 ...
Scanning processes...
Scanning processor microcode...
Scanning linux images...
Nach dem Login kopieren

(7) [Optional] Deinstallieren Sie die installierte Software mynano:

# apt remove mynamo -y
正在读取软件包列表... 完成
正在分析软件包的依赖关系树... 完成
正在读取状态信息... 完成
下列软件包将被【卸载】:
mynano
升级了 0 个软件包,新安装了 0 个软件包,要卸载 1 个软件包,有 79 个软件包未被升级。
解压缩后会消耗 0 B 的额外空间。
您希望继续执行吗? [Y/n] y
(正在读取数据库 ... 系统当前共安装有 231872 个文件和目录。)
正在卸载 mynano (1.0.0) ...
Nach dem Login kopieren

(8) [Optional] Überprüfen Sie die Abhängigkeiten von mynano_0.1-1_amd64.deb: dpkg -I ./mynano*deb

Was kann an der oben genannten Methode zur Erstellung von Deb-Paketen verbessert werden:

Das obige ist der detaillierte Inhalt vonEs ist so einfach, ein Deb-Paket unter Linux zu erstellen: Analyse der internen Zusammensetzung und Nutzungsprinzipien der Deb-Installationspaketdatei von Ubuntu. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So starten Sie Apache So starten Sie Apache Apr 13, 2025 pm 01:06 PM

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

Was tun, wenn der Port Apache80 belegt ist Was tun, wenn der Port Apache80 belegt ist Apr 13, 2025 pm 01:24 PM

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.

So überwachen Sie die NGINX SSL -Leistung auf Debian So überwachen Sie die NGINX SSL -Leistung auf Debian Apr 12, 2025 pm 10:18 PM

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

So richten Sie im Debian -System einen Recyclingbehälter ein So richten Sie im Debian -System einen Recyclingbehälter ein Apr 12, 2025 pm 10:51 PM

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

So starten Sie den Apache -Server neu So starten Sie den Apache -Server neu Apr 13, 2025 pm 01:12 PM

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.

So optimieren Sie die Leistung von Debian Readdir So optimieren Sie die Leistung von Debian Readdir Apr 13, 2025 am 08:48 AM

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.

Die Bedeutung von Debian Sniffer für die Netzwerküberwachung Die Bedeutung von Debian Sniffer für die Netzwerküberwachung Apr 12, 2025 pm 11:03 PM

Obwohl in den Suchergebnissen "Debiansniffer" und ihre spezifische Anwendung bei der Netzwerküberwachung nicht direkt erwähnt werden, können wir schließen, dass sich "Sniffer" auf ein Tool für Netzwerkpaket -Capture -Analyse bezieht, und seine Anwendung im Debian -System unterscheidet sich nicht wesentlich von anderen Linux -Verteilungen. Die Netzwerküberwachung ist entscheidend für die Aufrechterhaltung der Netzwerkstabilität und die Optimierung der Leistung, und Tools für die Analyse der Paketerfassung spielen eine Schlüsselrolle. Im Folgenden werden die wichtige Rolle von Tools zur Netzwerküberwachung (z. B. in Debian-Systemen ausgeführt) erklärt: Der Wert von Netzwerküberwachungstools: Schneller Fehlerstandort: Echtzeitüberwachung von Netzwerkmetriken, wie z.

Wie man Debian Syslog lernt Wie man Debian Syslog lernt Apr 13, 2025 am 11:51 AM

In diesem Leitfaden werden Sie erfahren, wie Sie Syslog in Debian -Systemen verwenden. Syslog ist ein Schlüsseldienst in Linux -Systemen für Protokollierungssysteme und Anwendungsprotokollnachrichten. Es hilft den Administratoren, die Systemaktivitäten zu überwachen und zu analysieren, um Probleme schnell zu identifizieren und zu lösen. 1. Grundkenntnisse über syslog Die Kernfunktionen von Syslog umfassen: zentrales Sammeln und Verwalten von Protokollnachrichten; Unterstützung mehrerer Protokoll -Ausgabesformate und Zielorte (z. B. Dateien oder Netzwerke); Bereitstellung von Echtzeit-Protokoll- und Filterfunktionen. 2. Installieren und Konfigurieren von Syslog (mit Rsyslog) Das Debian -System verwendet standardmäßig Rsyslog. Sie können es mit dem folgenden Befehl installieren: sudoaptupdatesud

See all articles