Portagen toimintaan liittyy suojattujen tiedostojen käsite. Tällä tarkoitetaan
mekaniikkaa, joka päivitystilanteessa jättää vanhat versiot tiedostoista
ylikirjoittamatta, mutta kertoo käyttäjälle mahdollisesta päivityksestä. Tämä
on tietenkin enimmäkseen käytännöllistä asetustiedostojen kanssa (niiden,
jotka ovat hakemistossa
Ylikirjoittamisen sijaan luodaan uusi
Portage ei osaa suojata yksittäisiä tiedostoja, sen sijaan se käsittelee
kokonaisia hakemistoja.
CONFIG_PROTECT="/etc /usr/share/config /usr/kde/3.1/share/config"
Jos haluat suojata jonkin hakemiston suojaamatta samalla alihakemistoja,
joudut poistamaan suojauksen näistä alihakemistoista merkitsemällä ne
muuttujaan
CONFIG_PROTECT_MASK="/etc/init.d"
Lisätietoa asetustietojen suojauksesta englanniksi löytyy
# emerge --help config
# etc-update
Kun muodolliset muutokset on yhdistetty,
Please select a file to edit by entering the corresponding number. (-1 to exit) (-3 to auto merge all remaining files) (-5 to auto-merge AND not use 'mv -i'):
Vaihtoehdolla
Esimerkkinä katselemme asetustiedostoa
Beginning of differences between /etc/pear.conf and /etc/._cfg0000_pear.conf[...] End of differences between /etc/pear.conf and /etc/._cfg0000_pear.conf 1) Replace original with update 2) Delete update, keeping original as is 3) Interactively merge original with update 4) Show differences again
Ruudulla näkynee nyt kahden tiedoston eroavaisuudet. Jos näyttäisi siltä,
että asetustiedoston voi korvata ongelmitta, näppäile
Ei ole järkevää tarkastella vuorovaikutteista yhdistelyä täällä. Täydellisyyden vuoksi mainitsemme mahdolliset komennot joita voidaan käyttää tiedostojen yhdistämiseen. Yhdistämistila koostuu kahdesta rivistä (toinen on alkuperäisessä tiedostossa, toinen uudessa) ja syöterivistä, jolle voi antaa seuraavia komentoja:
ed: Edit then use both versions, each decorated with a header. eb: Edit then use both versions. el: Edit then use the left version. er: Edit then use the right version. e: Edit a new version. l: Use the left version. r: Use the right version. s: Silently include common lines. v: Verbosely include common lines. q: Quit.
Päivitettyäsi tärkeät asetustiedot käsin voit yhdistää loput tiedostot
automaattisesti.
Gentoon saavuttaessa kasvavaa suosiota peilipalvelinten käyttö on tullut erittäin suositeltavaksi. Portagessa on kolme muuttujaa peileille: yksi rsyncille (Portagepuun ajantasaistamiseen), yksi distfileseille (lähdekoodin lataamiseen) ja yksi esikäännetyille paketeille.
Lista distfiles-palvelimista on
SYNC="rsync://rsync.fi.gentoo.org/gentoo-portage rsync://rsync.europe.gentoo.org/gentoo-portage"
GENTOO_MIRRORS="http://trumpetti.atm.tut.fi/gentoo http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo"
PORTAGE_BINHOST="ftp://login:pass@grp-peili.example.com/pub/grp/i686/athlon-xp"
Joidenkin pakettien SRC-muuttujan arvo alkaa pseudoyhteyskäytännöllä
mirror://, näiden lähdekoodeja on yleensä jo valmiiksi jaossa useilla
palvelimilla (kuten sourceforgen ja gnun peilit). Kun portage törmää
tällaiseen asetukseen se etsii parasta palvelinta tiedostosta
Voit valita lähimmät peilipalvelimet tiedostoon
sourceforge http://belnet.dl.sourceforge.net
Voit myös määritellä erityisiä paikallisia (
Käyttääksesi
# emerge mirrorselect
Voit nyt hyödyntää
# mirrorselect
Portagen käyttämän hakuohjelman voi määritellä muuttujiin
FETCHCOMMAND="/usr/bin/wget -t 5 --passive-ftp -P \${DISTDIR} \${URI}" RESUMECOMMAND="/usr/bin/wget -c -t 5 --passive-ftp -P \${DISTDIR} \${URI}"
Portage käyttää oletusarvoisesti
Komento
Ebuildeja voi estää päivittymästä tai poistumasta
RSYNC_EXCLUDEFROM="/etc/portage/rsync_excludes"
Epäonnistuessaan
RSYNC_RETRIES="3"
Jos käytössä on (erittäin) hidas rsync-palvelin,
RSYNC_TIMEOUT="180"
Portagessa kaikki on säädettävissä, mukaanlukien eri tehtäviin käytetyt
hakemistot ja Portagen tarvitsemat tiedostot. Oletusarvoja (määritelty
tiedostossa
Portagepuun (Portage tree), eli ohjelmistohakemiston, sijainnin määrittelee
muuttuja
PORTDIR="/usr/portage"
Jos haluat säilyttää virallisen Portagepuun lisäksi omia
ohjelmistohakemistojasi, ne
täytyy määritellä muuttujassa
PORTDIR_OVERLAY="/usr/local/portage"
Ladattujen lähdkeooditiedostojen (ns. distfilejen) sijainti on muuttujassa
DISTDIR="${PORTDIR}/distfiles"
Esikäännettyjen pakettien sijainti on muuttujassa
PKGDIR="${PORTDIR}/packages"
RPM-pakettien (niin, jotkin paketit on saatavilla RPM:inä) sijainti määritellään
muuttujassa
RPMDIR="${PORTDIR}/rpm"
Portage käyttää väliaikaissijantia ebuildien kääntämiseen. Tämä määritellään
muuttujassa
PORTAGE_TMPDIR="/var/tmp"
Oletuksena Portage lue hakemiston nimeltä
BUILD_PREFIX="${PORTAGE_TMPDIR}/portage"
Jos muutat sijaintia, muista varmistaa että väliaikaishakemiston osiolla on riittävästi vapaata tilaa: suurten ohjelmistojen käännös voi helposti vaatia 2 gigatavua tai enemmänkin!
Muuttuja
PORT_LOGDIR="/var/log/portage"
Portage voi kääntää ohjelmistoja eri nice-arvoilla (prioriteetin omainen
määrite). Jos haluat korottaa nice-arvoa (joka tehostaa järjestelmän
vastauskykyä käännösten aikoina, mutta lisää käännösaikaa) sen voi määritellä
positiivisena kokonaislukuna muuttujaan
PORTAGE_NICENESS="3"
Usein tarvitaan saman paketin monia eri versioita (kirjastot mukaanlukien)
järjestelmässä. Portagessa on tuki tälle ebuildeihin määritettyinä
Pakettia päivitettäessä portage tarkastaa paketissa määritellyn
Jos kuitenkin
CLEAN_DELAY="5"
Jollet halua Portagen poistavan vanhoje versioita (eli "puhdistavan"
järjestelmää), voit asettaa muuttujan
AUTOCLEAN="no"
Olemme jo käsitelleet aika määrän muuttujia, mutta ei tässä vielä kaikki! Ne
jotka ovat asentaneet Gentoon muistavat
Lisää tietoa näistä on
# info gcc(Valitse kohta "Invoking gcc") (Valitse kohta "Optimize options")
Jos muuttuja
# Älä aseta arvoksi "false" vaan poista koko rivi # Portage ei tarkista itse arvoa, vain sen onko se määritelty DEBUGBUILD="true"
Muuttujaa
Asettamalla
MAKEOPTS="-j3"
Muuttujaa
# ROOT="/mnt/gentoo" emerge gnumeric
Oletusarvoisesti Portage värittää kaiken tulosteen luettavuuden parantamiseksi.
Jollet halua sen tekevän näin, aseta muuttuja
NOCOLOR="true"
Jos tarvitset listausta kaikista muuttujista, tarkastele ohjeivua
# man make.conf
Tiedostossa