Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[portage] Messages lors de la mise à jour
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
morsafr
n00b
n00b


Joined: 11 Jan 2003
Posts: 74
Location: France

PostPosted: Fri Aug 15, 2003 10:05 am    Post subject: [portage] Messages lors de la mise à jour Reply with quote

Salut à tous,

Lorsque je fais une mise à jour du style "emerge -u world", il se peut qu'emerge affiche différents messages pour avertir de manipulations à effectuer après la mise à jour du système. Par exemple, lors de l'install des pilotes nVidia, emerge indique qu'on peut changer la version d'OpenGL pour utiliser celle fournie par nVidia...

Pour être honnête, je dois avouer que je ne reste pas des heures devant mon PC à attendre la fin de la mise à jour. :)

Ma question est donc la suivante : y a t-il un moyen de consulter ces messages après que la mise à jour ait eu lieu ? :?:

:?: Merci d'avance.
Back to top
View user's profile Send private message
Tucs
n00b
n00b


Joined: 24 Sep 2002
Posts: 45

PostPosted: Fri Aug 15, 2003 1:32 pm    Post subject: Reply with quote

normalement tu as les infos dans le .ebuild que tu as "emergé"
Back to top
View user's profile Send private message
morsafr
n00b
n00b


Joined: 11 Jan 2003
Posts: 74
Location: France

PostPosted: Fri Aug 15, 2003 5:41 pm    Post subject: Reply with quote

Ok merci pour l'info :P
Back to top
View user's profile Send private message
DuF
Advocate
Advocate


Joined: 09 Dec 2002
Posts: 2647
Location: Paris

PostPosted: Sat Aug 16, 2003 10:03 am    Post subject: Reply with quote

Et sinon ce serait bien de faire le sujet de ton thread comme tous les autres, de la forme [CLASSE] problème
Back to top
View user's profile Send private message
yaubi
Apprentice
Apprentice


Joined: 15 Jan 2003
Posts: 194
Location: Oxford, UK

PostPosted: Mon Aug 18, 2003 7:57 am    Post subject: Reply with quote

Si ton fichier /etc/make.conf contient une ligne de la forme PORT_LOGDIR=/var/log/portage, chaque installation laissera un fichier d'évènements dans le répertoire indiqué. Dans le cas d'un emerge world, ce n'est pas très pratique.

Une autre solution consiste à utiliser script (packet sys-apps/util-linux) avant ton emerge. Script lance une nouvelle instance de ton shell et enregistre tout ce qui s'y passe. Par défaut, le fichier résultant est ./typescript. On peut sortir de la session script en tapant exit ou avec la combinaison de touches Ctrl+d.

