Portage-Output bewältigen
Aus Gentoo Linux Wiki
Inhaltsverzeichnis |
[Bearbeiten] Einleitung
Der Emerge-Vorgang ist langweilig. Soweit, so gut. Dennoch kommt es vor, dass wichtige Meldungen an uns vorbeiscrollen, während wir auf das Terminal starren. Daher ist es wichtig, den Überblick zu behalten. Doch wie soll man den Output von Portage überhaupt so schnell lesen? Zur Problembewältigung bieten sich folgende Möglichkeiten.
[Bearbeiten] Portage-Output nur lesen
[Bearbeiten] Scrolling per Tastenkombination
Im Terminal und auch in der Console lässt sich mittels [Shift][PgUp] bzw. [Shift][PgDn] die Anzeige durchforsten. So lassen sich auf einfache Weise bereits entschwundendene Meldungen nachvollziehen, vorausgesetzt, sie sind noch nicht zu weit im Zeilenspeicher nach hinten gerutscht. Der Zeilenspeicher lässt sich bei den meisten Terminals mit einer Option regeln, bei xterm z.B.
xterm -sl [zeilen]
Der Standard-Wert von XTerm liegt bei 64, auf meinem Gentoo-System ist er jedoch bereits auf 1024 vorkonfiguriert, und zwar mittels einer Resourcen-Definition in /etc/X11/app-defaults/XTerm
nano -w /etc/X11/app-defaults/XTerm
Die betreffende Option ist:
*saveLines: 1024
Die gleiche Resource dürfte auch in ~/.Xdefaults wählbar sein. Im VT ([Strg][Alt][Fx]) ist die Konfiguration des Zeilenspeichers ein bisschen trickreicher. Dank eines findigen Menschen ist mir die Lösung des Kernelparameters bekannt, den man in der Konfigurationsdatei seines Bootmanagers eintragen sollte:
nano -w /etc/lilo.conf
Als Zusatzparameter beim gewählten Kernel:
image=/boot/vmlinuz-2.6.16.1 label=Gentoo read-only optional append="video=scrollback:255K"
/sbin/lilo
[Bearbeiten] Weniger-Pfeife
Mittels einer einfachen Less-Pipe lässt sich ebenfalls viel erreichen.
emerge [package] | less
So wird das automatische Scrollen durch das manuelle (per [Up]/[Down] z.B.) ersetzt.
[Bearbeiten] Portage-Output gezielt durchsuchen
[Bearbeiten] Wichtige Meldungen herausfiltern
Die wahrscheinlich einfachste Methode, um die umfangreichen Portage- und Compiler-Meldungen auf ein geringes Maß zu reduzieren, ist die Suche nach Textmustern mittels grep. So lassen sich beispielsweise nur die Zeilen anzeigen, die einen Sternchen * enthalten, also solche, die Portage für wichtig und lesenswert erachtet.
emerge [package] | grep '*'
Möchte man z.B. nur alle Perl Bibliotheken und Programme updaten, oder komplexere reguläre Ausdrücke zum Filtern verwenden, so eignet sich auch die Suche nach Textmustern mittels Perl's Regulärer Ausdrücke.
emerge --newuse -uDp world | perl -wne 'system("emerge -u $1") if /\] (dev-perl[^(\d\.\d\.?\d)?]*)-/'
[Bearbeiten] Portage-Log einschalten
Die standardmäßig deaktivierte Protokollfunktion von Portage lässt sich mittels einer Option in /etc/make.conf einstellen. So erhält man die volle Kontrolle über die Portageausgaben und kann beliebige Analysen anwenden.
mkdir /var/log/portage echo "PORT_LOGDIR=\"/var/log/portage\"" >> /etc/make.conf
