En DEB-pakke er et arkiv, der indeholder alle filerne inklusive den kompilerede version af applikationerne, kildekoder, konfigurationsfiler, billeder og installationskommandoer. DEB-filer i Debian-baserede operativsystemer som Ubuntu og Kali Linux svarer til de EXE-filer, der findes i Windows.
Her er, hvordan du kan udvikle dine egne DEB-pakker til en Debian-baseret Linux-distro.
Trin 1: Installation af nødvendige pakker
Forberedelse af en Debian-pakke kræver nogle programmer. For at begynde skal du installere disse hjælpeprogrammer på dit system:
sudo apt installerebygge-essentielle binutils lintian debhelper dh-make devscripts
Trin 2: Pakkevalg
Før du opretter en Debian-pakke (DEB) til et program, bør du overveje et par punkter:
- Tjek, om den pakke, du planlægger at oprette, allerede er i Debian-lagrene:
passende-cacheSøgpakke-navn
- Tjek hvilken type licens det program, du skal pakke, har. Der er en generel kultur for at bruge GNU/GPL-licensen.
- Sørg for, at programmet ikke udgør et sikkerhedsproblem for systemet.
- Kontakt forfatteren af programmet. Giv Debian-udviklere besked om at dette program skal gå ind i Debian-lagrene.
Trin 3: Begynd at forberede pakken
For det første skal du oprette en ny mappe under din hjemmemappe for at undgå forvirring.
cd /home
mkdir pakke
cd pakke
Derefter udtræk tjærearkivet indeholdende kildekoden til det program, du vil pakke under denne mappe. Til demonstration bruger vi rsyslog-arkivet.
tjære-zxvfrsyslog-6.3.6.tjære.gz
Naviger til den nyoprettede mappe vha cd kommandoen:
cdrsyslog-6.3.6
Normalt følger programmets kildekode med INSTALLERE og LÆS MIG filer. Selvom du ved, hvad programmet er, og hvordan det virker, vil det være en fordel for dig at bruge lidt tid på at læse disse filer.
Der er kommandoer som f.eks ./configure make og lave installation som nemt kan installere sådanne arkiver på dit system. Men der er flere parametre for ./konfigurere mulighed, som du bør være opmærksom på. Du kan bruge ./configure --help kommando for at få sådanne oplysninger.
Trin 4: Tilføjelse af udvikleroplysninger
Før du opretter en DEB-pakke til dit program, skal du være opmærksom på pakkens navn og versionsnummer. Du skal også tilføje nogle pakkeroplysninger, når du opretter en pakke. Til dette skal du eksportere dine oplysninger med følgende kommandoer:
eksport DEBEMAIL="[email protected]"
eksporter DEBFULLNAME="Navn Efternavn"
Brug derefter den magiske kommando dh_make.
dh_make
Efter at have udstedt dh_make kommando, skal du vælge din pakketype og trykke på Gå ind.
Efter dette trin vil du bemærke en mappe i en overordnet mappe med filtypen ".orig". Hvis dette ikke virker, så prøv at køre dh_make kommando med --createorig parameter.
ls
# Output
rsyslog-6.3.6rsyslog_6.3.6.orig.tjære.xzrsyslog-6.3.6.tjære.gz
Du kan også se en ny mappe ved navn Debian i den nuværende arbejdsmappe. Disse mapper og filer indeholder alle Debian-pakkerelaterede oplysninger om programmet.
Du skal kende følgende information om filerne i Debian-biblioteket.
1. Kontrolfilen
Kontrolfilen tilbyder en række pakkerelaterede oplysninger.
- Kilde: Linjen, hvor du vil angive navnet på dit program
- Afsnit: Linjen, der bestemmer, hvilken sektion dit program hører til i henhold til licensen
- Vedligeholder: Linjen, der indeholder oplysningerne om den person, der har forberedt pakken
- Bygningsafhængig: Afhængigheder er angivet på denne linje
- Afhænger af: Denne linje er meget vigtig. Du angiver afhængighederne af din pakke med denne værdi
- Beskrivelse: Linjen, hvor du kan indtaste oplysninger om pakken
2. Ophavsretsfilen
Denne fil indeholder oplysninger om programmets licens. Dens standardindhold er som følger:
3. Changelog-filen
Denne fil er ligesom dit programs logbog køreplan. Hvis du har gjort noget uafhængigt af programmets kilde, eller hvis du har rettet nogle fejl, kan du tilføje det til denne fil.
4. Reglerne Fil
Regelfilen er som en Makefile til din Debian-pakke. Når du installerer den forberedte Debian-pakke med dpkg, tages oplysningerne i denne fil som udgangspunkt.
Du kan selvfølgelig ændre parametrene i denne fil, som det passer dig.
5. Andre filer i mappen
Det kan også være nyttigt at kende funktionerne i følgende filer:
- README.Debian: Readme fil
- conffiles.ex: Brug denne fil, hvis du vil beholde din gamle indstillingsfil, mens du installerer programmet
- cron.d.ex: Du kan udføre cron-operationer ved hjælp af denne fil
- dirs: Brug denne fil til at angive mapper, der ikke skal installeres under installationen, men som skal oprettes senere
- dokumenter: Hvis der er dokumenter med dit program, skal du angive dem med denne fil
- emacsen*.eks: Hvis dit program har brug for Emacs-filen under installationen, skal du angive den med denne fil
- init.d.ex: Brug denne fil, hvis du vil have dit program til at køre ved systemstart
For at fortsætte til det følgende trin skal du fjerne alle filer, du mener, du ikke længere har brug for. Derefter omdøbe filtypenavnene og fjern ".ex" fra slutningen. ".ex" (eksempel) angiver, at dette er en eksempelfil.
Trin 6: Opbygning af pakken
Hvis du er nået så langt, kan du nu forberede Debian-pakken til dit program. Til dette skal du køre følgende kommando:
dpkg-buildpackage
Et andet vigtigt spørgsmål her er at oprette en GPG til e-mailadressen du eksporterer som Maintainer.
eksport DEBEMAIL="[email protected]"
dpkg vil lede efter dine GPG-oplysninger, mens du opretter pakken. Du kan liste det med kommandoen gpg --liste-taster.
Hvis du støder på problemer i dpkg-buildpackage fase, prøv følgende kommando:
dpkg-buildpackage -nc -i
Denne kommando vil ignorere nogle dele, der kan forårsage en fejl.
Hvis alt går godt, vil Debian-pakken til dit program være klar til installation og gemt i den næste mappe. Med kommandoen nedenfor kan du installere, teste og gennemgå pakken.
dpkg -i pakke-navn
Alle kan oprette en pakke på Linux
DEB-pakkesystemet er et af de mest grundlæggende elementer, der adskiller Debian som en GNU/Linux-leder. Debian er et stort system, og det er virkelig vigtigt for bidragydere at have mulighed for at skabe deres egne pakker.
Hvis du er ny til GNU/Linux, kan dette virke forvirrende. Men som du kan se, er det enklere at forberede en Debian-pakke, end du måske tror. Selvfølgelig kræver det tid og arbejde at bygge en Debian-pakke.
Men det betyder ikke, at du manuelt skal oprette pakker til programmer, du vil installere. Der er flere hjemmesider på internettet, hvorfra du kan downloade DEB-pakker gratis.