La méthode que j'emploie est de lancer l'emerge dans un screen (packet app-misc/screen)avec l'option -L, qui lui demande de logguer tout ce qui se passe sur l'écran. Le fichier résultant est ./screenlog.0. L'avantage de screen par rapport à script est que s'y tu lances ton emerge à distance et que la connection est perdue (à cause d'une déconnection quotidienne par exemple). L'inconvénient de screen est qu'il redéfinit quelques raccourcis clavier bien pratiques utilisés par readline, comme Ctrl+a par exemple (= revenir au début de la ligne de commande) et qu'il devient alors impossible de remonter dans la console avec Shift+PageUp.

<OFF>
Tant que l'on parle de petits utilitaires de ce genre, laissez-moi vous présenter splitvt (packet app-misc/splitvt). Celui-là permet de découper une console en deux horizontalement, avec possibilité de naviguer entre les deux, de modifier le rapport de taille. C'est très pratique lorsqu'on veut avoir une page de manuel ouverte devant les yeux en même temps qu'un interpréteur de commande.
</OFF>
Back to top
View user's profile Send private message
yuk159
Veteran
Veteran


Joined: 18 Apr 2003
Posts: 1801
Location: noumea ,nouvelle-caledonie

PostPosted: Mon Aug 18, 2003 11:26 am    Post subject: Reply with quote

yaubi wrote:
Une autre solution consiste à utiliser script (packet sys-apps/util-linux) avant ton emerge. Script lance une nouvelle instance de ton shell et enregistre tout ce qui s'y passe. Par défaut, le fichier résultant est ./typescript.

Merci pour l'astuce yaubi je connaissais pas :D
Ya toujours la possibilte de rediger les sorties standards vers des fichiers (d'accord c'est un peut archaique mais c'est tres simple :P)
_________________
The box said: "Requires Windows 98/2000/XP/NT, or better."
So, I installed LINUX!
un blog de plus :)
Back to top
View user's profile Send private message
TGL
Bodhisattva
Bodhisattva


Joined: 02 Jun 2002
Posts: 1978
Location: Rennes, France

PostPosted: Mon Aug 18, 2003 1:53 pm    Post subject: Reply with quote

Thanks Yaubi, bon post.

yaubi wrote:
Si ton fichier /etc/make.conf contient une ligne de la forme PORT_LOGDIR=/var/log/portage, chaque installation laissera un fichier d'évènements dans le répertoire indiqué. Dans le cas d'un emerge world, ce n'est pas très pratique.


Pas tres pratique c'est vrai :
- y'a plein de fichiers, prefixes par des numeros ce qui rend pas la recherche du "bon" fichier tres pratique
- les messages " * un info capitale" contiennent des caracteres d'echappement qui rendent les grep peu pratiques

Du coup, je me suis fait un ch'tit script qui :
- sans arguments, affiche les einfos et autres ewarnings de tous les logs
- avec un argument, affiche juste ceux des paquets dont le nom matche l'argument

Ca donne ca :
Code:
thomas@gromit gentoo $ ./portlog-info baselayout

########## baselayout-1.8.6.10 ##########
 
 * Checking if we need to tweak CONFIG_PROTECT_MASK
 
 * Building utilities...
 
 * Building sysvinit...
 
 * Installing utilities...
 
 * Installing sysvinit...
 
 * Removing invalid backup copies of critical config files...
 
 * Please be sure to update all pending '._cfg*' files in /etc are updated,
 * else things might break at your next reboot!  You can use 'etc-update'
 * to accomplish this:
 
 *   # etc-update
 
 * Please note that /sbin/update-modules moved to /sbin/modules-update
 * for consistency reasons.

Et voila le script ("portlog-info" chez moi) :
Code:
#!/bin/bash

PORTLOGDIR="/var/log/portage"

cd ${PORTLOGDIR}

nocolor() {
   sed -e s:'[^[:print:]]'::g \
       -e s:'\[3.;01m'::g \
       -e s:'\[0m'::g $1
}

for logfile in *$1*
do
   if [ 0 -ne "`nocolor ${logfile} | grep -c "^\ \*\ "`" ]
   then
      echo
      echo -n "########## "
      echo -n ${logfile} | sed -e s:"^[0-9]*-":: -e s:".log$"::
      echo " ##########"
      nocolor ${logfile} | sed -n -e "
      /^\ \*\ /{
      i
      p
      n
      :block
      /^\ \*\ /{
      p
      n
      b block
      }
      }"
   fi
done
En gros, il vire les couleurs des fichiers, trouve ceux qui ont le bon nom et des lignes en " * qqch", et affiche ces lignes en essayant de garder separes les blocs de lignes. C'est ameliorable (on pourrait surement conserver les couleurs), mais bon, la flemme, c'est un peu chaud le sed comme ca la rentree...

<semi-off>
Ah, et puis je devie, mais tant qu'on parle de ce repertoire de logs... Il est pas gerable avec les scripts de rotation de logs classique (multitude de petits fichiers au lieu d'un seul gros fichier), donc moi ce que je fait c'est que je le nettoie avec "tmpreapper". Cf. la derniere ligne de mon "/etc/cron.daily/tmpreaper":
Code:
#!/bin/sh

/usr/sbin/tmpreaper --mtime-dir --symlinks 7d \
    --protect '/tmp/.X*-{lock,unix,unix/*}' \
    --protect '/tmp/.ICE-{unix,unix/*}' \
    /tmp
/usr/sbin/tmpreaper --mtime-dir --symlinks 7d /var/tmp
/usr/sbin/tmpreaper --mtime-dir --symlinks 14d /var/log/portage
(enfin bon, le "clean" de portage vide deja les vieux logs, donc c'est pas indispensable, mais je sais pas, j'aime pas les vieux fichiers moi...)
</semi-off>


<off>
Desole pour les accents, ma touche Compose marche plus, bizarre... flemme de chercher pourquoi.
</off>
Back to top
View user's profile Send private message
yuk159
Veteran
Veteran


