TIPP Portage trükkök

A Gentoo Linux Wiki wikiből

Néhány egyszerű parancs a portage rendszer kezeléséhez.

(Az itt használt parancsokat a sys-apps/portage es az app-portage/gentoolkit csomagok tartalmazzák.)

Tartalomjegyzék

[szerkesztés] Csomag telepítése

       emerge <csomagnév> 

[szerkesztés] Csomag eltávolítása

       emerge unmerge <csomagnév> vagy emerge -C <csomagnév> 

[szerkesztés] Csomag keresése

       esearch <név> vagy emerge search <név> vagy eix <név>
       (esearch gyorsabb)
       (eix még gyorsabb; csomag: app-portage/eix)

[szerkesztés] Csomag (telepítés előtti) függőségeinek ellenőrzése

       emerge --pretend <csomagnév> vagy emerge -p <csomagnév> 

[szerkesztés] Csomagra érvényes USE változók kiíratása

       emerge --verbose <csomagnév> vagy emerge -v <csomagnév> 

[szerkesztés] Csomag changelogja

       emerge --changelog <csomagnév> vagy emerge -l <csomagnév> 

[szerkesztés] Bináris csomag készítése a telepítés mellett

       emerge --buildpkg <csomagnév> vagy emerge -b <csomagnév> 

[szerkesztés] Telepített csomagok listája

       qpkg -I 

[szerkesztés] Csomag tartalmának megtekintése

       qpkg <csomagnév> -l 
       etcat files <csomagnév> 

[szerkesztés] Csomaginformációk

       qpkg <csomagnév> -i 

[szerkesztés] Adott file melyik csomaghoz tartozik

       etcat belongs <file> vagy qpkg -l <file> 

[szerkesztés] Adott csomagra támaszkodó (reverse dependency) csomagok

       etcat depends <csomag> 

[szerkesztés] Összes, az adott csomagra támaszkodó (reverse dependency) csomag újrafordítása

       revdep-rebuild <csomagnév> 

[szerkesztés] Portage-fa frissítése

       emerge sync

[szerkesztés] Alaprendszer frissítése

       emerge -U system 

[szerkesztés] Rendszer frissítése

       emerge -U world 

[szerkesztés] Függőségek szemléletesebb megjelenítése world-frissítésnél (portage-2.0.50_pre10 verziótól)

       emerge --pretend --tree --upgrade world


(Forrás: HUP Wiki)

[szerkesztés] Teljes rendszer újrafordítása

Erre olyankor lehet szükség, ha a USE vagy a CFLAGS megváltozik, esetleg új gcc-t telepítettünk, és szeretnénk az abban rejlő optimalizációs többletet kihasználni. A teljes rendszer újrafordítása:

       emerge -e world

Ez viszont nem az igazi például egy új gcc esetén, mert a gcc előtt fordított csomagok továbbra is a régi gcc-vel fordulnak. Jobb az

       emerge gcc; emerge -e system; emerge -e world

megoldás, bár kétségtelen, hogy így lesznek csomagok, amik kétszer (háromszor) fordulnak le. Ha pedig bosszant, hogy ha egy csomag nem fordul le, akkor megszakad az emerge. a következő scriptet tudod használni:

       #!/bin/bash
       
       resume() {
               tail -n 30 /var/log/emerge.log | grep "===" | tail -n 1 >> build_log
               emerge --resume --skipfirst
               if [ $? = "1" ]; then
                       resume
               fi
       }
       
       # Ha új gcc van, akkor kell
       #emerge --oneshot gcc
       
       # Ha először újra kell fordítani a glibc-t (pl. kernel headers váltás)
       #emerge --oneshot glibc
          
       emerge -e system
       if [ $? = "1" ]; then
               resume
       fi
       
       emerge -e world
       if [ $? = "1" ]; then
               resume
       fi
       emerge depclean
       revdep-rebuild

A script a build_log nevű fájlba gyűjti a sikertelenül forduló csomagokat.

Személyes eszközök