Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Webcalendar ne s'enlève plus.

17 réponses
Avatar
Guillaume Yziquel
Bon soir à tous.

J'ai essayé d'installer webcalendar il y a quelques temps, et je n'avais
pas de base de données installée à l'époque. L'installation ne s'est
donc pas passée correctement.

Je cherche maintenant à désinstaller cela, et lorsque je tente cela,
j'obtiens l'erreur suivante:

> yziquel@seldon:~$ aptitude
> Password:
> (Lecture de la base de données... 169206 fichiers et répertoires déjà installés.)
> Suppression de webcalendar ...
> yziquel: Dans /var/lib/dpkg/info/webcalendar.prerm. Going to call dbc_go in /usr/share/dbconfig-common/dpkg/prerm
> dpkg : erreur de traitement de webcalendar (--purge) :
> le sous-processus pre-removal script a retourné une erreur de sortie d'état 10
> Des erreurs ont été rencontrées pendant l'exécution :
> webcalendar
> E: Sub-process /usr/bin/dpkg returned an error code (1)
> Échec de l'installation d'un paquet. Tentative de réparation :
> Appuyez sur Entrée pour continuer.

Il me semble que debconf réagit assez mal.

Pourriez-vous m'aider à vous aider m'aider résoudre cela? Ce serait bien
sympathique.

Bien à vous,

Guillaume Yziquel.


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to debian-user-french-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

7 réponses

1 2
Avatar
Stephane List
Humm, ca m'a l'air bien.
Moi j'ajoute "set -x" en haut de mes scripts, mais bashdb me semble plus
puissant.

Steph

Jean-Yves F. Barbier a écrit :
pas en natif, mais il existe des choses comme ça:

http://bashdb.sourceforge.net/bashdb.html