Joined: 18 Apr 2003
Posts: 1801
Location: noumea ,nouvelle-caledonie

PostPosted: Mon Aug 18, 2003 5:17 pm    Post subject: Reply with quote

Puree, faudrait carrement le mettre en tips ce thread 8)
_________________
The box said: "Requires Windows 98/2000/XP/NT, or better."
So, I installed LINUX!
un blog de plus :)
Back to top
View user's profile Send private message
TGL
Bodhisattva
Bodhisattva


Joined: 02 Jun 2002
Posts: 1978
Location: Rennes, France

PostPosted: Tue Aug 19, 2003 1:09 pm    Post subject: Reply with quote

Allez, le même, mais qui conserve les couleurs:
Code:
#!/bin/bash
# Usage: "portlog-info [pkg-name]"

PORT_LOGDIR="`sed -n s:^PORT_LOGDIR=::p /etc/make.conf`"
if [ -d "${PORT_LOGDIR}" ]
then
   cd ${PORT_LOGDIR}
else
   echo "PORT_LOGDIR not found."
   exit 1
fi

for logfile in $( ls *$1* 2> /dev/null )
do
   if [ 0 -ne "`cat -v ${logfile} | grep -c "^\ \^\[\[..;01m\*"`" ]
   then
      echo -n "########## "
      echo -n ${logfile} | sed -e s:"^[0-9]*-":: -e s:".log$"::
      echo " ##########"
      sed -n -e "
      /^\ \o033\[..;01m\*/{
      i
      p
      n
      :block
      /^\ \o033\[..;01m\*/{
      p
      n
      b block
      }
      }" ${logfile}
      echo
   fi
done
Back to top
View user's profile Send private message
yuk159
Veteran
Veteran


Joined: 18 Apr 2003
Posts: 1801
Location: noumea ,nouvelle-caledonie

PostPosted: Sun Sep 07, 2003 4:15 pm    Post subject: Reply with quote

Merci encore m'sieur TGL pour ce script je viens encore de m'en servir et c'est tres pratique :mrgreen:
_________________
The box said: "Requires Windows 98/2000/XP/NT, or better."
So, I installed LINUX!
un blog de plus :)
Back to top
View user's profile Send private message
TGL
Bodhisattva
Bodhisattva


Joined: 02 Jun 2002
Posts: 1978
Location: Rennes, France

PostPosted: Sun Sep 07, 2003 4:44 pm    Post subject: Reply with quote

J'ai une version plus complète sur le feu, mais c'est pas pour tout de suite, j'ai peu de temps ces jours ci. Les "features" seront en gros (copy/paste d'une vieille TODO):
Code:
# - des options pour dire quoi afficher:
#   -e, --errors
#   -w, --warnings
#   -i, --infos
#   -p, --portage (les message portage "!!! blabla" et autres)
# (et on prend tout par défaut)
# - match + précis des noms de paquets (et version précise si spécifiée ?)
#   (regexp sur le nom, et '.*' par défaut)
# - option pour dire depuis quand les logs nous intérressent:
#   -s[x][u], --since=[x][u]
#   avec [x] un nombre et [u] une unité (h, d, m, y)
# - option pour accepter les logs monochrome: -m, --monochrome
#   (resultats ? si bon, alors virer option et conserver par défaut)
# - afficher la date du log

Si vous avez d'autres idée, c'est le moment.
Back to top
View user's profile Send private message
yuk159
Veteran
Veteran


Joined: 18 Apr 2003
Posts: 1801
Location: noumea ,nouvelle-caledonie

PostPosted: Mon Sep 08, 2003 5:40 pm    Post subject: Reply with quote

Bin deja t'as pense a plus de choses que moi :lol:
Mais effectivement, le script et deja bien pratique mais la ca deviendrait carrement royal :mrgreen:
_________________
The box said: "Requires Windows 98/2000/XP/NT, or better."
So, I installed LINUX!
un blog de plus :)
Back to top
View user's profile Send private message
TGL
Bodhisattva
Bodhisattva


Joined: 02 Jun 2002
Posts: 1978
Location: Rennes, France

PostPosted: Tue Dec 09, 2003 10:48 am    Post subject: Reply with quote

Voilà donc, après un petit oubli et un salutaire rappel de yuk dans un autre thread, une version plus évoluée du script "portlog-info". Vu qu'il a grossi considérablement, je l'ai mis en téléchargement.
En éspèrant que ce sera effectivement «royal», mais j'ai comme un doute... ;)

PS: il est nul ce nom, "portlog-info", y'a pas qlq'un qui aurait une meilleure idée ?
Back to top
View user's profile Send private message
yuk159
Veteran
Veteran


Joined: 18 Apr 2003
Posts: 1801
Location: noumea ,nouvelle-caledonie

PostPosted: Sat Dec 13, 2003 2:53 pm    Post subject: Reply with quote

Pourquoi pas portlog-tout-court ? :lol:
Merci en tout cas TGL
_________________
The box said: "Requires Windows 98/2000/XP/NT, or better."
So, I installed LINUX!
un blog de plus :)
Back to top
View user's profile Send private message
ercete
Guru
Guru


