Chaque fois que j'essaie d'utiliser dpkg
ou apt-get
, j'obtiens l'avertissement suivant:
dpkg: warning: parsing file '/var/lib/dpkg/available' near line 12674 package 'jarnal':
error in Version string 'build901': version number does not start with digit
En regardant le fichier /var/lib/dpkg/available
, je trouve l’entrée
Package: jarnal
Priority: optional
Section: non-free
Maintainer: David K. Levine <[email protected]>
Architecture: all
Version: build901
Depends: Sun-Java5-jre | Sun-Java6-jre
Recommends: Sun-jai, Sun-jai-imageio
Size: 11217466
Description: a Java Notetaker and PDF Annotator... <snip>
qui correspond au fichier /DEBIAN/control
dans jarnal-build918_all.deb . J'ai installé ce paquet il y a environ un an (avant de passer à 11.04), mais je ne peux pas le supprimer en utilisant apt ou dpkg ou diverses interfaces.
locate
trouve les fichiers installés dans /usr/lib/jarnal/
, mais cela semble incomplet - je pense que la désinstallation a échoué - puisque je me souviens de l'avoir déjà utilisée, elle a donc dû être correctement installée à un moment donné.
Quoi qu'il en soit, comment puis-je supprimer proprement les fichiers et les données stockées par apt/dpkg de mon système?
Vous pouvez sauvegarder le fichier available
puis le vider (laissez-le là, mais vide).
apt-get
n'a pas du tout besoin du fichier, dpkg
l'utilise parfois à des fins de référence, mais ce n'est pas indispensable et il sera rempli à nouveau après un certain temps.
Une autre option serait de supprimer manuellement l'entrée problématique jarnal
du fichier available
.
Modifiez /var/lib/dpkg/available
et /var/lib/dpkg/status
pour remplacer la ligne Version:
du package jarnal
par quelque chose que dpkg aime, tel que 0build901
.
S'il n'y a aucune entrée dans le fichier status
, le paquet n'est par définition pas installé. Il est possible que la désinstallation ait échoué et que vous n'ayez pas terminé le nettoyage correctement. vérifie s'il y a des fichiers /var/lib/dpkg/info/jarnal.*
. Si le paquet est installé, il devrait y avoir un fichier jarnal.list
avec la liste des fichiers fournis avec le paquet. Si vous supprimez manuellement un paquet mal formé, vous n'avez pas à vous soucier des autres fichiers de /var/lib/dpkg/info
.
S'il s'agit de packages non installés, exécutez simplement Sudo dpkg --clear-avail
(à la suite de this )