apt-get - read (21: est un dossier) Le sujet est résolu

Demande d'aide : c'est ici.
Répondre
brico
Messages : 2
Inscription : 20 juil. 2018, 17:09
Status : Hors-ligne

Bonjour.

J'utilise sans problèmes depuis longtemps un système de dépôt local à ma machine, comme dans
https://wiki.debian-fr.xyz/Cr%C3%A9er_u ... an_trivial

Sous Debian Wheezy, cela fonctionne sans problèmes.

Avec Debian Stretch, j'ai quelques problèmes.

Si je fais, en tant que root: "apt-get check", j'obtiens:

Lecture des listes de paquets... Erreur !
E: Erreur de lecture - read (21: est un dossier)
E: Les listes de paquets ou le fichier « status » ne peuvent être analysés ou lus.

Après avoir fait des recherches, j'ai l'impression qu'un fichier utilisé par apt-get est devenu un dossier. Hélas, je n'arrive pas à trouver ce fichier-dossier (rien dans aucun fichier de /var/log, ni dans /var/log/apt). Et il n'y a pas de "verbose" sur le apt-check.

J'ai le même type d'erreur si je fais un apt-get update.

Savez-vous comment obtenir le nom de ce fichier-dossier ?

Merci d'avance.
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5870
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : Hors-ligne

Bonjour,
effectivement toutes les docs sont déclarées comme obsolétes.
As tu essayé de refaire un dpkg-scanpackages ?
hybridemoineau
Membre
Membre
Messages : 390
Inscription : 24 avr. 2016, 15:34
Status : Hors-ligne

le logiciel Bleachbit possède une commande d'effacement des listes de paquets, quand on le lance en root. C'est fiable, j'utilise le logiciel depuis plusieurs années (sauf pour les options d'espace disque et de mémoire), et je commencerais par essayer ça.

Il faut recharger les listes après avec un apt-get update.

Je me demande quelle est la commande en console pour effacer ces listes sans passer par Bleachbit, rien trouvé sur le net.
brico
Messages : 2
Inscription : 20 juil. 2018, 17:09
Status : Hors-ligne

Bonjour.

J'ai repris une Debian Stretch neuve, et refais des tests en suivant scrupuleusement la doc mentionnée au début: aucune problème !

J'ai reprise ma Debian Stretch à problème: après quelques essais, j'ai fini par trouver que si mon dépôt est un sous-dossier de root (dossier /root/mes-paquets), cela coince. Si je copie ce dossier et le mets à la racine du disque (/mes-paquets par exemple), tout refonctionne correctement.

Il suffirait donc de mettre son dossier personnel de paquets ailleurs que dans /root.

J'ai fait par curiosité un ls -l de /root/mes-paquets, et un ls -l de /mes-paquets, je n'ai pas vu de différence.

Bizarre, mais cela fonctionne.

Je marque résolu.
Si j'en sais un peu plus dans quelques temps, je reviendrai compléter.

Encore merci pour votre aide.
PascalHambourg
Contributeur
Contributeur
Messages : 930
Inscription : 05 août 2016, 20:25
Status : Hors-ligne

https://www.debian.org/releases/stable/ ... apt-issues
APT récupère maintenant les fichiers avec un utilisateur sans privilège (_apt)
La cause peut être que l'utilisateur _apt n'a pas la permission de lire dans /root.
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5870
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : Hors-ligne

Tu nous dis avoir suivi le tuto du wiki.
Il n'est pas indiqué de le mettre dans /root!

Code : Tout sélectionner

$ cd /var/www/
$ sudo su www-data
$ mkdir debian
$ cd debian/
~/debian$ mkdir binary
~/debian$ mkdir source
Répondre