Translations:Handbook:AMD64/Portage/Files/2/hu

From Gentoo Wiki
Jump to:navigation Jump to:search
Handbook:AMD64 kézikönyv
A Gentoo Linux telepítése
A telepítésről
Telepítőképfájl kiválasztása
Hálózat beállítása
Adathordozók előkészítése
Fokozat (stage) fájl
Alaprendszer telepítése
Kernel beállítása
Rendszer beállítása
Eszközök telepítése
Bootloader beállítása
Telepítés véglegesítése
Munka a Gentoo rendszerrel
Portage bemutatása
USE jelölőzászlók
Portage jellemzői
Init-szkript rendszer
Környezeti változók
Munka a Portage szoftvercsomag-kezelővel
Fájlok és könyvtárak
Változók
Szoftverágak keverése
További eszközök
Egyéni szoftvercsomag-tárolóhely
Fejlett funkciók
Hálózat beállítása OpenRC init-rendszeren
Munka elkezdése
Fejlett beállítások
Moduláris hálózat
Vezeték nélküli (Wi-Fi)
Funkcionalitás hozzáadása
Dinamikus menedzsment


Portage fájlok

Beállítással kapcsolatos irányelvek

A Portage szoftvercsomag-kezelő alapértelmezett beállítása a /usr/share/portage/config/make.globals fájlban található meg. Az összes Portage szoftvercsomag-kezelőt érintő beállításváltozók segítségével történik. A Portage által figyelt változók és jelentésük később kerülnek részletes ismertetésre.

Mivel sok beállításbéli irányelv architektúrák között eltér, ezért a Portage rendelkezik alapértelmezett beállítás fájlokkal, amelyek a rendszerprofil részét képezik. Ezt a profilt a /etc/portage/make.profile szimbolikus hivatkozás mutatja. A Portage beállításai a profil és az összes szülőprofil make.defaults fájljaiban vannak beállítva. Később részletesebben is elmagyarázzuk a profilokat és a /etc/portage/make.profile könyvtárat.

Beállításváltozó módosításakor ne változtassa meg a /usr/share/portage/config/make.globals vagy make.defaults fájlokat. Ehelyett használja a /etc/portage/make.conf fájlt, amely felülírja az előző fájlokat. További információért olvassa el a /usr/share/portage/config/make.conf.example fájlt. Ahogy a neve is sugallja, ez csupán egy példa fájl, tehát a Portage nem olvassa be ezt a fájlt.

Lehetséges a Portage beállításváltozót környezeti változóként definiálni, ám ezt nem javasoljuk.

Profil-specifikus információk

Már találkoztunk a /etc/portage/make.profile könyvtárral. Nos, ez valójában nem egy könyvtár, hanem egy szimbolikus hivatkozás egy profilra, alapértelmezés szerint a /profiles/ könyvtárban található profilon belül, bár bárhol máshol is létrehozhatunk saját profilokat, és azokra is ráhivatkozhatunk. Az a profil, amelyre ez a szimbolikus hivatkozás mutat, az a profil, amelyhez az operációs rendszer alkalmazkodik.

Egy profil architektúra-specifikus információkat tartalmaz a Portage szoftvercsomag-kezelő számára, mint például az adott profilhoz tartozó rendszer szoftvercsomagjainak listáját, azon szoftvercsomagok listáját, amelyek nem működnek (vagy ki vannak maszkolva) az adott profil esetében, stb.

Felhasználóspecifikus beállítások

Ha a Portage szoftvercsomag-kezelő viselkedését módosítani kell a szoftverek telepítésével kapcsolatban, akkor a megfelelő fájlokat a /etc/portage/ könyvtáron belül kell megváltoztatni. Erősen ajánlott a /etc/portage/ könyvtáron belüli fájlok használata, és erősen ellenjavallott a Portage viselkedését a környezeti változókon keresztül felülírni!

A /etc/portage/ könyvtáron belül a felhasználók a következő fájlokat hozhatják létre:

  • package.mask - Azokat a szoftvercsomagokat sorolja fel, amelyeket a Portage szoftvercsomag-kezelőnek soha nem szabad megpróbálnia telepíteni.
  • package.unmask - Azokat a szoftvercsomagokat sorolja fel, amelyeket a Portage szoftvercsomag-kezelőnek képesnek kell lennie telepíteni, annak ellenére, hogy a Gentoo fejlesztői erősen ellenjavallják azok telepítését.
  • package.accept_keywords - Azokat a szoftvercsomagokat sorolja fel, amelyeket a Portage szoftvercsomag-kezelőnek képesnek kell lennie telepíteni, annak ellenére, hogy a szoftvercsomagot a fejlesztők még nem találták alkalmasnak az operációs rendszer számára vagy az architektúra számára.
  • package.use - Azokat a USE jelölőzászlókat sorolja fel, amelyeket bizonyos szoftvercsomagoknál használni kell anélkül, hogy ezeket a USE jelölőzászlókat az egész operációs rendszer használná.

These don't have to be files; they can also be directories that contain one file per package. More information about the /etc/portage/ directory and a full list of possible files that can be created can be found in the Portage man page:

user $man portage

Changing Portage file and directory locations

The previously mentioned configuration files cannot be stored elsewhere - Portage will always look for those configuration files at those exact locations. However, Portage uses many other locations for various purposes: build directory, source code storage, Gentoo repository location, ...

All these purposes have well-known default locations but can be altered to personal taste through /etc/portage/make.conf. The rest of this chapter explains what special-purpose locations Portage uses and how to alter their placement on the filesystem.