Joined: 11 Dec 2003
Posts: 426
Location: France, Avignon

PostPosted: Fri Feb 20, 2004 6:17 pm    Post subject: Reply with quote

Bon un ptit up parce qu'on en parle ces temps-ci :)

et pour le nom:
emerlog --bof
emerde --ouais ok :D
logaport ?
_________________
Oh look... is it a stockbroker? Is it a quantity Surveyor? Is it a church warden?
NO! It's Bicycle Repair Man!

jadis raoulchatigré
Back to top
View user's profile Send private message
yoyo
Bodhisattva
Bodhisattva


Joined: 04 Mar 2003
Posts: 4273
Location: Lyon - France

PostPosted: Mon Feb 23, 2004 10:18 am    Post subject: Reply with quote

TGL wrote:
En éspèrant que ce sera effectivement «royal», mais j'ai comme un doute... ;)

J'utilise "portlog-info" depuis quelque temps déja et je le trouve "princier".

Il serait "royal" (:wink:), s'il était possible de spécifier une date (par exemple) comme argument, afin qu'il n'affiche que les logs du dernier "emerge world" par exemple.
_________________
La connaissance s'accroît quand on la partage.
JCB
Back to top
View user's profile Send private message
cylgalad
Veteran
Veteran


Joined: 18 Apr 2003
Posts: 1327
Location: France

PostPosted: Mon Feb 23, 2004 11:42 am    Post subject: Reply with quote

raoulchatigre wrote:
Bon un ptit up parce qu'on en parle ces temps-ci :)

et pour le nom:
emerlog --bof
emerde --ouais ok :D
logaport ?

emerde, il y a déjà un truc qui s'appelle comme ça :
http://emerde.freaknet.org/ en gros c'est portage pour slackware :lol:
Sinon portlog-info, très pratique (un peu lent toutefois ;) )
Back to top
View user's profile Send private message
TGL
Bodhisattva
Bodhisattva


Joined: 02 Jun 2002
Posts: 1978
Location: Rennes, France

PostPosted: Mon Feb 23, 2004 12:29 pm    Post subject: Reply with quote

yoyo wrote:
Il serait "royal" (:wink:), s'il était possible de spécifier une date (par exemple) comme argument, afin qu'il n'affiche que les logs du dernier "emerge world" par exemple.

Le --since (-s) ne fait pas l'affaire pour ça ? Moi je fait généralement des "-s1d" par exemple pour voir ce qui s'est fait dans la journée. Je vois pas exactement ce que tu voudrais, si tu peux détailler, je suis preneur. Mais bon, ce qu'il faudrait vraiment c'est exploiter le emerge.log aussi, ça permettrai par exemple d'avoir une option --last qui donne juste les infos relatives au dernier appel d'emerge, des trucs comme ça. Ce qui m'embête, c'est que ça va commencer à faire un truc compliqué pour du bash, faudrait que je le refasse en python. Enfin, un soir de désoeuvrement, pourquoi pas... Ah ouais, et puis si, y'a le problème que le emerge.log moi je le logrotate, et je suis probablement pas le seul. Comme logrotate est un peu crétin et fait les rotations sur des fichiers complets au lieu de les faire sur des demi-fichiers (ce qui assurerait qu'on a toujours du log à se mettre sous la dent), il faudrait que je feinte en allant aussi chercher dans le emerge.log.1.gz quand il existe, ou qqch comme ça.


