Mi az az EIPP protokoll és a /var/log/apt/eipp.log.xz?

Probléma: Feltűnt, hogy egy új fájl van az apt logok közt: /var/log/apt/eipp.log.xz. Mi ez? Mire jó és mi az az EIPP protokoll?
Megoldás: EIPP, azaz External Installation Planner Protocol (Külső Telepítés Tervező Protokoll) az APT egy új funkciója. A legutóbbi GSoC (Google Summer of Code) projekt alkalmával került lefejlesztésre.

Ennek segítségével a libapt képes beszélni egy külső megoldástervező (planner, azaz tervezőnek nevezett) alkalmazással, melynek az a feladata, hogy létrehozza a telepítendő (és eltávolítandó) programcsomagok sorrendjét. A tervező ennek megvalósításához többféle függőségmeghatározást hajt végre, ami hasonlóan működik ahhoz, mint ahogy a libapt kommunikál az aspcud programmal az EDSP (External Dependency Solving Program, azaz Külső Függőség Megoldó Program) protokollon keresztül. Az EIPP részletesen leírja, hogy hogyan kommunikál az APT és a megoldástervező.

Az APT tartalmaz egy olyan megoldástervezőt, amelyet a lokális problémák megoldására használ, ugyanakkor annak megfelelő EIPP kérésekkel történik a kommunikáció. Az EIPP protokoll bevezetésének fő előnye a teszteléskor és hibakereséskor látszik: ezen a protokollon keresztül különböző csomagverziókat lehet beküldeni, majd a telepítéstervező kiszámolja a végeredményt. Ezzel pedig egyszerűbbé válik a regressziók keresése, illetve a hibajelentésekhez könnyen csatolhatóak az EIPP logok, melyekkel könnyű reprodukálni a csomagkörnyezetet, mellyel könnyebbé válik a hiba reprodukálása. Régebben azon rendszerállapot létrehozásához, ahol az adott frissítési hiba megjelent, nagyon bele kellett vonni a felhasználót, amiért a hibakeresés egy nagyon időigényes folyamat volt (persze a hiba javítása még mindig az, de így legalább az első lépés sokkal könnyebb).

A /var/log/apt/eipp.log.xz az EIPP naplókimenete. Megtekintheted a zxcat /var/log/apt/eipp.log.xz | less paranccsal a tartalmát (vagy bármivel, ami kezeli az xz archívumot).