This document isn't meant to be used as a reference though. To get 100% coverage, please consult the Portage and make.conf man pages:

user $man portage
user $man make.conf

Fájlok tárolása

Gentoo ebuild szoftvertároló

The default location of the Gentoo ebuild repository is at . This is defined by the default repos.conf file found at /usr/share/portage/config/repos.conf. To modify the default, copy this file to /etc/portage/repos.conf/gentoo.conf and change the location setting. When storing the Gentoo ebuild repository elsewhere (by altering this variable), don't forget to change the /etc/portage/make.profile symbolic link accordingly.

After changing the location setting in /etc/portage/repos.conf/gentoo.conf, it is recommended to alter the following variables in /etc/portage/make.conf as well since they will not notice the location change. This is due to how Portage handles variables: PKGDIR, DISTDIR, and RPMDIR.

Előre bináris futtatható kódra lefordított szoftverek

Even though Portage doesn't use pre-built binaries by default, it has extensive support for them. When asking Portage to work with pre-built packages, it will look for them in /var/cache/binpkgs. This location is defined by the PKGDIR variable.

Forráskód

Application source code is stored in /var/cache/distfiles by default. This location is defined by the DISTDIR variable.

Portage database

Portage stores the state of the system (what packages are installed, what files belong to which package, ...) in /var/db/pkg.

Warning
Do not alter the system state files manually! It might break Portage's knowledge of the system.

Portage cache

The Portage cache (with modification times, virtuals, dependency tree information, ...) is stored in /var/cache/edb. This location really is a cache: users can clean it if they are not running any Portage-related application at that moment.

Building software

Temporary Portage files

Portage's temporary files are stored in /var/tmp/ by default. This is defined by the PORTAGE_TMPDIR variable.

Building directory

Portage creates specific build directories for each package it emerges inside /var/tmp/portage/. This location is defined by the PORTAGE_TMPDIR variable with portage/ appended.

Live filesystem location

By default Portage installs all files on the current filesystem (/), but this can be changed by setting the ROOT environment variable. This is useful when creating new build images.

Logging features

Ebuild logging

Portage can create per-ebuild log files, but only when the PORT_LOGDIR variable is set to a location that is writable by Portage (through the Portage user). By default this variable is unset. If PORT_LOGDIR is not set, then there will not be any build logs with the current logging system, though users may receive some logs from the new elog support.

If PORT_LOGDIR is not defined and elog is used, then build logs and any other logs saved by elog will be made available, as explained below.

Portage offers fine-grained control over logging through the use of elog:

  • PORTAGE_ELOG_CLASSES: This is where users can define what kinds of messages to be logged. This can be any space-separated combination of info, warn, error, log, and qa.
    • info: Logs "einfo" messages printed by an ebuild
    • warn: Logs "ewarn" messages printed by an ebuild
    • error: Logs "eerror" messages printed by an ebuild
    • log: Logs the "elog" messages found in some ebuilds
    • qa: Logs the "QA Notice" messages printed by an ebuild
  • PORTAGE_ELOG_SYSTEM: This selects the module(s) to process the log messages. If left empty, logging is disabled. Any space-separated combination of save, custom, syslog, mail, save_summary, and mail_summary can be used. At least one module must be used in order to use elog.
    • save: This saves one log per package in $PORT_LOGDIR/elog, or /var/log/portage/elog if $PORT_LOGDIR is not defined.
    • custom: Passes all messages to a user-defined command in $PORTAGE_ELOG_COMMAND; this will be discussed later.
    • syslog: Sends all messages to the installed system logger.
    • mail: Passes all messages to a user-defined mailserver in $PORTAGE_ELOG_MAILURI; this will be discussed later. The mail features of elog require >=portage-2.1.1.
    • save_summary: Similar to save, but it merges all messages in $PORT_LOGDIR/elog/summary.log, or /var/log/portage/elog/summary.log if $PORT_LOGDIR is not defined.
    • mail_summary: Similar to mail, but it sends all messages in a single mail when emerge exits.
  • PORTAGE_ELOG_COMMAND: This is only used when the custom module is enabled. Users can specify a command to process log messages. Note that the command can make use of two variables: ${PACKAGE} is the package name and version, while ${LOGFILE} is the absolute path to the logfile. For instance:
CODE Example PORTAGE_ELOG_COMMAND definition
PORTAGE_ELOG_COMMAND="/path/to/logger -p '\${PACKAGE}' -f '\${LOGFILE}'"
  • PORTAGE_ELOG_MAILURI: This contains settings for the mail module such as address, user, password, mail server, and port number. The default setting is "root@localhost localhost". The following is an example for an SMTP server that requires username and password-based authentication on a particular port (the default is port 25):
CODE Example PORTAGE_ELOG_MAILURI definition
PORTAGE_ELOG_MAILURI="user@some.domain username:password@smtp.some.domain:995"
  • PORTAGE_ELOG_MAILFROM: Allows the user to set the "from" address of log mails; defaults to "Portage" if unset.
  • PORTAGE_ELOG_MAILSUBJECT: Allows the user to create a subject line for log mails. Note that it can make use of two variables: ${PACKAGE} will display the package name and version, while ${HOST} is the fully qualified domain name of the host Portage is running on. For instance:
CODE Example PORTAGE_ELOG_MAILSUBJECT definition
PORTAGE_ELOG_MAILSUBJECT="package \${PACKAGE} was merged on \${HOST} with some messages"
Important
Users who used enotice with Portage-2.0.* must completely remove enotice, as it is incompatible with elog.