Sinon, pour le nom, j'aimais bien "emerde" (j'ai passé le WE avec le dévelopeur de la "libcaca", ça influence...), c'est dommage que ce soit déjà pris ça. Je piocherai dans vos autres suggestions pour la prochaine release (quand y'en aura une...). Peut être qu'un truc commençant par "e" serait bien, vu que c'est +/- la convention pour les utilitaires gentoo. "elog" serait peut-être le nom le plus logique en fait, mais c'est un peu bateau...
Back to top
View user's profile Send private message
yoyo
Bodhisattva
Bodhisattva


Joined: 04 Mar 2003
Posts: 4273
Location: Lyon - France

PostPosted: Mon Feb 23, 2004 12:53 pm    Post subject: Reply with quote

TGL wrote:
Le --since (-s) ne fait pas l'affaire pour ça ? Moi je fait généralement des "-s1d" par exemple pour voir ce qui s'est fait dans la journée. Je vois pas exactement ce que tu voudrais, si tu peux détailler, je suis preneur.
Ça, c'est déja excellent, c'est clair ... En fait, ce que je souhaiterai, c'est afficher les logs d'une date précise (pas forcément les derniers).
Je sais, c'est du chippotage alors ne te prends pas la tête pour ça (il est déja excellent comme ça ton soft) !!!

Sinon, pour le nom, tu peux jouer sur l'othographe et l'appeler "emmerde" mais comme c'est un soft qui permet justement de les éviter en accédant aux logs qu'on ne regarde pas forcément pendant l'emerge, j'aurais plutôt pensé à quelque chose du style "emmerde-free". :mrgreen:
_________________
La connaissance s'accroît quand on la partage.
JCB
Back to top
View user's profile Send private message
Mickael
Advocate
Advocate


Joined: 05 Sep 2005
Posts: 2383
Location: ~Belfort! - France - EU

PostPosted: Wed Dec 07, 2005 12:31 pm    Post subject: Reply with quote

Salut,

j'ai une petite question de débutant.
Dans le script de TGL on retrouve la ligne de code faisant référence à PORT_LOGDIR dans le fichier /etc/make.conf.

Ma question est:
Doit-on remplacer dans le script la ligne suivante:
Code:

# Change this if you want to force PORT_LOGDIR
PORT_LOGDIR="$(/usr/lib/portage/bin/portageq envvar PORT_LOGDIR)"


par:
Code:

 PORT_LOGDIR=/var/log/portage


ou par:
Code:

PORT_LOGDIR="`sed -n s:^PORT_LOGDIR=::p /etc/make.conf`"


Voilà. Question qui peut vous paraître stupide mais je n'ai jamais écrit de script bash.

Merci

EDIT1: @TGL Je viens de tester et..... C'EST tout simplement EXCELLENT!!!!!!!!

EDIT2:@TGL Juste une remarque: je n'ai rien touché.


Last edited by Mickael on Wed Dec 07, 2005 5:33 pm; edited 2 times in total
Back to top
View user's profile Send private message
TGL
Bodhisattva
Bodhisattva


Joined: 02 Jun 2002
Posts: 1978
Location: Rennes, France

PostPosted: Wed Dec 07, 2005 12:57 pm    Post subject: Reply with quote

MickTux wrote:
Doit-on remplacer dans le script la ligne suivante:
Code:
# Change this if you want to force PORT_LOGDIR
PORT_LOGDIR="$(/usr/lib/portage/bin/portageq envvar PORT_LOGDIR)"

Bah en fait en principe y'a pas besoin de la remplacer par quoi que ce soit.
Essaye donc ça dans ta ligne de commande :
Code:
 % /usr/lib/portage/bin/portageq envvar PORT_LOGDIR
Si ça marche, c'est à dire si ça te renvoie un truc du genre /var/log/portage, alors touche à rien, tu es bon.

Si ça ne marche pas, alors c'est dans ton /etc/make.conf que tu as du changement à faire : là, il faut que tu ajoutes la définition du répertoire de log, genre :
Code:
PORT_LOGDIR=/var/log/portage

Et après vérifie si la commande précédente (portageq) fonctionne.
Back to top
View user's profile Send private message
p0uLp3
n00b
n00b


Joined: 26 May 2005
Posts: 14
Location: /dev/proc

PostPosted: Thu Dec 08, 2005 7:01 am    Post subject: Reply with quote

lu,

je crois que enotice fait le meme boulot mais en loggant juste les messages interessants:

http://www.gentoo.org/news/fr/gwn/20050801-newsletter.xml

(section 7)
++
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum