Wat is het IPK-bestandsformaat?
.ipk is het bestandsformaat voor pakketten dat wordt gebruikt door opkg (Open PacKaGe Management), de standaard pakketbeheerder voor embedded Linux-systemen, waaronder OpenWrt-routers, Yocto Project-builds, Entware (NAS en set-top boxes), LG webOS smart-tv's en Boot to Qt.
Structureel is een .ipk-bestand een Unix ar-archief - herkenbaar aan de !<arch> magic header op offset 0 - dat drie onderdelen bevat: debian-binary (de tekst 2.0), control.tar.gz (pakketmetadata en installatiescripts) en data.tar.gz (de payload van het bestandssysteem die op het doelapparaat wordt uitgepakt). Deze structuur is identiek aan een Debian .deb-pakket, waardoor .ipk-bestanden volledig uitpakbaar zijn met standaard ar- en tar-commando's.
Het formaat ontstond in 2001 als ipkg (Itsy Package Manager) voor iPAQ en Sharp Zaurus Linux-handhelds. De opkg-fork ontstond rond 2008 en wordt nu onderhouden binnen de Yocto Project-gemeenschap.
In tegenstelling tot moderne .deb-pakketten vereisen .ipk-bestanden geen cryptografische ondertekening, hoewel optionele MD5-controlesommen in het controle-archief kunnen voorkomen. Het formaat blijft de standaard voor implementatie op embedded Linux-systemen met beperkte middelen, waar dpkg/apt te zwaar zouden zijn.
Beveiliging & veiligheid
RISICO: MEDIUMIPK-pakketten voeren pre/post-installatie shell-scripts uit als root op het doelapparaat, dus een kwaadaardige IPK kan het systeem volledig in gevaar brengen. Installeer alleen vanuit officiële pakketbronnen (OpenWrt-pakketten, Entware) of vertrouwde bronnen. Desktop-pc's lopen geen risico door enkel de IPK-inhoud te inspecteren met een archiefbeheerder.
Formaatdetails
in een notendop- Shana Informed Filler-formulierpakket - Verouderde Windows-formuliersoftware van Shana Corporation gebruikte .ipk voor formulierpakketten - stopgezet, website behoort nu tot de overheid van BC.
- iOS/iPhone firmwarepakket (zeldzaam) - Sommige vroege jailbreak-tools gebruikten .ipk voor Cydia-pakketten (ook opkg-gebaseerd op Darwin).
Programma's die IPK-bestanden openen
Technische details
diepe specificaties| Containerformaat | Unix `ar`-archief |
| Magic header | `!<arch>` gevolgd door een nieuwe regel (8 bytes op offset 0) - identiek aan Debian `.deb` |
| Interne onderdelen | `debian-binary`, `control.tar.gz`, `data.tar.gz` |
| Compressie | gzip op de binnenste tar-archieven; het buitenste `ar`-archief is ongecomprimeerd |
| Formaatversie-markering | het onderdeel `debian-binary` bevat de tekst `2.0` |
| Metadata | Opgeslagen in `control.tar.gz` (naam, versie, architectuur, afhankelijkheden, installatie-/verwijderingsscripts) |
| Payload | `data.tar.gz` uitgepakt naar de root van het bestandssysteem van het doelapparaat |
| Controlesom | Optionele MD5-sommen in `control/md5sums`; geen verplichte cryptografische ondertekening |
| Typische pakketgrootte | Enkele KB - 50 MB; de meeste pakketten zijn kleiner dan 5 MB |
| Installatiecommando | `opkg install package.ipk` |
| Compatibiliteit | Uitpakbaar met standaard `ar` en `tar` (GNU binutils) |
| Uitgebracht | 2001 (ipkg / Itsy Package Manager for Sharp Zaurus/iPAQ handhelds) |
| Laatste versie | opkg 0.6.x (2024); format stable since Debian 2.0 roots |
| Open standaard | Ja · royaltyvrij |
| Specificatie | git.yoctoproject.org |
IPK conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over IPK-bestanden.