MAN emerge
A Gentoo Linux Wiki wikiből
Tartalomjegyzék |
[szerkesztés] NÉV
emerge - Parancssoros felület a Portage rendszerhez
[szerkesztés] SZINAPSZIS
emerge [opciók] [művelet] [ebuild|tbz2fájl|halmaz|atom] ...
emerge --sync | --version
emerge --search szöveg
emerge --help [system | world | --sync]
[szerkesztés] LEÍRÁS
Az emerge alapvetően egy parancssoros felület a Portage rendszerhez. Elsősorban csomagokat tudunk vele telepíteni, és az emerge képes automatikusan kezelni a kívánt csomag(ok) függőségeit. Az emerge még tudja frissíteni a portage fát, így elérhetővé teszi az új és frissített csomagokat. Az emerge képes frissíteni a telepített csomagokat az újabb kibocsátásokra (!!!FIXME!!! verzióra?).
[szerkesztés] EBUILD-OK, TBZ2-K, HALMAZOK ÉS ATOMOK
emerge elsősorban csomagokat telepít. A csomagokat négy különböző módon tudod meghatározni (egyszerre csak az egyik módot használhatod): ebuild-el, tbz2fájlal, halmazzal vagy atommal.
ebuild
- Az ebuild minimális követelménye egy érvényes Portage csomag könyvtár (!!!FIXME!!! mappa? csomagjegyzéknév?) verzió és kategória nélkül, mint például a portage vagy a python. Emellett használható a kategória és a verzió szám, mint például sys-apps/portage vagy =python-2.2.1-r2. Az emerge figyelmen kívül hagyja a megadott ebuild utáni perjelet így használó az automatikus fájlnév kiegészítés. Az ebuild lehet egy létező fájlnév mint például /usr/portage/app-admin/python/python-2.2.1-r2.ebuild. FIGYELEM: Az emerge /elérési/út/ebuild megvalósítása nem tökéletes, inkább ne használjuk.
tbz2fájl
- A tbz2fájlnak egy érvényes tbz2-nek kell lennie ami az ebuild <csomag>-<verzió>.ebuild package vagy az emerge --buildpkg [kategória/]<csomag> vagy az quickpkg /var/db/pkg/<kategória>/<csomag> parancsok egyikével lett létrehozva.
set
- A halmaz csomagok egy nagy csoportjának kényelmes megadási módja. Két halmaz jelenleg támogatott: system és world. A system a rendszer helyes működéséhez szükséges csomagokra hivatkozik. A world tartalmazza azokat a csomagokat amit a system, és azokat a csomagokat amiket a /var/lib/portage/world fájl tartalmaz. [Lásd lejjebb a FÁJLOK további információkért.] Megjegyzés: a halmazt általában az --update paraméterrel együtt használatos.
atom
- Az atom megkötéseket ír le a csomaghoz amit telepíteni szeretnél. Lásd portage(5) man oldalát az atom szintaxis részleteiért. Például a >=dev-lang/python-2.2.1-r2 megegyezik a legújabb elérhető verziójú Pythonnal aminek a verziószáma nagyobb vagy egyenlő mint 2.2.1-r2. Hasonlóképpen a <dev-lang/python-2.0 az a legújabb verziószámú Pythonnal egyezik meg aminek a verziószáma kisebb mint 2.0. Pár héjon (!!!FIXME!!! shell-en?) neked le kell védened a '<' és '=' karakterek miatt szimpla vagy dupla idéző jelekkel az atomot a problémák elkerülése érdekében.
[szerkesztés] MŰVELETEK
Nincs művelet
- Ha nem határozol meg műveletet, akkor az emerge telepíti a megadott csomagokat az esetleges függőségekkel együtt. A paraméterek lehetnek ebuild-ek, tbz2-k, halmazok vagy atomok. Megjegyzés: tbz2 telepítéséhez használnod kell a –usepkg paramétert. A telepítés végén a csomagok hozzáadódnak a world fájl végéhez, azaz szerepelnek később frissítéskor.
--clean (-c)
- Megtisztítja a rendszert azáltal hogy megvizsgálja a telepített csomagokat és letörli a régebbieket. Ekkor azt vizsgálja hogy melyik csomagból van feltelepítve több verzió (a slot-ok által). A --clean a legújabbat kivéve letörli az összes csomagot, kivéve azt ami a legutóbb volt feltelepítve az adott slot-ban. A nem slot-olt csomagokat nem törli le. Megjegyzés: A legutóbb telepített nem a legújabb verziót jelenti, hanem a legutóbb telepített verziót egy adott csomagnál.
--config
- Az emerge folyamat után futtatja a csomag specifikus műveleteket. Ez általában konfigurációs állomány beállításokat vagy egyéb beállításokat hajt végre amit a felhasználó interaktívan tud beállítani.
--depclean
- Megtisztítja a rendszert azoktól a csomagoktól ami nem áll függőségben az explicit (direkt) módon feltelepített csomagokkal. A --depclean ezt úgy teszi hogy felépít egy teljes függőségi fát a system és world listáiból, és ezt összehasonlítja a telepített csomagokkal. Amely csomagok fel vannak telepítve, de nem áll kapcsolatban egy explicit módon telepített csomaggal törlésre kerülnek. Nem tapasztalt felhasználóknak ajánlott a --pretend opció használata, hogy átnézze mely csomagok kerülnek törlésre. FIGYELEM: Néhány csomag eltávolítása miatt néhány feltelepített csomag ami nem direkt módon hivatkozik rájuk, lehet hogy nem fognak működni és hiányzó programkönyvtárakkal fogja ezt magyarázni. Ezt a problémát a hibás csomagok újratelepítésével javíthatjuk. Lásd még a --with-bdeps opciót hogy lásd egy csomag azon függőségeit amik nem szigorúan kellenek a csomag működéséhez. A --depclean az --unmerge függőséget vizsgáló verziója. Ha egy vagy több atomot megadsz, azokat a csomagokat törli aminek nincsenek fordított függőségei. Használd a --depclean műveletet a --verbose opcióval ha látni akarod a fordított függőségeket.
--help (-h)
- Egy rövid súgót mutat az emerge használatáról. Ha egyéb paramétereket is megadunk mellé, az részletesebb információt ad az adott paraméterekhez. A beépített emerge súgó gyakrabban van frissítve ennél a man oldalnál, nézd meg ha problémáid akadnak amiről ez a man oldal nem ír semmit.
--info
- Ez a rendszerünkről produkál információt ami segíthet a fejlesztőknek ha problémát jelentünk. Kérjük hogy ezt az információt küld el amikor hibát jelentesz be. Részletesebb információt kaphatunk a --verbose opcióval.
--metadata
- A metaadat gyorsítótár átvitelre kerül a ${PORTDIR}/metadata/cache/ helyről a /var/cache/edb/dep/ helyre, ez általában megtörténik egy elvégzett rsync frissítés után az emerge --sync használatakor. Ez a művelet létrehozza a gyorsítótár adatbázist amit a portage használ a csomag adatok előelemzésekor. Ezt nem hajtja végre az overlay-ekre a PORTDIR_OVERLAY-ből. Az overlay-ek gyorsítótárazásához használd a --regen műveletet.
--prune (-P)
- FIGYELEM: Ez a művelet eltávolíthat fontos csomagokat! Mindent eltávolít csak a legújabb verziószámú csomagot nem. Ez a művelet nem vizsgálja az esetleges bináris kompatibilitásokat a verziók között és így lényeges függőségeket távolíthat el a rendszerből. Használd a --prune műveletet a --verbose opcióval hogy láthasd a fordított függőségeket, vagy a --nodeps opcióval a függőségek figyelmen kívül hagyásához.
--regen
- Ellenőrzi és frissíti a gyorsítótárat az összes ebuild-re a portage fában. A gyorsítótárat a portage a keresés és a függőségi fa építés sebességének javítására használja. Ezt a műveletet nem szükséges végrehajtani rsync felhasználóknak, mivel az rsync frissíti a gyorsítótárat a szerveroldali gyorsítótárak segítségével. Ha nem tudod mi a különbség az rsync felhasználó és a többi felhasználó között, akkor te 'rsync felhasználó' vagy :). Az rsync felhasználók egyszerűen futtassák az emerge --sync parancsot a gyorsítótár regenerálásához. A portage frissítés után az rsync felhasználók hasznosnak tarthatják az emerge --metadata futtatását, de ez fölösleges mivel a szinkronizáció után a portage automatikusan megteszi ezt.
--resume
- Folytatja a legutóbbi telepítést ami félbeszakadt egy hiba miatt. Kudarc esetén hibával tér vissza, ha nincs mit tenni akkor sikeres üzenettel tér vissza. A folytatás lista addig marad meg amíg nincs befejezve vagy amíg egy másik telepítés felül nem írja. A folytatás lista képes kettő telepítési listát tárolni. Ha az egyik folytatása sikeres, akkor lehetséges meghívni a --resume-ot ismét hogy folytassa a régebbi listát.
--search (-s)
- A portage fában keres a megadott szöveggel. Alapvetően kis-nagy betűre nem érzékeny egyszerű módon keres, de használhatunk a keresőszövegben reguláris kifejezéseket ha a % jellel kezdjük a szöveget. Például az emerge –search ”%^kde” az olyan csomagokat keres aminek a neve ”kde”-vel kezdődik; az emerge –search ”%gcc$” olyan csomagokat keres ami ”gcc”-re végződik; emerge --search ”office” olyan csomagokat keres amelyek nevében szerepel az ”office” szó. Ha a kategóriát is megszeretnéd adni, használd a @ jelet: emerge --search ”%@^dev-java.*jdk”. Ha a csomagok leírásában is szeretnél keresni használd a --searchdesc műveletet.
--searchdesc (-S)
- Keres a leírás mezőben is, nem csak a csomag nevében. Légy óvatos a reguláris kifejezésekkel mivel a leírásban is keres.
--sync
- Portage fa frissítést hajt végre az rsync.gentoo.org tükörszervei közül egyikre. Megjegyzés: bármilyen változtatásod a portage fában törlődik. Kivéve néhány esetet ez az rsync-et használja frissítéskor. Lásd a make.conf(5) man oldal PORTDIR_OVERLAY leírását, módszerekért a törlések elkerüléséhez.
--unmerge (-C)
- FIGYELEM: Ez a művelet eltávolíthat fontos csomagokat! Törli a megadott csomagokat. Ez a művelet nem ellenőriz függőségeket, így eltávolíthat olyan csomagokat ami szükséges a rendszer helyes működéséhez. A paraméterei lehetnek atomok és ebuild-ek. Az --unmerge függőségeket vizsgáló verziójához használd a --depclean vagy a --prune műveleteket.
--update (-u)
- Frissíti a csomagokat a legjobb verzióra, ez nem mindig a legújabb verzió mert a fejlesztés/tesztelés alatt álló csomagok maszkolva vannak. Frissíti még a direkt függőségeket, amely csomagokat nem feltétlenül akartál. Figyelem: ha atomokat adsz meg, illeszkedhet egy csomag több telepített verziójához.
--version (-V)
- Az emerge verziószámát adja vissza.
[szerkesztés] OPCIÓK
--alphabetical
- A USE és egyéb zászlók megjelenítésekor kombinálja az engedélyezetteket és letiltottakat egy listába amit ábécé szerint rendez.
--ask (-a)
- Mielőtt egy műveletet hajt végre, kiírja hogy mi fog történni, ezután megkérdezi hogy végrehajtjuk vagy megszakítjuk a műveletet. A --ask használata hatékonyabb mint a --pretend használata és utána az emerge ismételt meghívása, mivel a függőségeket csak egyszer kell kiszámítani. FIGYELEM: Ha az ”Enter” billentyűt leütöd (mást nem) akkor az automatikusan az első választ jelenti. A bemeneti puffer nem törlődik a kérdés előtt, tehát ha a kérdés előtt véletlenül leütjük az "Enter" billentyűt azt válasznak fogja értelmezni.
--buildpkg (-b)
- Ezzel gyárthatunk bináris csomagokat is a telepítés mellett a megadott ebuild-ekhez. Ez hasznos rendszergazdáknak vagy ha Te több Gentoo Linux rendszert adminisztrálsz (egyszer kell csak csomagot fordítani, és telepítheted a tbz2-ket bárhol), illetve hasznos lehet rendszerhelyreállításnál. A bináris csomagok a ${PKGDIR}/All könyvtárba kerülnek. Létezik ennek egy alternatívája a már feltelepített csomagokhoz, használd a quickpkg programot ami képes tbz2 fájlt kreálni az elő fájlrendszerből.
--buildpkgonly (-B)
- Csak bináris csomagokat hoz létre, nem telepít a rendszerre. A csomagok függőségeinek telepítve kell lennie a rendszeren.
--changelog (-l)
- Használd a --pretend opcióval együtt. Ez megmutatja a ChangeLog (változtatási napló) bejegyzéseket a frissülő csomagokhoz.
--color < y | n >
- Engedélyezi vagy letiltja a színes kimenetet. Ez az opció felülbírálja a NOCOLOR változót (lásd make.conf(5) man oldalt) illetve kényszeríthetjük a színes kimenetet mikor az stdout nem tty (alapértelmezetten a színezés ki van kapcsolva mikor a kimenet nem tty).
--columns
- A --pretend opcióval használva oszlopokba rendezve kiírja a csomag nevét, az új verziót és a telepített verziót.
--config-root=DIR
- Beállítja a PORTAGE_CONFIGROOT környezeti változót.
--debug (-d)
- Az emerge ilyenkor hibakeresési módban fut. Ebben a módban a bash fordítási környezet a -x opcióval fut, ez nagyon részletes hibakeresési információkat eredményez ami az stdout-ra kerül. Ez másik kimeneteken is bővebb információt jelent (legtöbbször ez függőség meghatározás üzenetek).
--deep (-D)
- Ez azt kényszeríti ki hogy az emerge a közvetlen függőségi vizsgálat helyett építse fel a teljes függőségi fát a csomagokhoz. Például ez azt eredményezheti hogy olyan programkönyvtár is frissüljön ami nem közvetlen függősége a csomagoknak. Lásd még a --with-bdeps opciót, mely azokat a (fordítás idejű) függőségeket is figyelembe veszi melyek nem szigorúan kellenek egy csomag működéséhez.
--emptytree (-e)
- Újratelepíti az összes world csomagot és a függőségeit az aktuális USE zászlókkal, ez a minimálisan különbözik a telepített csomagoktól halmazától. Ajánlott futtatni először a --pretend opcióval hogy lásd hogy az eredmény az-e amire számítasz.
--fetchonly (-f)
- A csomagok lefordítása és telepítése helyett, csak letölti a szükséges forrásfájlokat (letölt dolgokat az SRC_URI helyről a USE beállítások alapján.)
--fetch-all-uri (-F)
- A csomagok lefordítása és telepítése helyett, csak letölti a szükséges forrásfájlokat (letölt mindent az SRC_URI helyről a USE zászlók figyelembe vétele nélkül.)
--getbinpkg (-g)
- A PORTAGE_BINHOST (lásd make.conf(5)) változóban definiált szerver használata, a portage ilyenkor letölt minden információt az összes bináris csomaghoz, és ezeket felhasználja a függőségi lista felépítésénél. Ez az opció implikálja a -k opciót. (Csak bináris telepítéshez használd a -gK opciókat.)
--getbinpkgonly (-G)
- Ez hasonló a -g opcióhoz azzal a kivétellel hogy ez nem használ semmilyen információt a számítógépünkről. Az összes bináris csomagot a távoli szerverről tölti le, anélkül hogy megvizsgálná hogy már létezik a gépünkön a bináris csomag.
--ignore-default-opts
- Ez azt okozza hogy az EMERGE_DEFAULT_OPTS (lásd make.conf(5)) változó figyelmen kívül legyen hagyva.
--newuse (-N)
- Ez a függőségi vizsgálatkor azon telepített csomagok listáját fogja a listához venni, melyeknek változott a USE zászlójuk telepítés óta.
A USE zászló változásokba a következők tartoznak bele:- USE zászló lett a csomaghoz adva és/vagy eltávolítva
- USE zászló engedélyezve vagy letiltva lett a csomagnál
- A profilban változott a USE zászlók listája, ebbe beletartozik a saját USE lista és a package.use lista.
--noconfmem
- Figyelmen kívül hagyja a CONFIG_PROTECT könyvtárban lévő konfigurációs állományokat és ezekbe a mappákba is elhelyezi az új állományokat. A portage alapvetően egyszer telepíti ezen fájlokat, így megakadályozza hogy a felhasználónak többször kelljen foglalkozni ugyanazokkal a konfigurációs állományokkal. Ezzel az opcióval a konfigurációs állományok mindig települnek.
--nodeps (-O)
- A megadott csomagokat a függőségei nélkül telepíti. Lehetséges hogy a fordítás megszakad ha a függőségek nincsenek kielégítve.
--noreplace (-n)
- Kihagyja azon megadott csomagok telepítését ami már fel van telepítve. Enélkül az opció nélkül az emerge bármely csomagot, ebuild-et, vagy amit megadtál paraméternek újratelepít akkor is ha az már fel van telepítve. A portage nem telepíti fel a függőségeket újból.
--nospinner
- A forgó folyamatjelző letiltása. A forgó akkor aktív mikor az emerge a kimenetet TTY eszköznek detektálja. Ez az opció ezt letiltja.
--oneshot (-1)
- Normál módon telepít, de nem adja a csomagokat a world fájlhoz (későbbi frissítéshez).
--onlydeps (-o)
- Csak függőségeket telepít (vagy kiír), a megadott csomagokat nem.
--pretend (-p)
- A telepítés helyett csak egyszerűen kiírja hogy mi lenne feltelepítve ha nem használnánk ezt az opciót. Ismeretlen csomagok telepítése előtt erősen ajánlott a használata. A kiírásban:
- N = új (még nincs telepítve)
- S = új SLOT telepítés (egymás mellett több verzió)
- U = frissítés (egy másik verzióra)
- D = a telepítettnél régebbi verzió telepítése (a legjobb verzió verziószáma kisebb)
- R = újratelepítés (ugyanaz a verzió)
- F = letöltés korlátozva (manuálisan kell letölteni)
- f = letöltés korlátozva (már le van töltve)
- B = blokkolt (ütközik egy már telepített csomaggal)
--quiet (-q)
- Az eredmény változó, de általában kevesebb kimenetet ad az emerge.
--reinstall changed-use
- A telepítési listába beveszi azokat a csomagokat melyeket érint a USE zászló változtatásunk. A --newuse opcióval szemben ez csak akkor telepíti újra a csomagokat ha hozzáadtunk vagy eltávolítottunk USE zászlót.
--skipfirst
- Ez az opció csak a --resume opcióval együtt érvényes. Eltávolítja az első csomagot a folytatás listából, így folytatni tudjuk a telepítést a következő csomagtól, ha nem kijavítható hibába ütközünk. Ezt csak akkor használjuk ha a kihagyott csomag nem függősége a további csomagoknak.
--tree (-t)
- Megmutatja a függőségi fát (kiírja a függőségek csomagneveit) a megadott csomagokhoz. Ez valójában a következő opciókkal hasznos --emptytree vagy az --update és a --deep.
--usepkg (-k)
- Ezen opció használatával az emerge bináris csomagokból (a $PKGDIR könyvtárból) próbál telepíteni ha az elérhető, ezzel elkerülhetünk néhány hosszú fordítást. Ez hasznos a CD-ről való telepítésnél, akár exportálni tudod a PKGDIR=/mnt/cdrom/packages környezeti változót és az opció használatával telepíteni tudod a CD-ről a bináris csomagokat a függőségekkel együtt.
--usepkgonly (-K)
- Az emerge ennél az opciónál csak bináris csomagokat (a $PKGDIR könyvtárból) használ. Minden bináris csomagnak elérhetőnek kell lenni a függőség-meghatározáskor különben az emerge egyszerűen megszakítja a folyamatot. A portage nem használja a $PORTDIR könyvtárat a függőség számoláshoz, így a maszk információkat is figyelmen kívül hagyja.
--verbose (-v)
- Az emerge ilyenkor részletes kimeneti módban fut. Jelenleg az opció használatakor az emerge kiírja a GNU info hibákat, ha van, és csomagonként megmutatja a USE zászlókat kiírásnál (--pretend). A következő jeleket használja a USE zászlók állapotának kijelzésére:
- - = nincs engedélyezve (letiltva vagy eltávolítva)
- * = változtatás bekapcsolásról vagy kikapcsolásról
- % = újonnan hozzáadott vagy eltávolításra kijelölt
- () = kényszerített, maszkolt, vagy eltávolított
--with-bdeps < y | n >
- A függőség-meghatározáskor, kiveszi a fordítás idejű függőségeket melyek nem szigorúan szükségesek. Ennek alapértéke 'n' telepítésnél és 'y' a --depclean műveletnél. Ezt az opciót az EMERGE_DEFAULT_OPTS változóhoz (lásd make.conf(5)) hozzá tudod adni, vagy később felül tudod bírálni parancssorból.
[szerkesztés] KÖRNYEZETI VÁLTOZÓK
ROOT = [elérési út]
- A ROOT elérési út módosításával megadhatjuk a cél root fájlrendszert, amit a csomagok vagy ebuild-ek telepítésekor használ az emerge. Ezt az értéket a make.conf(5) fájlban is módosíthatod, mikor a PORTAGE_CONFIGROOT értéke nem /.
Alapértelmezett érték /.
PORTAGE_CONFIGROOT = [elérési út]
- A PORTAGE_CONFIGROOT környezeti változó a portage konfigurációs állományok (lásd a FÁJLOK részt) elérési útjának megadására használható. Ezt a változót beállíthatod a --config-root paraméterrel is.
Alapértelmezett érték: /.
[szerkesztés] KIMENET
Mikor az emerge parancsot --pretend és --verbose opciókkal használjuk, a kimenetet elsőre elég nehéz megérteni. Ez a szekció megmagyarázza a rövidítéseket.
[blocks B ] app-text/dos2unix (from pkg app-text/hd2u-0.8.0)
- A hd2u meggátolja a Dos2Unix csomag telepítését. A blokkolás akkor alakul ki mikor két csomag felülírná egymás állományait, vagy valamilyen törést okozna a rendszerben a két csomag együttléte. Mindazonáltal az egymást gátló csomagoknak nem szükséges párhuzamosan feltelepítve lenniük, mert általában ugyanazt a funkciót töltik be.
[ebuild N ] app-games/qstat-25c
- A Qstat egy új csomag, első alkalommal lesz telepítve.
[ebuild NS ] dev-libs/glib-2.4.7
- Már fel van telepítve egy glib verzió, de elérhető egy ”új” verzió egy másik SLOT-ban.
[ebuild R ] sys-apps/sed-4.0.5
- A Sed 4.0.5 már telepítve van, újratelepül ha futtatod a parancsot.
[ebuild F ] media-video/realplayer-8-r6
- A realplayer csomagot manuális kell letöltened. Mikor elindítod a csomag telepítését akkor ha a forrását nem találja az emerge, a portage leáll és leírja az instrukciókat a szükséges fájlok letöltéséhez.
[ebuild f ] media-video/realplayer-8-r6
- A realplayer csomaghoz szükséges fájlok már le vannak töltve.
[ebuild U ] net-fs/samba-2.2.8_pre1 [2.2.7a]
- A Samba 2.2.7a verziójú csomag már telepítve van és frissíteni tudsz a 2.2.8 pre1 verzióra.
[ebuild UD] media-libs/libgd-1.8.4 [2.0.11]
- A libGD 2.0.11 már fel van telepítve, de ha futtatod a parancsot, akkor a portage lerontja a verziót 1.8.4-esre.
Ez azért történhet mert az újabb verziójú (már feltelepített) csomagot maszkolták, mivel hibás vagy biztonsági rést fedeztek fel benne és javítás még nem készült hozzá.
Egy másik lehetőség az hogy egy csomag amit telepíteni kívánsz régebbi verziót igényel ebből a csomagból a működéséhez. Ebben az esetben a libGD 2.x nem kompatibilis a libGD 1.x verziójával. Ez azt jelenti hogy amely csomagokat a libGD 1.x verziót igénylik nem fog lefordulni a 2.x verzióval és neked muszáj lerontani a telepített libGD verziót mielőtt telepíted tudnád a csomagokat.
[ebuild U ] sys-devel/distcc-2.16 [2.13-r1] USE=ipv6* -gtk -qt%
- Itt láthatjuk milyen USE zászlókkal lehet fordítani a csomagot. Ebben a példában az ipv6 támogatás engedélyezett, és a gtk és qt támogatás le van tiltva. A csillag az ipv6 után azt jelöli hogy az előző telepítéskor nem volt ipv6 támogatás a csomagban. A százalékjel a qt zászló után azt jelöli hogy a qt támogatás a telepített verzió óta lett hozzáadva a csomaghoz. A USE szimbólumokhoz nézd meg a --verbose opció leírását ebben a dokumentációban (kicsit feljebb). *Megjegyzés: a zászlók állapotát csak a --pretend és --verbose opciók együttes használatával jeleníti meg. A --quiet opció az meggátolja ezen információk megjelenítését.
[szerkesztés] MEGJEGYZÉSEK
Ajánlott telepítést vagy frissítést megelőzően egy --pretend telepítést vagy frissítést végrehajtani. Így megnézheted mennyi csomagot is fog feltelepíteni, és megmutatja az egymást gátló csomagokat így fény derül arra hogy mivel is tudsz helyettesíteni egy csomagot a blokkolás megszüntetésére. Ezt duplán kell megtenned a system és world halmazokra, amik lehet hogy sok csomagot frissítenek ha a portage fa különösen aktív fejlesztésben vett részt.
Biztosan gyakran használod az --update műveletet, hogy frissítsd a meglévő csomagjaid. Mikor telepítesz egy csomagot és nem adod meg direkt módon a függőségeit telepítéskor akkor nem kerülnek a world fájlba, ha azt akarod hogy frissüljenek a csomagok a world halmazzal akkor add meg az emerge-nek paraméterbe telepítéskor őket, vagy telepítés után írd be őket a world fájlba (lásd FÁJLOK).
A USE zászlókat meg tudod adni parancssorba hogy felülírd az alapértelmezett helyeken meghatározott zászlókat, hogy megkerüld az esetleges függőségek feltelepítését amit te nem szeretnél. A parancssorban megadott USE zászlókat az emerge nem jegyzi meg. Például env USE=”-X -gnome” emerge mc az feltelepíti az mc csomagot a kívánt USE zászlókkal (Bourne kompatibilis héjakon kihagyhatod az env részt). Ha a USE beállításod véglegesre szeretnéd egy adott csomaghoz, akkor írd az /etc/portage/package.use fájlba inkább. (pl.: csoport/csomagnév -nemakaromUSEzászló akaromUSEzászló a ford.)
Ha az emerge --update sytem vagy az emerge --update world megszakad egy hibaüzenettel, az történhet azért mert az ebuild újabb képességet használ ami nincs az emerge telepített verziójában. Ekkor használd az emerge --update portage parancsot a legújabb verzióra frissítéshez, ami már támogatja az új képességeket.
[szerkesztés] MASZKOLT CSOMAGOK
Megjegyzés: Légy körültekintő mikor fejlesztői csomagokat használsz. A hibajelentések melyek a csomagok helytelen használatából adódnak elveszik a Gentoo fejlesztők idejét. Akkor használj csak maszkolt csomagot, ha biztos vagy benne hogy ki tudod küszöbölni a hibákat.
A maszkolást a portage rendszerben több okból használják:
- a csomag tesztelés alatt áll
- visszatartják a csomagot mert nem működik helyesen
- kiderül egy csomagról hogy biztonsági hibát tartalmaz
Lejjebb elolvashatod hogyan tudod a maszkolást megkerülni különböző esetekben:
package.mask
- A package.mask fájl blokkolja azon csomagokat melyek problémákat okozhatnak, vagy ismert hibái vannak különböző rendszereken. A fájl az /usr/portage/profiles könyvtárban van.
Ha ilyen csomagot szeretnénk telepíteni akkor írjuk ezen csomagok listáját a /etc/portage/profile/package.unmask fájlba (a fordító).
CHOST
- A CHOST változó a make.conf fájlban arra használatos hogy blokkolja azokat a bináris csomagokat amik más CHOST beállításokkal lettek fordítva. Az egyetlen út hogy engedélyezzük az ilyen bináris csomagok feltelepítését hogy a CHOST változó értékét pontosan arra állítjuk amivel a bináris csomag lett fordítva.
EAPI
- Az EAPI változó egy ebuild-ben azokat a csomagokat maszkolja amik nem támogatják a portage telepített verzióját. Ezeket a csomagokat csak a portage újabb verziójára frissítésével telepíthetjük.
KEYWORDS
- A KEYWORDS változóval egy ebuild fájlban az lehet megadva hogy a csomag még tesztelés alatt áll. Vannak architektúra specifikus kulcsszavak minden egyes csomaghoz, hogy a portage tudja mely rendszerekkel kompatibilis a csomag. Ha a csomag lefordul egy architektúrán, de még nincs minősítve stabilnak, akkor maszkolva van egy tilde (~) karakterrel rögtön az architektúra név előtt. Az emerge megvizsgálja az ACCEPT_KEYWORDS környezeti változót és ez alapján engedélyezi vagy letiltja a csomag telepítését. Az emerge programnak megadhatjuk hogy telepítsen ilyen tesztelés alatt álló programokat, ilyenkor szerkeszd a /etc/portage/package.keywords fájlt, ahol megadhatod a csomagok listáját amiből teszt verziót akarsz. Lásd még a portage(5) man oldalát.
[szerkesztés] KONFIGURÁCIÓS ÁLLOMÁNYOK
A portage rendszernek van egy speciális képessége: ”konfigurációs állomány védelem”. Ez funkció jellemzően azt szolgálja hogy egy új csomag konfigurációs állományai ne írják felül a már létező (akár általunk beállított) konfigurációs állományokat. Alapértelmezetten a konfigurációs állomány védelem be van kapcsolva a /etc és a KDE konfigurációs könyvtárakra; több is hozzá lesz adva a jövőben.
Mikor a portage feltelepít egy állományt egy védett könyvtárstruktúrába mint az /etc, semmilyen létező állomány nem lesz felülírva. Ha már létezik egy ugyanolyan nevű fájl, akkor a portage megváltoztatja a telepíteni kívánt fájl ”akármi” nevét ”._cfg0000_akármi” névre. Ha az ”._cfg0000_akármi” létezik már, akkor ”._cfg0001_akármi” névre, ...így tovább. Így a létező fájlok soha nem kerülnek felülírásra, az adminisztrátor manuálisan beteheti az új fájlt a helyére kikerülve bármiféle nemvárt felülírást.
Azon felül hogy a portage véd a felülírástól, nem is töröl semmi állományt egy védett könyvtárból még akkor sem ha eltávolítjuk a csomagot. Ez lehet hogy kicsit rendetlenné teszi a könyvtárat, de megvéd attól hogy értékes konfigurációs fájljaink tűnjenek el. A védett könyvtárak a CONFIG_PROTECT változóban vannak beállítva, alapesetben ezt az /etc/make.globals fájl tartalmazza. Kivételeket a CONFIG_PROTECTED mappákon belül a CONFIG_PROTECT_MASK változóban definiálhatunk. A frissítésre váró fájlokat az /etc könyvtárban a find /etc -iname ”._cfg????_*” paranccsal találhatjuk meg.
A védelmet ki tudod kapcsolni a CONFIG_PROTECT=”-*” sor elhelyezésével a /etc/make.conf fájlba. Ekkor a portage könyörtelenül felülír bármilyen konfigurációs állományt. De lehet olyat is hogy bekapcsolva hagyod a védelmet és megadod a portage rendszernek hogy csak bizonyos almappákban felülírhat fájlokat. Például ha azt akarod hogy a portage automatikusan frissítse az rc szkriptjeidet és a wget konfigurációdat, nem kell mást tenned mint a következő sort beszúrni a /etc/make.conf állományodban: CONFIG_PROTECT_MASK=”/etc/wget /etc/rc.d”
Eszközök mint például dispatch-conf, cfg-update, és etc-update jó segédeszközök ezen fájlok frissítésére. Interaktív felületet nyújtanak illetve automatikusan elvégzik a triviális módosításokat (pl. ugyanaz a frissített és régi állomány).
[szerkesztés] HIBÁK JELENTÉSE
Kérjük, hogy a hibákat a következő weboldalon jelezd:
http://bugs.gentoo.org/
Kérjük hogy az emerge --info kimenetét is tartalmazza a hiba jelentés.
[szerkesztés] SZERZŐK
Daniel Robbins <drobbins@gentoo.org>
Geert Bevin <gbevin@gentoo.org>
Achim Gottinger <achim@gentoo.org>
Nicholas Jones <carpaski@gentoo.org>
Phil Bordelon <phil@thenexusproject.org>
Mike Frysinger <vapier@gentoo.org>
Marius Mauch <genone@gentoo.org>
[szerkesztés] FÁJLOK
Ez itt egy általános lista azokról a fájlokról amikre kíváncsi lehetsz. A teljes listáért lásd a portage(5) man oldalt.
/var/lib/portage/world
- Ez tartalmazza a felhasználó által feltelepített csomagok listáját. Nyugodtan módosíthatod tartalmát, csomagok hozzáadásával megadhatod mely csomagok frissüljenek a world-el, eltávolításával megadhatod mely csomagokat nem akarod frissíteni.
/etc/make.conf
- A csomagok fordításánál használt változókat tartalmazza, felülbírálja a make.globals fájlban megadottakat.
/etc/portage/color.map
- Változókat tartalmaz, amelyekkel testre tudod szabni az emerge színeit.
/etc/dispatch-conf.conf
- A konfigurációs állományok automatikus frissítését/biztonsági mentését szabályozó beállításokat tartalmazza.
/etc/make.profile/make.defaults
- A csomag fordításánál használt profil-specifikus (profil = hardver típus (x86,x86_64,alpha...) a fordító) változókat tartalmazza. Ne szerkeszd ezt a fájlt!
/etc/make.profile/use.defaults
- Az alapértelmezetten engedélyezett USE zászlókat tartalmazza. Ne szerkeszd ezt a fájlt!
/usr/portage/profiles/use.desc
- A USE zászlók mester listája, tartalmazza a zászlókat és leírásukat. Ne szerkeszd ezt a fájlt!
/etc/make.profile/virtuals
- Alapértelmezett csomagokat tartalmaz a virtuális csomagokhoz mint függőség. Ne szerkeszd ezt a fájlt!
/etc/make.profile/packages
- Az alaprendszer csomagjainak listáját tartalmazza. A system és a world halmazok ezt a fájlt is felhasználjál információgyűjtésre. Ne szerkeszd ezt a fájlt!
/etc/make.globals
- Az alapértelmezett változókat tartalmazza a fordítás folyamatához. Ne szerkeszd ezt a fájlt!
[szerkesztés] LÁSD MÉG
kedz 2007. december. 20.