Guillaume Yziquel wrote:
Jean-Yves F. Barbier a écrit :
Jean-Yves F. Barbier wrote:
bon, ben reste une solt pas très propre: modifier le script pour qu'il
renvoie systématiquement la bonne valeur (saipu si c'est -1,0 ou 1);





J'aimerais savoir s'il y a un moyen aisé de suivre pas à pas l'exécution
de ce script. J'aimerais bien voir où cela ne fonctionne pas bien.

Guillaume Yziquel.










--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Jean-Yves F. Barbier
Stephane List wrote:
Humm, ca m'a l'air bien.
Moi j'ajoute "set -x" en haut de mes scripts, mais bashdb me semble plus
puissant.

Steph



vi, il est pas mal du tout, surtout quand le script est complexe

--
I will not say that women have no character; rather, they have a new
one every day.
-- Heine


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Guillaume Yziquel
Guillaume Yziquel a écrit :
Jean-Yves F. Barbier a écrit :
pas en natif, mais il existe des choses comme ça:

http://bashdb.sourceforge.net/bashdb.html



Merci beaucoup. Je l'ai installé. Je vais voir ce qu'il en retourne.



Humm.... je connais pas vraiment les débogueurs, et je dois avouer que
la documentation de bashb

http://bashdb.sourceforge.net/bashdb.html

n'est pas tout à fait à mon goût.

Ma session bashd est reproduite plus bas. J'ai pas vraiment compris
comment rentrer dans le fichier sourcé

. /usr/share/debconf/confmodule



et j'ai pas bien compris si la bête qui renvoie le code d'erreur 10 est
/usr/share/debconf/confmodule ou bien une autre bête comme
/usr/share/dbconfig-common/dpkg/prerm.

Mais bon, j'espère progresser...

Guillaume.

:~$ bashdb /var/lib/dpkg/info/webcalendar.prerm
Bourne-Again Shell Debugger, release bash-3.1-0.06
Copyright 2002, 2003, 2004, 2006 Rocky Bernstein
This is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.

(/var/lib/dpkg/info/webcalendar.prerm:3):
3: set -e
bashdb<0> -
1: #!/bin/sh
2:
3:==>set -e
bashdb<1> list
4:
5: . /usr/share/debconf/confmodule
6: . /usr/share/dbconfig-common/dpkg/prerm
7: dbc_go webcalendar $@
8:
9:
bashdb<2> step
(/var/lib/dpkg/info/webcalendar.prerm:5):
5: . /usr/share/debconf/confmodule
bashdb<3> list
5:==>. /usr/share/debconf/confmodule
6: . /usr/share/dbconfig-common/dpkg/prerm
7: dbc_go webcalendar $@
8:
9:
Debugged program terminated with code 10. Use q to quit or R to restart.
bashdb<4> q
:~$




--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Jean-Yves F. Barbier
Guillaume Yziquel wrote:
Guillaume Yziquel a écrit :
Jean-Yves F. Barbier a écrit :
pas en natif, mais il existe des choses comme ça:

http://bashdb.sourceforge.net/bashdb.html


Merci beaucoup. Je l'ai installé. Je vais voir ce qu'il en retourne.



Humm.... je connais pas vraiment les débogueurs, et je dois avouer qu e
la documentation de bashb

http://bashdb.sourceforge.net/bashdb.html

n'est pas tout à fait à mon goût.

Ma session bashd est reproduite plus bas. J'ai pas vraiment compris
comment rentrer dans le fichier sourcé

. /usr/share/debconf/confmodule





là, j'aurais du mal à t'aider parce que je viens de me rendre compte que les
scripts d'appel (.preinst, .prerm, etc) sont en bash, mais que ceux de De bian
sont en Perl, ça ne facilite pas la chose et je suis Tloin d'être un
spécialiste de Perl

et j'ai pas bien compris si la bête qui renvoie le code d'erreur 10 e st
/usr/share/debconf/confmodule ou bien une autre bête comme
/usr/share/dbconfig-common/dpkg/prerm.



difficile: je n'ai aucun DIR .../dbconfig-common en sid (ln#6)
[Tiens, et d'ailleurs pas en Etch non plus !!!]
mais le code d'erreur vient toujours du dernier exécuté; donc soit c' est
lui qui a un PB, soit les résultats (passage de parms, ou récup' de v ariables
d'environnement) qu'il a reçu sont erronées

Mais bon, j'espère progresser...

Guillaume.



Si mes souvenirs sont bons, '@' représente une liste d'arguments; donc
/usr/share/debconf/confmodule campe le tableau en préparant les variabl es,
reste à savoir ce que fait le 2nd (ln#6); et en dernier vient un appel
(dbc_go webcalendar) qui, logiquement, devrait correspondre à une extra ction
de la base de données des noms de fichiers à supprimer.

Donc l'erreur est retournée pas cette fonction, donc, comme on ne peut pas
la suspecter de merdouiller, c'est qu'elle reçoit une mauvaise liste en
paramètre.

C'est comme ça que j'analyse la chose, mais il n'est pas certain que mo n
raisonnement soit le bon.

tu peux essayer de trouver un package qui ait le même style de .prerm
pour comparer et voir ce qu'il pourrait manquer.

:~$ bashdb /var/lib/dpkg/info/webcalendar.prerm
Bourne-Again Shell Debugger, release bash-3.1-0.06
Copyright 2002, 2003, 2004, 2006 Rocky Bernstein
This is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain cond itions.

(/var/lib/dpkg/info/webcalendar.prerm:3):
3: set -e
bashdb<0> -
1: #!/bin/sh
2:
3:==>set -e
bashdb<1> list
4:
5: . /usr/share/debconf/confmodule
6: . /usr/share/dbconfig-common/dpkg/prerm
7: dbc_go webcalendar $@
8:
9:
bashdb<2> step
(/var/lib/dpkg/info/webcalendar.prerm:5):
5: . /usr/share/debconf/confmodule
bashdb<3> list
5:==>. /usr/share/debconf/confmodule
6: . /usr/share/dbconfig-common/dpkg/prerm
7: dbc_go webcalendar $@
8:
9:
Debugged program terminated with code 10. Use q to quit or R to restar t.
bashdb<4> q
:~$






--
BOFH excuse #196:

Me no internet, only janitor, me just wax floors.
Avatar
Guillaume Yziquel
Jean-Yves F. Barbier a écrit :
Guillaume Yziquel wrote:

Ma session bashd est reproduite plus bas. J'ai pas vraiment compris
comment rentrer dans le fichier sourcé

. /usr/share/debconf/confmodule





là, j'aurais du mal à t'aider parce que je viens de me rendre compte que
les scripts d'appel (.preinst, .prerm, etc) sont en bash, mais que ceux de
Debian sont en Perl, ça ne facilite pas la chose et je suis Tloin d'être un
spécialiste de Perl



Le scripts .prerm sont en Perl dans Debian? Pour ma part, je ny vois que
du shell.

et j'ai pas bien compris si la bête qui renvoie le code d'erreur 10 est
/usr/share/debconf/confmodule ou bien une autre bête comme
/usr/share/dbconfig-common/dpkg/prerm.



difficile: je n'ai aucun DIR .../dbconfig-common en sid (ln#6)
[Tiens, et d'ailleurs pas en Etch non plus !!!]



Je crois que dbconfig est quelque chose qui a trait à la configuration
de bases de données. webcalendar utilise des bases de données, et
utilise donc dbconfig-common.

http://packages.debian.org/unstable/admin/dbconfig-common

mais le code d'erreur vient toujours du dernier exécuté; donc soit c'est
lui qui a un PB, soit les résultats (passage de parms, ou récup' de
variables d'environnement) qu'il a reçu sont erronées



Donc à priori, c'est l'appel à debconf/confmodule qui merdouille.

Si mes souvenirs sont bons, '@' représente une liste d'arguments; donc
/usr/share/debconf/confmodule campe le tableau en préparant les variables,
reste à savoir ce que fait le 2nd (ln#6); et en dernier vient un appel
(dbc_go webcalendar) qui, logiquement, devrait correspondre à une
extraction de la base de données des noms de fichiers à supprimer.



J'aimerais bien pouvoir suivre ce script... au sein de ma session bashdb.

Donc l'erreur est retournée pas cette fonction, donc, comme on ne peut pas
la suspecter de merdouiller, c'est qu'elle reçoit une mauvaise liste en
paramètre.

C'est comme ça que j'analyse la chose, mais il n'est pas certain que mon
raisonnement soit le bon.



À priori, cela a l'air d'être raisonnable comme explication.

tu peux essayer de trouver un package qui ait le même style de .prerm
pour comparer et voir ce qu'il pourrait manquer.



Je vais tenter.

Merci pour ton aide précieuse.

Guillaume Yziquel.


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Guillaume Yziquel
Guillaume Yziquel a écrit :
Jean-Yves F. Barbier a écrit :

Guillaume Yziquel wrote:

Si mes souvenirs sont bons, '@' représente une liste d'arguments; donc
/usr/share/debconf/confmodule campe le tableau en préparant les variables,
reste à savoir ce que fait le 2nd (ln#6); et en dernier vient un appel
(dbc_go webcalendar) qui, logiquement, devrait correspondre à une
extraction de la base de données des noms de fichiers à supprimer.



J'aimerais bien pouvoir suivre ce script... au sein de ma session bashdb.



Bon. Ben, je me suis résigné à insérer manuellement le fichier sourcé.
Et j'ai lancé bashdb:

:~/Desktop$ bashdb webcalendar.prerm
Bourne-Again Shell Debugger, release bash-3.1-0.06
Copyright 2002, 2003, 2004, 2006 Rocky Bernstein
This is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.

(/home/yziquel/Desktop/webcalendar.prerm:3):
3: set -e
bashdb<0> -
1: #!/bin/sh
2:
3:==>set -e
bashdb<1> step
(/home/yziquel/Desktop/webcalendar.prerm:15):
15: if [ ! "$DEBIAN_HAS_FRONTEND" ]; then
bashdb<2> -
6:
7: #!/bin/sh
8: # This is a shell library to interface to the Debian configuration management
9: # system.
10:
11: ###############################################################################
12: # Initialization.
13:
14: # Check to see if a FrontEnd is running.
15:==>if [ ! "$DEBIAN_HAS_FRONTEND" ]; then
Debugged program terminated with code 10. Use q to quit or R to restart.
bashdb<3>



Ben ça plante bien vite, tout ça! Et je sais pas trop où aller chercher
l'information de ce que signifie ce code d'erreur. S'agit-il de "if" ou
de "["?

Guillaume Yziquel.


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Guillaume Yziquel
Guillaume Yziquel a écrit :
Guillaume Yziquel a écrit :

Bon. Ben, je me suis résigné à insérer manuellement le fichier sourcé.
Et j'ai lancé bashdb:

:~/Desktop$ bashdb webcalendar.prerm
[...]
15:==>if [ ! "$DEBIAN_HAS_FRONTEND" ]; then
Debugged program terminated with code 10. Use q to quit or R to restart.
bashdb<3>



Ben ça plante bien vite, tout ça! Et je sais pas trop où aller chercher
l'information de ce que signifie ce code d'erreur. S'agit-il de "if" ou
de "["?



Concernant le code d'erreur, il me semble, d'après le "Shell and
Utilities volume (XCU)" de la "Version 3 of the Single UNIX Specification",

http://www.unix.org/version3/online.html

que

The if Conditional Construct

The if command shall execute a compound-list and use its exit status to determine whether to execute another compound-list.

The format for the if construct is as follows:

if compound-listthen
compound-list[elif compound-listthen
compound-list] ...
[else
compound-list]


fi

The if compound-list shall be executed; if its exit status is zero, the then compound-list shall be executed and the command shall complete. Otherwise, each elif compound-list shall be executed, in turn, and if its exit status is zero, the then compound-list shall be executed and the command shall complete. Otherwise, the else compound-list shall be executed.
Exit Status

The exit status of the if command shall be the exit status of the then or else compound-list that was executed, or zero, if none was executed.



De plus, l'option -X de bashdb permet de tracer ligne à ligne
l'exécution, et on obtient un message d'erreur un peu plus parlant:

:~/Desktop$ bashdb -X webcalendar.prerm
Bourne-Again Shell Debugger, release bash-3.1-0.06
Copyright 2002, 2003, 2004, 2006 Rocky Bernstein
This is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.

(/usr/bin/bashdb:272):
level 1, subshell 0, depth -1: . $_source_file
(/home/yziquel/Desktop/webcalendar.prerm:3):
level 1, subshell 0, depth 0: set -e
(/home/yziquel/Desktop/webcalendar.prerm:15):
level 1, subshell 0, depth 0: if [ ! "$DEBIAN_HAS_FRONTEND" ]; then
(/home/yziquel/Desktop/webcalendar.prerm:16):
level 1, subshell 0, depth 0: PERL_DL_NONLAZY=1
(/home/yziquel/Desktop/webcalendar.prerm:17):
level 1, subshell 0, depth 0: export PERL_DL_NONLAZY
(/home/yziquel/Desktop/webcalendar.prerm:20):
level 1, subshell 0, depth 0: if [ "$DEBCONF_USE_CDEBCONF" ]; then
(/home/yziquel/Desktop/webcalendar.prerm:23):
level 1, subshell 0, depth 0: exec /usr/share/debconf/frontend $0 "$@"
debconf: DbDriver "passwords" warning: could not open /var/cache/debconf/passwords.dat: Permission non accordée
:~/Desktop$



Ouais. De toute façon, ce genre de script doit s'exécuter en root, non?

Le message suivant, qui apparaît avec la manipulation à la fin semble se
rapprocher du problème.

sanity check failed for dbc_command.
error encountered determining package or command:
dbconfig-common can not determine the maintainer script running it.



Ceci semble bien rejoindre ce que Jean-Yves Barbier disait:

mais le code d'erreur vient toujours du dernier exécuté; donc soit c'est
lui qui a un PB, soit les résultats (passage de parms, ou récup' de variables
d'environnement) qu'il a reçu sont erronées



La manipulation:

:~$ su -
Password:
seldon:~# bashdb -X /var/lib/dpkg/info/webcalendar.prerm
Bourne-Again Shell Debugger, release bash-3.1-0.06
Copyright 2002, 2003, 2004, 2006 Rocky Bernstein
This is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.

(/usr/bin/bashdb:272):
level 1, subshell 0, depth -1: . $_source_file
(/var/lib/dpkg/info/webcalendar.prerm:3):
level 1, subshell 0, depth 0: set -e
(/var/lib/dpkg/info/webcalendar.prerm:5):
level 1, subshell 0, depth 0: . /usr/share/debconf/confmodule



Puis:

seldon:~# /var/lib/dpkg/info/webcalendar.prerm
sanity check failed for dbc_command.
error encountered determining package or command:
dbconfig-common can not determine the maintainer script running it.



Et enfin:

seldon:~# logout
:~$ cd Desktop/
:~/Desktop$ su
Password:
seldon:/home/yziquel/Desktop# bashdb -X webcalendar.prerm
Bourne-Again Shell Debugger, release bash-3.1-0.06
Copyright 2002, 2003, 2004, 2006 Rocky Bernstein
This is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.

(/usr/bin/bashdb:272):
level 1, subshell 0, depth -1: . $_source_file
(/home/yziquel/Desktop/webcalendar.prerm:3):
level 1, subshell 0, depth 0: set -e
(/home/yziquel/Desktop/webcalendar.prerm:15):
level 1, subshell 0, depth 0: if [ ! "$DEBIAN_HAS_FRONTEND" ]; then
(/home/yziquel/Desktop/webcalendar.prerm:16):
level 1, subshell 0, depth 0: PERL_DL_NONLAZY=1
(/home/yziquel/Desktop/webcalendar.prerm:17):
level 1, subshell 0, depth 0: export PERL_DL_NONLAZY
(/home/yziquel/Desktop/webcalendar.prerm:20):
level 1, subshell 0, depth 0: if [ "$DEBCONF_USE_CDEBCONF" ]; then
(/home/yziquel/Desktop/webcalendar.prerm:23):
level 1, subshell 0, depth 0: exec /usr/share/debconf/frontend $0 "$@"
seldon:/home/yziquel/Desktop#



Bon. À creuser. /usr/share/debconf/frontend est bien un fichier en
Perl... Encore de la documentation à lire en perspective...

Merci pour vos indications instructives.

Guillaume Yziquel.


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
1 2