Elhelyezés rpm csomagot saját kezűleg
belépés
Az első részben a cikk, amit megtanultam az alapokat a RPM. De gyakran előfordul, hogy meg kell összerakni egy csomagot a kívánt opciókat (többek között támogatja a MySQL, PostgreSQL vagy cyrus-sasl2 stb), amelyek hiányoznak az rpm csomagot, hogy jön a lemez forgalmazásával. Az, hogy ki ez a helyzet, hogy a saját csomagot.
Megkönnyítése érdekében a közgyűlés rpm csomagok vannak kifejezetten erre a célra tervezett csomag - rpm-build.
Mint látható a leírása ez a csomag tartalmaz egy sor olyan programot és szkriptet építési csomagokat.
Annak érdekében, hogy gyűjtsön egy csomagot a kezdet le kell töltenie az úgynevezett forráskódját a csomag összeállítás, általában egy kiterjesztésű fájl src.rpm. Néha, mint abban az esetben, futár-imap, spec fájl tartalmazza a forráskódot.
Ez nagyon kényelmes, hogy megtalálja rpm csomagokat és src.rpm van www.rpmfind.net oldalon. Például azt találtuk, mi szükség van egy csomagban - postfix, tintahal, stb Akkor azonnal megtudja, hogy milyen csomagok szükségesek építeni. Itt van egy szabványos oldal információit csomag postix és tintahal. Emellett van feltüntetve egy ellenőrző, hogy ellenőrizze a csomag integritását.
Amint megvan a forráskód és ellenőrizze azok épségét, telepítenie kell a megfelelő csomagot.
E művelet után a forrás és minden szükséges postfix pachti és szkriptek már telepítve a / usr / src / redhat / források /, és spec fájlt (felhasználói össze a csomagot rpm) az / usr / src / redhat / SPECS /.
Ez az alapértelmezett hely a fájlok telepítésekor src.rpm. Elvileg a mappa nevek önmagukért beszélnek.
/ Usr / src / redhat / BUILD
Ebben a mappában kitömörített forráskódját a megfelelő csomagot. Alapértelmezésben építése után a csomag forráskódját nem lehet törölni, hogy távolítsa el őket, meg kell adnia a kulcsot a szerelvény --clean.
/ Usr / src / redhat / RPMS / arch-neve
ahol az arch-megnevezni a nevét építészet és egyike lehet a következő értékeket: Athlon, i386, i486, i586, i686, noarch. Az összeszerelés után befejeződött kész rpm csomag kerül a megfelelő helyre, attól függően, mit beállítani építészet kiépítése során a csomagot --target gombot.
/ Usr / src / redhat / SOURCES
src.rpm csomag a telepítés után a mappában kerülnek közvetlenül a forráskódját a csomagban, valamint a különböző javítások és szkripteket. Ha meg kell felragasztani a tapaszt, amely meg kell másolt pontosan ebben a mappában.
/ Usr / src / redhat / SPECS
Ez a mappa található az úgynevezett spec fájl, ahol a következő lépéseket, hogy építsenek egy rpm csomagot.
/ Usr / src / redhat / SRPMS
összeszerelés után rpm csomagot ebben a mappában kerül rögzítésre megfelelő src.rpm csomagot.
És így, annak érdekében, hogy elkezdik begyűjteni a csomagot, keresse meg a mappát a spec fájlt, és futtassa a következő parancsot
Az utolsó sor látható, hogy a kész rpm csomagot nevezett postfix-2.2.8-1.2.i686.rpm és menti a mappa / usr / src / redhat / RPMS / i686 /, mióta összeszerelés A csomagban megadott kulcs --target = i686 .
Tulajdonképpen összeállítás nem okoz problémát. De mi van, ha kell összerakni egy csomagot a lehetőségeket, például engedélyezze vagy sasl2 mysql, stb Ezekre a célokra, akkor korrigálni kell spec fájlt.
A szerkezet a spec fájl
Srukturno spec fájl áll 6 szakaszok.
header
A fejléc néhány szabvány területeken:
készülés
Ez a második szakasz a spec-fájlt. Arra használják, hogy a forráskód készen áll. Általános szabály, hogy itt jön a kicsomagolás a források és alkalmazása megfelelő javításokat.
épít
Ebben a részben van egy csapat, amelyet meg kell tenni, hogy létrejöjjön a szoftver miután kicsomagolta szemben, és megfelelő javításokat.
felszerel
Ebben a részben van egy parancs szükséges telepíteni a csomagot.
Scripts kerülnek végrehajtásra előtt és után telepítés / eltávolítás a csomag
- % Pre - Pre-Installation makró fut a script.
- % Post - a makrót csinálni post-installation script.
- % Preun - a makró fut a script eltávolítása előtt a csomagot.
- % Postun - macro script végrehajtott eltávolítása után a csomagot.
Files
Itt van egy lista a fájlokat, hogy szerepelni fog a bináris rpm csomagot.
Tekintsük része postfix spec fájlt, meg kell jegyezni, hogy a postfix úgyszólván nem szabványos spec fájlt.
Például akartunk gyűjteni postfix támogatásával MySQL, erre a célra az elején változás .efine MYSQL 0 .efine MYSQL 1, majd futtassa a parancsot
Azt írja, hogy ahhoz, hogy létrejöjjön telepíteni kell mysql-devel csomagot. Felhívjuk figyelmét, hogy a verzió nincs megadva, az azt jelenti, hogy bármely verziójának telepítésével által támogatott postfix vagy kívánt csomagot.
Ha összegyűjtjük a forráskódot, akkor meg kell nézni, hogy milyen csomagok van szükség, hogy építsenek egy adott csomagot. Ebben rejlik az egyik előnye az összeszerelési képest src.rpm tar.gz vagy tar.bz2.
Telepítse a megfelelő csomagot
És újraindítását szerelvény postfix. Ebben az időben, azt látjuk, hogy az összes szükséges csomagok szereltek, és most kell csak várni, amíg a végén a szerelvény.
Minden csomag az általunk gyűjtött, most kell telepíteni, és élvezni az életet.
A jobb érthetőség kedvéért, úgy a szerelvény tintahal, amely egy szabványos fájl szerkezete spec. Mint mindig, most kezdődik src.rpm, ugyanakkor ne felejtsük el, hogy ellenőrizze a méretét és az ellenőrző.
Tudjon meg mindent a lehetséges kulcs a következő módon.
Miután megtalálta a kívánt gombot, adja hozzá a% configure. Például szeretnénk összegyűjteni tintahal támogatja az SSL. A támogatás azt állapítottuk meg, hogy szükséges, hogy két kulcsfontosságú --enable-ssl és --with- OpenSSL. módosítások
Mentsd el a fájlt, és indítsa el a szerelvény.
Minden tintahal általunk összeállított sikeresen, most már csak azt kell telepíteni vagy frissíteni.