Bonjour à tous,
Après avoir fait un aptitude pour un paquet j'ai eu une succession d'erreurs car je n'avais plus d'espace dispo, j'ai agrandi ma partition et voilà les messages que j'obtiens lors de:
apt-get install
apt-get upgrade
aptitude update
....
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Erreur !
E: Erreur de lecture - read (21 est un répertoire)
E: Erreur de lecture - read (21 est un répertoire)
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Erreur !
Lecture de l'information d'état étendu
Initialisation de l'état des paquets... Erreur !
E: Erreur de lecture - read (21 est un répertoire)
E: Erreur de lecture - read (21 est un répertoire)
Merci d'avance pour votre aide. :-)
Pour info:
ls -l /etc/apt/
total 30
drwxr-xr-x 2 root root 4096 aoû 4 11:05 apt.conf.d
-rw------- 1 root root 0 jui 26 09:58 secring.gpg
-rw-r--r-- 1 root root 99 aoû 13 16:26 sources.list
drwxr-xr-x 2 root root 4096 jui 28 14:26 sources.list.d
-rw------- 1 root root 1200 jui 26 09:58 trustdb.gpg
-rw------- 1 root root 7012 jui 28 14:26 trusted.gpg
-rw------- 1 root root 5801 jui 26 09:58 trusted.gpg~
cat /etc/apt/sources.list
deb http://ftp.fr.debian.org/debian/ lenny main
deb http://security.debian.org/ lenny/updates main
ps: je n'ai rien touché dans le dossier /etc/apt/
ps2: je suis sous DEBIAN LIVE (clef usb) mais cela ne change rien :-)
Plus d'infos avec un find / -name 21
/live/cow/var/lib/scrollkeeper/TOC/21
/live/cow/var/lib/scrollkeeper/index/21
/var/lib/scrollkeeper/TOC/21
/var/lib/scrollkeeper/index/21
/proc/irq/21
/proc/3851/task/3851/fd/21
/proc/3851/task/3851/fdinfo/21
/proc/3851/fd/21
/proc/3851/fdinfo/21
/proc/3940/task/3940/fd/21
/proc/3940/task/3940/fdinfo/21
/proc/3940/fd/21
/proc/3940/fdinfo/21
/proc/4005/task/4005/fd/21
/proc/4005/task/4005/fdinfo/21
/proc/4005/fd/21
/proc/4005/fdinfo/21
/proc/4150/task/4150/fd/21
/proc/4150/task/4150/fdinfo/21
/proc/4150/fd/21
/proc/4150/fdinfo/21
/proc/4152/task/4152/fd/21
/proc/4152/task/4152/fdinfo/21
/proc/4152/fd/21
/proc/4152/fdinfo/21
/proc/4153/task/4153/fd/21
/proc/4153/task/4153/fdinfo/21
/proc/4153/task/4212/fd/21
/proc/4153/task/4212/fdinfo/21
/proc/4153/fd/21
/proc/4153/fdinfo/21
/proc/4229/task/4229/fd/21
/proc/4229/task/4229/fdinfo/21
/proc/4229/fd/21
/proc/4229/fdinfo/21
/proc/4231/task/4231/fd/21
/proc/4231/task/4231/fdinfo/21
/proc/4231/fd/21
/proc/4231/fdinfo/21
/proc/4384/task/4384/fd/21
/proc/4384/task/4384/fdinfo/21
/proc/4384/task/4388/fd/21
/proc/4384/task/4388/fdinfo/21
/proc/4384/fd/21
/proc/4384/fdinfo/21
Ensuite un strace :
strace -e trace=file -o /tmp/sortie apt-get update
execve("/usr/bin/apt-get", ["apt-get", "upgrade"], [/* 21 vars */]) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/usr/lib/libapt-pkg-libc6.7-6.so.4.6", O_RDONLY) = 3
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/i686/cmov/libutil.so.1", O_RDONLY) = 3
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/usr/lib/libstdc++.so.6", O_RDONLY) = 3
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/i686/cmov/libm.so.6", O_RDONLY) = 3
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/libgcc_s.so.1", O_RDONLY) = 3
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/i686/cmov/libc.so.6", O_RDONLY) = 3
open("/dev/null", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 3
open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = 4
stat64("/var/lib/apt/.", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat64("/etc/apt/apt.conf.d/", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
open("/etc/apt/apt.conf.d/", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 4
stat64("/etc/apt/apt.conf.d/01autoremove", {st_mode=S_IFREG|0644, st_size=92, ...}) = 0
stat64("/etc/apt/apt.conf.d/70debconf", {st_mode=S_IFREG|0644, st_size=182, ...}) = 0
open("/etc/apt/apt.conf.d/01autoremove", O_RDONLY|O_LARGEFILE) = 4
open("/etc/apt/apt.conf.d/70debconf", O_RDONLY|O_LARGEFILE) = 4
stat64("/etc/apt/apt.conf", 0xbfffc5c4) = -1 ENOENT (No such file or directory)
stat64("/var/lib/dpkg/status", {st_mode=S_IFREG|0644, st_size=820487, ...}) = 0
stat64("/usr/bin/dpkg", {st_mode=S_IFREG|0755, st_size=365324, ...}) = 0
stat64("/etc/debian_version", {st_mode=S_IFREG|0644, st_size=6, ...}) = 0
open("/var/lib/dpkg/lock", O_RDWR|O_CREAT|O_NOFOLLOW, 0640) = 4
open("/var/lib/dpkg/updates/", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 5
stat64("/etc/apt/sources.list", {st_mode=S_IFREG|0644, st_size=99, ...}) = 0
open("/etc/apt/sources.list", O_RDONLY|O_LARGEFILE) = 5
stat64("/etc/apt/sources.list.d/", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
open("/etc/apt/sources.list.d/", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 5
stat64("/etc/apt/sources.list.d/google-chrome.list", {st_mode=S_IFREG|0644, st_size=169, ...}) = 0
open("/etc/apt/sources.list.d/google-chrome.list", O_RDONLY|O_LARGEFILE) = 5
stat64("/var/lib/apt/lists/ftp.fr.debian.org_debian_dists_lenny_Release.gpg", {st_mode=S_IFREG|0644, st_size=1033, ...}) = 0
stat64("/var/lib/apt/lists/security.debian.org_dists_lenny_updates_Release.gpg", {st_mode=S_IFREG|0644, st_size=835, ...}) = 0
stat64("/var/lib/apt/lists/dl.google.com_linux_deb_dists_stable_Release.gpg", {st_mode=S_IFREG|0644, st_size=191, ...}) = 0
access("/var/cache/apt/", W_OK) = 0
open("/usr/share/locale/locale.alias", O_RDONLY) = 5
open("/usr/share/locale/fr_FR@euro/LC_MESSAGES/libapt-pkg4.6.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/fr@euro/LC_MESSAGES/libapt-pkg4.6.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/fr_FR/LC_MESSAGES/libapt-pkg4.6.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/fr/LC_MESSAGES/libapt-pkg4.6.mo", O_RDONLY) = 5
open("/usr/lib/gconv/gconv-modules.cache", O_RDONLY) = 5
open("/usr/lib/gconv/ISO8859-15.so", O_RDONLY) = 5
stat64("/var/cache/apt/pkgcache.bin", {st_mode=S_IFREG|0644, st_size=10082838, ...}) = 0
open("/var/cache/apt/pkgcache.bin", O_RDONLY) = 5
stat64("/var/lib/apt/lists/ftp.fr.debian.org_debian_dists_lenny_main_binary-i386_Packages", {st_mode=S_IFREG|0644, st_size=24334812, ...}) = 0
stat64("/var/lib/apt/lists/ftp.fr.debian.org_debian_dists_lenny_main_binary-i386_Packages", {st_mode=S_IFREG|0644, st_size=24334812, ...}) = 0
stat64("/var/lib/apt/lists/ftp.fr.debian.org_debian_dists_lenny_main_i18n_Translation-fr", {st_mode=S_IFREG|0644, st_size=2695118, ...}) = 0
stat64("/var/lib/apt/lists/ftp.fr.debian.org_debian_dists_lenny_main_i18n_Translation-fr", {st_mode=S_IFREG|0644, st_size=2695118, ...}) = 0
stat64("/var/lib/apt/lists/ftp.fr.debian.org_debian_dists_lenny_main_i18n_Translation-fr", {st_mode=S_IFREG|0644, st_size=2695118, ...}) = 0
stat64("/var/lib/apt/lists/security.debian.org_dists_lenny_updates_main_binary-i386_Packages", {st_mode=S_IFREG|0644, st_size=1972542, ...}) = 0
stat64("/var/lib/apt/lists/security.debian.org_dists_lenny_updates_main_binary-i386_Packages", {st_mode=S_IFREG|0644, st_size=1972542, ...}) = 0
stat64("/var/lib/apt/lists/security.debian.org_dists_lenny_updates_main_i18n_Translation-fr", 0xbfffc324) = -1 ENOENT (No such file or directory)
stat64("/var/lib/apt/lists/dl.google.com_linux_deb_dists_stable_main_binary-i386_Packages", {st_mode=S_IFREG|0644, st_size=3270, ...}) = 0
stat64("/var/lib/apt/lists/dl.google.com_linux_deb_dists_stable_main_binary-i386_Packages", {st_mode=S_IFREG|0644, st_size=3270, ...}) = 0
stat64("/var/lib/apt/lists/dl.google.com_linux_deb_dists_stable_main_i18n_Translation-fr", 0xbfffc324) = -1 ENOENT (No such file or directory)
stat64("/var/lib/dpkg/status", {st_mode=S_IFREG|0644, st_size=820487, ...}) = 0
stat64("/etc/apt/preferences", 0xbfffbc74) = -1 ENOENT (No such file or directory)
stat64("/var/lib/apt/extended_states", {st_mode=S_IFDIR|0755, st_size=8192, ...}) = 0
open("/var/lib/apt/extended_states", O_RDONLY) = 5
open("/usr/share/locale/fr_FR@euro/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/fr@euro/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/fr_FR/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/fr/LC_MESSAGES/libc.mo", O_RDONLY) = 6
open("/usr/lib/gconv/ISO8859-1.so", O_RDONLY) = 6
Bon je n'arrive pas trop à déchiffrer le strace.
J'espère que quelqu'un pourra m'aider parce que je commence à avoir marre des dpkg -i surtout quand il y a des dépendances -_-
Merci d'avance
# melanger les outils c'est pas bon
Posté par NeoX . Évalué à 3.
soit
aptitude update
aptitude upgrade
soit
apt-get update
apt-get upgrade
il me semble que l'un ou l'autre dispose de l'option --fix pour reparer quand y a eu un echec en cours de route
# fichier ou dossier absent
Posté par NeoX . Évalué à 2.
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
il semblerait qu'il lui manque deux fichiers
/etc/ld.so.nohwcap
/etc/ld.so.preload
[^] # Re: fichier ou dossier absent
Posté par rastayoupi . Évalué à 1.
J'ai une machine Debian virtuelle et ces 2 fichiers n'existent pas que ce soit dans /etc ou l'ensemble du système ... :/
[^] # Re: fichier ou dossier absent
Posté par NeoX . Évalué à 3.
puisque j'ai le meme comportement (avec strace) sur ma machine qui fonctionne
j'ai aussi les NOENT sur ces fichiers
de meme que sur les locales
[^] # Re: fichier ou dossier absent
Posté par ze_lionix (site web personnel) . Évalué à 2.
- si on recherche les deux fichiers dans les paquets debian
http://www.debian.org/distrib/packages#search_contents
les fichiers en question ne sont sur aucune version....
C'est simplement le binaire qui commence par les chercher et sinon prend ld du système... Un peu comme un stat sur un fichier de personnalisation et sinon bascule en default ( ex : apt.conf )
Fuse : j'en Use et Abuse !
# Faire le ménage
Posté par JJD . Évalué à 1.
S'il y a eu un plantage lors d'une mise à jour précédente en raison du manque d'espace, il peut il y avoir des fichiers corrompus.
Essaie d'effacer tout le contenu de /var/lib/apt/lists/ (si tu as peur, déplace ce contenu ailleurs, mais normalement il n'y a pas de problème). Lors de l'update suivant, comme il n'existera aucun fichier, tout sera téléchargé depuis les dépôts déclarés (et pas seulement les différences).
A+
JJD
[^] # Re: Faire le ménage
Posté par rastayoupi . Évalué à 1.
Heureusement que j'ai sauvé avant parce que lors de l'update il me manquait le dossier /var/lib/apt/lists/partial
Ensuite effectivement tout a été recréé mais toujours cette satané erreur 21 :/
[^] # Re: Faire le ménage
Posté par JJD . Évalué à 1.
Tes messages d'erreur indiquent :
Lecture des informations d'état... Erreur !
Essaie donc de supprimer (déplacer, renommer) le fichier /var/lib/dpkg/status et de le remplacer par /var/lib/dpkg/status-old (ce sont des fichiers texte : essaie de regarder leur contenu et la date de modification). Si ça ne donne rien, essaie avec un fichier vide.
[^] # Re: Faire le ménage
Posté par ze_lionix (site web personnel) . Évalué à 2.
status = etat E actuel ( si corrompu ben pas bien ! )
staus.old = E - 1
Partir du .old et refaire les niveaux vis à vis de l'état du systeme actuel...
Prendre le /var/log/dpkg.log et voir ce qui a déjà été upgradé / installe au moment du blocage, et metre à niveau avec un apt-get install --reinstall à mon avis....
Puis poursuivre la mise a jour du système...
Fuse : j'en Use et Abuse !
[^] # Re: Faire le ménage
Posté par JJD . Évalué à 1.
Au besoin, on peut également trouver des sauvegardes dans /var/backups/dpkg.status.*
[^] # Re: Faire le ménage
Posté par rastayoupi . Évalué à 1.
Heureusement que j'ai sauvé avant parce que lors de l'update il me manquait le dossier /var/lib/apt/lists/partial
Ensuite effectivement tout a été recréé mais toujours cette satané erreur 21 :/
# Statut des paquets / Base corrompue ?
Posté par ze_lionix (site web personnel) . Évalué à 4.
Vu que tu as un upgrade qui a foiré en cours de route moi je commencerai par me soucier de l'état du système en terme de paquets, d'états......
$>apt-get check
Ca mange pas de pain....
$> dpkg -l | egrep -v '^ii|^rc'
Ca devrait te donner une idée de ce qui est en état incorrecte....
Command qui te sera utilise pour une reinstalle :
$>apt-get install --reinstall [paquet_que_j'ai_explose]
Il se peux si ton disk full était sur /var que tu ai corrompu ta base dpkg des status qui se trouve dans /var/lib/dpkg/ !
J'y chercherais dans le fichiers status ton fameux 21...
Il fait quelle taille par rapport au .old ? quelle diff ?
Fuse : j'en Use et Abuse !
[^] # Re: Statut des paquets / Base corrompue ?
Posté par rastayoupi . Évalué à 1.
apt-get check renvoie la même erreur 21.
dpkg -l | egrep -v '^ii | ^rc' me renvoie:
Souhait=inconnU/Installé/suppRimé/Purgé/H=à garder
| État=Non/Installé/fichier-Config/dépaqUeté/échec-conFig/H=semi-installé/W=attend-traitement-déclenchements
|/ Err?=(aucune)/H=à garder/besoin Réinstallation/X=les deux (État,Err: majuscule=mauvais)
||/ Nom Version Description
+++-====================================-==========================-============================================
ri bind9-host 1:9.6.ESV.R1+dfsg-0+lenny2 Version of 'host' bundled with BIND 9.X
rF deskbar-applet 2.22.3.1-1 universal search and navigation bar for GNOM
rc gnome-nettool 2.22.0-1 network information tool for GNOME
iU libsvn1 1.5.1dfsg1-4 Shared libraries used by Subversion
iU skype 2.1.0.81-1 Skype
iU subversion 1.5.1dfsg1-4 Advanced version control system
Apparemment il fait la même taille que le old.
J'ai cherché le 21 dans le fichier status, j'ai seulement trouvé
/usr/share/doc/libdjvulibre21/
J'ai tout mv autre part et cela ne solutionne pas mon problème.
[^] # Re: Statut des paquets / Base corrompue ?
Posté par Amand Tihon (site web personnel) . Évalué à 1.
[^] # Re: Statut des paquets / Base corrompue ?
Posté par rastayoupi . Évalué à 3.
En fait /var/lib/apt/extended_states était un répertoire, il devrait être un fichier.
Le fichier existait bien mais sous la forme:
/var/lib/apt/extended_states.tmp
Ainsi un
# mv /var/lib/apt/extended_states /var/lib/apt/extended_states.dir
# mv /var/lib/apt/extended_states.tmp /var/lib/apt/extended_states
M'a permis de résoudre tout ça.
Merci pour votre aide.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.