Portage/hu
emerge — configuration — ebuild repository — dispatch-conf
world file — USE flags — ebuilds — profiles
upgrades — using testing packages — binary packages
tools — gentoolkit — eselect
Portage FAQ — cheat sheet — FAQ
all articles
A portage egy nagyon fejlett csomagkezelő, amely a legnagyobb tisztelettel kezeli a felhasználó kívánságait. Néha túl sok bizalom van vetve a felhasználóba, ezért lehet, hogy Ön inkább a Portage súgót keresi, nem ezt a cikket.
A Portage a Gentoo hivatalos csomagkezelője és terjesztési (disztribúciós) rendszere. A Gentoo-alapú operációs rendszerek szíveként funkcionál. Fejlett függőségi feloldást, szoftverek forrásból vagy bináris csomagokból történő rugalmas felépítését és telepítését a Portage végzi. Továbbá, a legtöbb egyéb alapvető disztribúciós funkciókat is mind ő hajtja végre.
A Portage szoftvert biztosít a Gentoo ebuild tárolóból, minden további ebuild tárolóból, vagy binhostból. A Portage számos parancsot tartalmaz a tár- és csomagkezeléshez, amelyek közül az elsődleges az emerge parancs.
Néhány gyakori kérdés a portage és az emerge paranccsal kapcsolatban már meg van válaszolva a GYIK -ben és a Portage GYIK -ben.
A napi szintű használat során az emerge, az emaint, és a dispatch-conf portage parancsok lesznek a leggyakrabban futtatva. A felsorolt parancsok bővebb leírásáért kérem, keresse meg a dokumentációban a parancsokra vonatkozó részeket.
A teljes felhasználói dokumentációért lásd a portage man portage kézikönyvet. A Portage csomagok telepítésével és karbantartásával kapcsolatos információkért lásd az emerge cikket.
Ez a cikk a Portage-et a felhasználó szemszögéből mutatja be. Azok, akik szeretnének hozzájárulni a Portage fejlesztéséhez, látogassák meg a Portage projekt oldalát.
Telepítés
Minden Gentoo telepítő már alapból tartalmazza a Portage csomagkezelőt, így azt nem kell külön telepíteni!
Olvassa el a sérült vagy hiányzó Portage részt abban a ritka esetben, amikor sérült vagy hiányzik a Portage.
Portage frissítése
Ahhoz, hogy a Gentoo naprakész maradjon, a Portage-nek naprakésznek kell lennie. Általában a Gentoo szokásos, rendszeres frissítése automatikusan, probléma nélkül frissíti a Portage-et.
Alkalmanként a Portage frissítései tanácsossá tehetik a Portage frissítését a rendszer többi része előtt. A Portage szinkronizálása után egy erre kérő üzenet jelenhet meg:
- Elérhető a portage újabb változata.
- Erősen ajánlott a portage újabb változatára történő frissítése, még mielőtt bármilyen más csomagot frissítene.
- A portage azonnali frissítéséhez futtassa az „emerge --oneshot sys-apps/portage” parancsot.
Emerge Portage a tanácsnak megfelelően (módosítja a parancsot, ha az üzenet eltér a példától). A --oneshot
opció azért fontos, hogy elkerüljük a sys-apps/portage hozzáadását a world fájlhoz:
root #
emerge --ask --oneshot sys-apps/portage
Ha probléma adódik a Portage frissítésével, a User:Sam/Portage_help/Upgrading_Portage segíthet.
Konfiguráció
Fájlok
A fő Portage konfiguráció a make.conf fájlban található, bár sok fájl használható a Portage beállítására, főleg az /etc/portage könyvtárban.
Lásd a man make.conf leírást az átfogó dokumentációért, nevezetesen az ebben a fájlban beállítható változók listájáért.
A /usr/share/portage/config/make.globals fájl számos alapértelmezett konfigurációs értéket tartalmaz, amelyeket a Portage szerez be. Ezek az értékek felülírhatók, ha ugyanazokat a változóneveket adjuk meg az /etc/portage/make.conf fájlban.
Környezeti változók
A portage nagymértékben konfigurálható környezeti változókon keresztül.
Futtassa a man make.conf parancsot az elérhető környezeti változókkal kapcsolatos információkért. Tekintse meg a Kézikönyv részt a környezeti változókkal való munkavégzésről a Gentoo-ban.
Az összes jelenleg beállított környezeti változó megtekintéséhez futtassa:
user $
emerge --info --verbose
A környezeti változók csomagonként állíthatók be az /etc/portage/package.env bejegyzéseken keresztül.
Ebuild tárolók
A Gentoo ebuild tárolóján kívül, ahonnan a Portage alapértelmezés szerint lekéri a csomagokat, további ebuild tárolók is elérhetők, például:
- repos.gentoo.org - A közösség által hozzájárult tároló. Néhány a Gentoo fejlesztők által biztosított tárolók listája.
- GURU - Hivatalos ebuild tároló, amelyet a Gentoo felhasználók közösen tartanak karban. Néhány Gentoo fejlesztő kis támogatásával.
- gpo.zugaina.org - Harmadik féltől származó ebuild tárolók listája.
Az ebuild tároló cikk egy szakaszt tartalmaz az ebuild tárolók Portage általi használatára való beállításáról.
Keresse meg a rendelkezésre álló ebuildeket a parancssorban az emerge emerge --search vagy eix paranccsal.
Míg a Gentoo ebuild tárolót Gentoo fejlesztők írják és vizsgálják át, valamint a GURU tárolónak is van némi fejlesztők általi felügyelete, addig más ebuild tárolók esetében ez nem mindig igaz. Lehetséges, hogy egyes ebuilds tárolók sérülékeny, súlyosan törött, vagy akár rosszindulatú szoftvereket is tartalmazhatnak elméletileg.
Binárisokat tároló számítógépek
A binárisokat tároló számítógépek az /etc/portage/binrepos.conf fájlban vannak beállítva. Lehetővé teszik a bináris csomagok gyors telepítését, mindaddig, amíg a telepített vagy frissített csomaghoz rendelkezésre áll egy csomag a kért USE flag jelölőzászlóknál.
Létezik egy hivatalos Gentoo binárisokat tartalmazó hoszt számítógép, amely számos bináris csomagot tartalmaz az amd64 és arm64 architektúrákhoz. További beállítási és használati utasításokért tekintse meg az útmutatót az előbbi linken.
Alternatív bináris hoszt számítógépek konfigurálásához, valamint a további információkért a bináris csomagok Portage-val való használatáról lásd a bináris csomagok útmutatóját.
A portage eszközeinek használata
A portage a rendszer adminisztrációjához és karbantartásához számos különféle eszközt és segédprogramot tartalmaz. A következő szakaszok ábécé sorrendben sorolják fel ezeket.
A főbb parancsok, amelyekre a felhasználóknak napi szinten lesz szükségük, a következők: emerge, emaint, és dispatch-conf.
archive-conf
Az archive-conf célja egy konfigurációs fájl mentése a dispatch-conf archívumkönyvtárban. A legtöbb felhasználónak soha nem kell futtatnia ezt a parancsot:
root #
archive-conf
Usage: archive-conf /CONFIG/FILE [/CONFIG/FILE...]
dispatch-conf
A dispatch-conf segédprogram a konfigurációs fájlok frissítéseinek kezelésére szolgál. Lásd a dispatch-conf cikket.
ebuild
Az ebuild parancs része a portage -nek. A portage az ebuild parancs segítségével különféle ebuild funkciókat futtat.
Ezt a parancsot általában közvetlenül nem a felhasználó futtatja, és csak a fejlesztőknek szokott hasznos lenni. Ne próbálja meg csomagok telepítésére használni. Nézze meg inkább az emerge parancsot.
Az ebuild parancs és az ebuild fájlok közötti egyértelműségért nézze meg az ebuild leírásáról szóló cikket.
egencache
Az egencache nevű eszköz újraépíti a metaadat-információk gyorsítótárát az ebuild-tárak számára. További információkért tekintse meg az egencache cikket.
emaint
A rendszerállapot felméréséhez kapcsolódó csomagkezelést és karbantartást végez.
Tekintse meg a szoftvertároló szinkronizálása részt arról, hogy hogyan használhatja az emaint parancsot a tároló szinkronizálására. Részletes információkért lásd a man 1 emaint részt a man súgóban.
user $
emaint --help
usage: usage: emaint [options] COMMAND The emaint program provides an interface to system health checks and maintenance. See the emaint(1) man page for additional information about the following commands: Commands: all Perform all supported commands binhost Scan and generate metadata indexes for binary packages. cleanconfmem Check and clean the config tracker list for uninstalled packages. cleanresume Discard emerge --resume merge lists logs Check and clean old logs in the PORTAGE_LOGDIR. merges Scan for failed merges and fix them. movebin Perform package move updates for binary packages moveinst Perform package move updates for installed and binary packages. sync Check repos.conf settings and sync repositories. world Check and fix problems in the world file. optional arguments: -h, --help show this help message and exit -c, --check Check for problems (a default option for most modules) -f, --fix Attempt to fix problems (a default option for most modules) --version show program's version number and exit -C, --clean Cleans out logs more than 7 days old (cleanlogs only) module-options: -t, -p -t NUM, --time NUM (cleanlogs only): -t, --time Delete logs older than NUM of days -p, --pretend (cleanlogs only): -p, --pretend Output logs that would be deleted -P, --purge Removes the list of previously failed merges. WARNING: Only use this option if you plan on manually fixing them or do not want them re-installed. -y, --yes (merges submodule only): Do not prompt for emerge invocations -r REPO, --repo REPO (sync module only): -r, --repo Sync the specified repo -A, --allrepos (sync module only): -A, --allrepos Sync all repos that have a sync-url defined -a, --auto (sync module only): -a, --auto Sync auto-sync enabled repos only --sync-submodule {glsa,news,profiles} (sync module only): Restrict sync to the specified submodule(s)
emerge
Az emerge a portage parancssori felülete. A legtöbb felhasználó az emerge parancsot használva kommunikál a portage csomagkezelővel.
Az emerge paranccsal kapcsolatos további információkért kérem, nézze meg az ide tartozó wiki bejegyzést.
emerge-webrsync
Telepítsen önmagának az internetről egy Gentoo ebuild szoftvertároló pillanatképet. Részletekért nézze meg a kézikönyv ide eső részét.
root #
emerge-webrsync -h
Usage: /usr/bin/emerge-webrsync [options] Options: --revert=yyyymmdd Revert to snapshot -k, --keep Keep snapshots in DISTDIR (don't delete) -q, --quiet Only output errors -v, --verbose Enable verbose output -x, --debug Enable debug output -h, --help This help screen (duh!)
Az eix-sync parancs a színfalak mögött, belül az emerge-webrsync parancsot hívja meg, ha a /etc/portage/repos.conf fájl sync-type értéke webrsync
.
emirrordist
Eszköz a csomag diszfájlok tükrözésére.
root #
emirrordist -h
usage: emirrordist [options] <action> emirrordist - a fetch tool for mirroring of package distfiles optional arguments: -h, --help show this help message and exit Actions: --version display portage version and exit --mirror mirror distfiles for the selected repository Common options: --dry-run perform a trial run with no changes made (usually combined with --verbose) --verbose, -v display extra information on stderr (multiple occurences increase verbosity) --ignore-default-opts do not use the EMIRRORDIST_DEFAULT_OPTS environment variable --distfiles DIR distfiles directory to use (required) --jobs JOBS, -j JOBS number of concurrent jobs to run --load-average LOAD, -l LOAD load average limit for spawning of new concurrent jobs --tries TRIES maximum number of tries per file, 0 means unlimited (default is 10) --repo REPO name of repo to operate on --config-root DIR location of portage config files --repositories-configuration REPOSITORIES_CONFIGURATION override configuration of repositories (in format of repos.conf) --strict-manifests <y|n> manually override "strict" FEATURES setting --failure-log FILE log file for fetch failures, with tab-delimited output, for reporting purposes --success-log FILE log file for fetch successes, with tab-delimited output, for reporting purposes --scheduled-deletion-log FILE log file for scheduled deletions, with tab-delimited output, for reporting purposes --delete enable deletion of unused distfiles --deletion-db FILE database file used to track lifetime of files scheduled for delayed deletion --deletion-delay SECONDS delay time for deletion, measured in seconds --temp-dir DIR temporary directory for downloads --mirror-overrides FILE file holding a list of mirror overrides --mirror-skip MIRROR_SKIP comma delimited list of mirror targets to skip when fetching --restrict-mirror-exemptions RESTRICT_MIRROR_EXEMPTIONS comma delimited list of mirror targets for which to ignore RESTRICT="mirror" --verify-existing-digest use digest as a verification of whether existing distfiles are valid --distfiles-local DIR distfiles-local directory to use --distfiles-db FILE database file used to track which ebuilds a distfile belongs to --recycle-dir DIR directory for extended retention of files that are removed from distdir with the --delete option --recycle-db FILE database file used to track lifetime of files in recycle dir --recycle-deletion-delay SECONDS delay time for deletion of unused files from recycle dir, measured in seconds (defaults to the equivalent of 60 days) --fetch-log-dir DIR directory for individual fetch logs --whitelist-from FILE specifies a file containing a list of files to whitelist, one per line, # prefixed lines ignored
További részletekért tekintse meg a man emirrordist súgót.
env-update
Automatikusan frissíti a környezeti beállításokat.
root #
env-update -h
Usage: env-update [--no-ldconfig] See the env-update(1) man page for more info
Lásd még a man env-update súgót. Néhány további információért tekintse meg a bejelentkezés cikket arról, hogy hogyan van beállítva a környezet a Gentoo -ban.
fixpackages
Az összes szoftvercsomag számára csomagmozgatási frissítéseket hajt végre.
root #
fixpackages -h
usage: fixpackages [-h] The fixpackages program performs package move updates on configuration files, installed packages, and binary packages. optional arguments: -h, --help show this help message and exit
További részletekért, kérem tekintse meg a man fixpackages súgót.
regenworld
Újragenerálja a world fájlt azáltal, hogy a portage naplófájlban ellenőrzi az összes múltban végrehajtott műveletet.
Ezen eszköz használata előtt készítsen biztonsági másolatot a már meglévő world fájlról (/var/lib/portage/world).
root #
regenworld -h
This script regenerates the portage world file by checking the portage logfile for all actions that you've done in the past. It ignores any arguments except --help. It is recommended that you make a backup of your existing world file (/var/lib/portage/world) before using this tool.
portageq
A részletekért kérem, nézze meg a portageq idetartozó részét.
quickpkg
Portage csomagokat hoz létre. További információkért tekintse meg a Bináris csomagok útmutatóját.
user $
quickpkg --help
usage: quickpkg [options] <list of package atoms or package sets> optional arguments: -h, --help show this help message and exit --umask UMASK umask used during package creation (default is 0077) --ignore-default-opts do not use the QUICKPKG_DEFAULT_OPTS environment variable --include-config <y|n> include all files protected by CONFIG_PROTECT (as a security precaution, default is 'n') --include-unmodified-config <y|n> include files protected by CONFIG_PROTECT that have not been modified since installation (as a security precaution, default is 'n')
Tekintse meg a man quickpkg súgót.
repoman
A repoman egy fejlesztőeszköz az ebuild tesztelésére. A 2.3.0-s verzió óta a Portage-től külön csomagolva, az app-portage/repoman formátumban. További információkért tekintse meg a repoman cikkét.
Mostanra elavult a dev-util/pkgcheck és a dev-util/pkgdev csomagok által biztosított eszközök javára.
glsa-check
A Gentoo Linux Security Announcements (Gentoo Linux Biztonsági Közlemények) vagy GLSA-k a közösségnek küldött értesítések a Gentoo Linuxhoz, vagy kifejezetten a ::gentoo ebuild tárolókban található csomagokhoz kapcsolódó biztonsági résekről.
A glsa-check egy eszköz a különféle GLSAs-k nyomon követésére. Használható GLSA-k megtekintéséhez, de ami még fontosabb annak tesztelésére, hogy a rendszer sebezhető-e az ismert GLSA-kkal szemben.
További információért tekintse meg a man glsa-check súgót és a glsa-check --help parancsot:
user $
glsa-check --help
usage: glsa-check <option> [glsa-id | all | new | affected] optional arguments: -h, --help show this help message and exit -V, --version Show information about glsa-check -q, --quiet Be less verbose and do not send empty mail -v, --verbose Print more messages -n, --nocolor Removes color from output -e, --emergelike Upgrade to latest version (not least-change) -c, --cve Show CVE IDs in listing mode -r, --reverse List GLSAs in reverse order Modes: -l, --list List a summary for the given GLSA(s) or set and whether they affect the system -d, --dump Show all information about the GLSA(s) or set --print Alias for --dump -t, --test Test if this system is affected by the GLSA(s) or set and output the GLSA ID(s) -p, --pretend Show the necessary steps to remediate the system -f, --fix (experimental) Attempt to remediate the system based on the instructions given in the GLSA(s) or set. This will only upgrade (when an upgrade path exists) or remove packages -i, --inject Inject the given GLSA(s) into the glsa_injected file -m, --mail Send a mail with the given GLSAs to the administrator glsa-list can contain an arbitrary number of GLSA ids, filenames containing GLSAs or the special identifiers 'all' and 'affected'
Tippek
Gyakori portage problémák és megoldások
A Gentoo sokkal több konfigurációs lehetőséget kínál, mint amennyit a legtöbb disztribúció megenged. Ez elsőre zavaró terminológiához vezet, mint például a blockers, a körkörös függőségek, a REQUIRED_USE, stb.
Az alább cikkek segítenek a felhasználónak megérteni, hogy miként jönnek létre, valamint leírják a megoldásaikat:
Fő (Gentoo) ebuild kódtárolójának szinkronizálási ideje
Annak érdekében, hogy a Gentoo ebuild kódtárolójának legutóbbi frissítési (szinkronizálási) időpontját megtekinthesse, kérem futtassa a következő parancsot:
user $
cat /var/db/repos/gentoo/metadata/timestamp.chk
Szoftvercsomagkészletek listázása
Megszeretné tudni, hogy pontosan mely csomagok vannak benne az egyes csomagkészletekben? Kérem látogasson el a Csomagkészletek leírásra.
Hibaelhárítás
Korrupt vagy hiányos portage
Annak ellenére, hogy nagyon ritkának kell lennie, mint minden adat esetén, továbbra is fennáll annak a lehetősége, hogy a portage korrupt vagy akár nem eltávolított állapotban is lehet, ami nagyon rossz lenne az egész rendszer működésének. Ha ez valaha is megtörténne, akkor vannak olyan módok, amelyekkel a portage helyreállítható. Viszont a portage nagyon központi dolog, ezért az újratelepítés egy meglehetősen érintett művelet, amely kézi beavatkozást igényel a csomagkezelő telepítéséhez anélkül, hogy a rendszeren működőképes csomagkezelő lenne.
Kérem tekintse meg a Fix my Gentoo című részt a bináris csomagokon keresztüli vészhelyzeti telepítés részleteiért. Valamint tekintse meg kérem a Sérült portage javítása leírást.
Az alapértelmezett Gentoo ebuild tároló helyének cseréje
A 2019-04-29[1]-án megjelent portage v2.3.66[2] verziótól kezdve megváltoztak a portdir, distdir, repo_name, repo_basedir könyvtárak alapértelmezett helyei.
További információért tekintse meg a bug #662982 hibával kapcsolatos leírást.
Régi hely
repo_basedir="/usr"
repo_name="portage"
distdir="/usr/portage/distfiles"
portdir="/usr/portage"
target_distdir="/usr/portage/distfiles"
target_pkgdir="/usr/portage/packages"
Új hely
repo_basedir="/var/db/repos"
repo_name="gentoo"
distdir="/var/cache/distfiles"
portdir="/var/db/repos/gentoo"
target_distdir="/var/cache/distfiles"
target_pkgdir="/var/cache/binpkgs"
További részletek
- /etc/portage — the primary configuration directory for Portage, Gentoo's package manager.
- /etc/portage/make.conf — fő konfigurációs fájl. A Portage környezet globális szintű testreszabására használják.
- /etc/portage/color.map — a file containing variables that define color classes used by Portage.
- prefix — enables the power of Gentoo and Portage on other distributions and/or operating systems (Microsoft Windows via Cygwin, Android via Termux, etc.).
Portage csomagkezelővel kapcsolatos
- Upgrading Gentoo — elmagyarázza, hogy hogyan kell frissíteni a Gentoo rendszert, és hogyan kell eljárni egy jól karbantartott rendszer érdekében.
- Catalyst — a tool to build stage files and live-images for Gentoo
- Creating an ebuild repository — basics of creating an ebuild repository and maintaining ebuilds in it.
- GCC optimization — an introduction to optimizing compiled code using safe, sane CFLAGS and CXXFLAGS.
- Portage tips — the main command-line interface to Portage
- Repository format — A quick reference to Gentoo ebuild repository (overlay) format.
- Package Manager Specification — a standardization effort to ensure that the ebuild file format, the ebuild repository format (of which the Gentoo ebuild repository is the main incarnation), as well as behavior of the package managers interacting with these ebuilds is properly agreed upon and documented.
- Ebuild repository
- Category:Portage
- Gentoolkit
- Portage Multi Stage Dockerfile — The emerge --quickpkg-direct and related emerge --quickpkg-direct-root options are useful inside Dockerfiles
- Portage Security — aims to answer the question "How can I dispel doubts regarding the security of the Gentoo ebuild repository on a system?"
- Portage TMPDIR on tmpfs — It is unlikely that tmpfs will provide any performance gain for modern systems
Portage a Gentoo AMD64 kézikönyvében
- A Portage introduction
- USE flags
- Portage features
- Files and directories
- Configuring through variables
- Mixing software branches
- Additional Portage tools
- Custom Portage tree
- Advanced Portage features
Portage eszközök
- Useful Portage tools — az ebuild szoftvertárolókban elérhető Gentoo-specifikus rendszerkezelő eszközök listáját tartalmazza, különösen a Portage számára.
- Cfg-update — a utility used on Gentoo to manage configuration file updates.
Alternatív csomagkezelők és grafikus felhasználói felületek (GUI)
- Pkgcore — an alternative package manager for Gentoo that aims for high performance, extensibility, and a clean design.
- app-portage/kuroo - Graphical Portage frontend based on KF5/Qt5.
- App Swipe - Qt GUI for browsing local Portage repositories.
Az ebuild vagy csomaggal kapcsolatos leírások
- Package sets — describes package sets in high detail and includes a list of all typically available sets on a Gentoo system.
Külső források
- Official Portage documentation - Built by Portage developer Zac Medico (zmedico) .
- packages.gentoo.org - online searchable database of packages from the Gentoo package repository.
Portage man (súgó) oldalai
A man kézikönyvek (man súgók) a portage teljes műszaki dokumentációját tartalmazzák. Lokálisan, a helyben tárolt számítógépen, kérem írja be a Gentoo rendszer parancsértelmezőjébe a man <tárgy> parancsot, hogy olvasni tudja az említett kézikönyveket. Vegye figyelembe, hogy a kézikönyvek további Lásd még oldalakra is hivatkozhatnak.
- emerge - command-line interface to the Portage system - emerge man page.
- Portage configuration files - Portage man page.