Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#51 22-07-2017 10:48:14

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.11.12
(G)UI : openbox
Inscription : 26-08-2010

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

Je me permets une petite digression…

robert2a a écrit :

les fichiers "lock" sont du 15 janvier 2016

-rw-r----- 1 root root        0 janv. 15  2016 lock



En soit, ce n'est pas l'existence du fichier qui est le verrou. Le fichier existe juste
pour poser un verrou en écriture dessus, bien qu'on écrive jamais rien dedans.
C'est un appel système qui permet de poser ce genre de verrou. Si un verrou est déjà posé
l'appel échoue. Il existe plusieurs techniques de verrouillage, ici c'est une méthode coopérative
qui est utilisée. Cela veut dire que ça n'empêche pas d'écrire dans le fichier verrouillé (bien
qu'ici on n'écrira jamais dans le fichier lock).

L'autre méthode plus rarement utilisée est celle des verrous obligatoires  (? je me souviens plus
du nom exact) pour lesquels il faut une option de montage du système de fichier particulière (mandatory).
Dans ce cas l'écriture sur un fichier verrouillé provoque une erreur, il faut obligatoirement obtenir
le verrou en écriture pour écrire dans le fichier (sauf si le fichier n'était pas verrouillé, ce qui pose pas mal
de problèmes avec les applications qui ne respectent pas les règles si je me souviens bien…)

Pour couronner le tout, il existe deux appels systèmes pour poser des verrous flock(2) et une fonction
appeler de fcntl(2) qui sert à d'autres choses particulières… Et bien entendu ces deux appels posent
des verrous de type différents, il faut que les applications qui veulent coopérer utilisent la même méthode !

Voilà, donc inutile de prendre en compte la date de ce fichier qui est créé quand il n'existe pas et
laissé comme cela.

Dernière modification par enicar (22-07-2017 10:51:34)


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#52 22-07-2017 11:43:31

Stephdeb
Membre
Distrib. : Debian 9.0 stretch
Noyau : Linux 4.9.0-3-amd64
(G)UI : Gnome
Inscription : 17-07-2017

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

Salut à tous,
j'ai fait :

dpkg-query -l



Pour la liste des paquets installés (arrêté moi si je me trompe)

Le retour affiche bien :


ii  unattended-upgrades       0.93.1+nmu1       all               automatic installation of security upgrades
 

Hors ligne

#53 22-07-2017 11:59:54

lagrenouille
Adhérent(e)
Lieu : dans mes rêves
Distrib. : jessie/stretch/buster
Noyau : linux-4.9.0-2-amd64
(G)UI : env- i3-weechat-w3m-clavier bépo
Inscription : 28-03-2012
Site Web

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

tu pourrais aussi faire un

dpkg -l | grep -v ^ii


histoire de voir si tout va bien


regarde si tu n'utilises pas  aptitude et apt en même temps, voir avec  ps si l'un est pas fermé

vu sur le net ceci

 rm -rf /var/lib/apt/lists/lock

Dernière modification par lagrenouille (22-07-2017 12:18:53)


L'opinion que l'on suppose d'un être n'est souvent que le miroir de notre propre ignorance à la limiter

Hors ligne

#54 22-07-2017 12:26:22

Stephdeb
Membre
Distrib. : Debian 9.0 stretch
Noyau : Linux 4.9.0-3-amd64
(G)UI : Gnome
Inscription : 17-07-2017

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

Salut la grenouille,
la commande :

dpkg -l | grep -v ^ii



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)/besoin Réinstallation (État,Err: majuscule=mauvais)
||/ Nom                                           Version                                Architecture Description
+++-=============================================-======================================-============-===============================================================================
rc  jitsi-meet                                    1.0.2098-1                             all          WebRTC JavaScript video conferences
 



Cela me fait penser que j'ai essayé d'installer jitsi via dpkg, et que ça avait foiré...

Hors ligne

#55 22-07-2017 12:29:50

lagrenouille
Adhérent(e)
Lieu : dans mes rêves
Distrib. : jessie/stretch/buster
Noyau : linux-4.9.0-2-amd64
(G)UI : env- i3-weechat-w3m-clavier bépo
Inscription : 28-03-2012
Site Web

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

je sais pas ce qu'est le paquet   jitsi-meet, c'est pas un paquet  stretch

rc veut dire que tu l'as viré et mal purgé

dpkg --purge jitsi-meet


L'opinion que l'on suppose d'un être n'est souvent que le miroir de notre propre ignorance à la limiter

Hors ligne

#56 22-07-2017 12:33:36

Stephdeb
Membre
Distrib. : Debian 9.0 stretch
Noyau : Linux 4.9.0-3-amd64
(G)UI : Gnome
Inscription : 17-07-2017

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

lagrenouille a écrit :



rc veut dire que tu l'as viré et mal purgé

dpkg --purge jitsi-meet



Merci pour l'explication, purge faite.

Hors ligne

#57 22-07-2017 12:37:48

Stephdeb
Membre
Distrib. : Debian 9.0 stretch
Noyau : Linux 4.9.0-3-amd64
(G)UI : Gnome
Inscription : 17-07-2017

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

La commande :

ps



me renvoie :

PID TTY          TIME CMD
 2245 pts/1    00:00:00 bash
 2366 pts/1    00:00:00 ps

Hors ligne

#58 22-07-2017 13:43:26

lagrenouille
Adhérent(e)
Lieu : dans mes rêves
Distrib. : jessie/stretch/buster
Noyau : linux-4.9.0-2-amd64
(G)UI : env- i3-weechat-w3m-clavier bépo
Inscription : 28-03-2012
Site Web

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

ps est plein d'options

pour voir tes processus en cours

ps -e




pour un truc spécifique, exemple ssh


ps -e | grep ssh



pour ça j'ai dit une connerie, c'est en root et pas en user

 rm -rf /var/lib/apt/lists/lock

Dernière modification par lagrenouille (22-07-2017 13:48:34)


L'opinion que l'on suppose d'un être n'est souvent que le miroir de notre propre ignorance à la limiter

Hors ligne

#59 22-07-2017 14:01:44

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.11.12
(G)UI : openbox
Inscription : 26-08-2010

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

Il y a une option dans ps pour voir un processus en particulier :


ps -C apt
 


pour lister les processus dont le nom est exactement « apt ».

Sinon, on peut utiliser pgrep qui renvoie juste les numéros de processus (pid) concernés :


pgrep apt
 


pour lister tous les pid dont le nom de commande contient la chaîne « apt ».

Mais pour tester si un fichier est verrouiller avec flock on peut utiliser la commande
du même nom :


if  flock -e -n /var/lib/apt/lists/lock; then echo "lock n'était pas verrouillé"; flock -u /var/lib/apt/lists/lock; else echo "lock était verrouillé"; fi
 



La même que précédemment sous forme de script (à copier dans un
fichier appelé test-lock.sh par exemple et à exécuter en tant que
root) :


#! /bin/sh
LOCK=/var/lib/apt/lists/lock

if flock -e -n "$LOCK"; then
    echo "lock n'était pas verrouillé"
    flock -u "$LOCK"
else
    echo "lock était verrouillé"
fi
 



Je pense qu'il utilise flock pour le verrou car c'est plus simple à
mettre en œuvre…

Le test de verrouillage ne fonctionne pas ! dommage… et puis ce n'est pas
comme cela qu'on se sert de flock

Dernière modification par enicar (22-07-2017 14:43:59)


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#60 22-07-2017 14:30:50

robert2a
Membre
Lieu : France
Distrib. : Stretch 9
Noyau : Linux 4.9.0-3 4.9.30-2
(G)UI : Mate
Inscription : 15-11-2014

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

Bonjour
tu peu commenter ton sources.list  comme ceci


#stretch 9
#deb http://deb.debian.org/debian stretch main contrib non-free
#deb http://security.debian.org/ stretch/updates main contrib non-free
#deb http://deb.debian.org/debian stretch-updates main contrib non-free
#deb http://deb.debian.org/debian stretch-backports main contrib non-free
 



un apt-get update doit donner ceci


Lecture des listes de paquets... Fait
 


tu parle de plusieurs OS sur cette machine , pas de mélange ? , partitions commune ?
en simulation que donne


apt-get -s autoremove --purge
 


retour


Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances      
Lecture des informations d'état... Fait
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
 



tenter de supprimer "aptitude" , "unattended-upgrade" , avec une purge ,  facile ensuite a remettre en service  (pour enlever le doute sur l utilisation de services non voulue)
je connais pas KDE , mais ça reste une debian pour la gestion d apt .

@enicar

merci pour l' explication
il faut retenir que le contenu de lock est nul , et que en cas d' absence il sera recréé  ( la date de création aucune importance )
nota : il y a un espèce de drapeau sur le fichier "lock"  pour dire que le contenu du dossier est verrouillé ou pas ?

Dernière modification par robert2a (22-07-2017 14:39:14)

Hors ligne

#61 22-07-2017 15:02:14

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.11.12
(G)UI : openbox
Inscription : 26-08-2010

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

robert2a a écrit :

@enicar

merci pour l' explication
il faut retenir que le contenu de lock est nul , et que en cas d' absence il sera recréé  ( la date de création aucune importance )
nota : il y a un espèce de drapeau sur le fichier "lock"  pour dire que le contenu du dossier est verrouillé ou pas ?


En fait c'est le fichier lock qui est verrouillé, on peut aussi verrouiller un répertoire mais ce n'est pas
ce qu'ils font à mon avis. Le « drapeau », c'est le verrou qui sera relâché dès que le fichier lock sera
fermé. Il existe plusieurs sorte de verrous avec flock : partagé ou exclusif. Dans ce cas ils doivent utiliser
un verrou exclusif…

Avec l'appel de fcntl c'est plus fin, on peut poser des verrous en lecture, en écriture ou en lecture/écriture. ce verrou peut concerner une partie du fichier ou le fichier en entier… mais il n'y a pas la notion de partagé/exclusif.


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#62 22-07-2017 15:08:12

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.11.12
(G)UI : openbox
Inscription : 26-08-2010

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

J'ai essayé de faire des tests de verrouillage sans succès… dommage cette idée me plaisait bien…
D'après ce que je vois dans avec lsof, c'est parce qu'ils utilisent la fonction de verrouillage de
fcntl… et comme les deux méthodes sont incompatibles et s'ignorent, ça ne sert à rien de tester avec
flock neutral En plus c'est le fichier /var/lib/dpkg/lock qui est verrouillé, le fichier /var/lib/apt/lists/lock
n'est verrouillé que lors de l'update, c'est à dire la mise à jour de la liste des paquets
(ce qui est assez logique !).

Note : je pourrais faire un test en utilisant la fonction de fcntl, ça doit être accessible facilement
en python, mais bon je ne suis pas d'humeur à programmer plus que cela aujourd'hui…

Dernière modification par enicar (22-07-2017 15:14:15)


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#63 22-07-2017 15:24:57

Croutons
Membre
Distrib. : Handylinux 2.5 vers Jessie et Debian Stretch
Noyau : Linux 3.16.0-4-686-pae, Linux 4.9.0-3-686-pae
(G)UI : xfce
Inscription : 16-12-2016

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

robert2a a écrit :

tu parle de plusieurs OS sur cette machine , pas de mélange ? , partitions commune ?
en simulation que donne


ah oui peut être une piste, j'avais lu sur un forum que sa posait des problémes de mélange de version de fichiers pour le home commun pour un même utilisateur sur different OS, ils donnaient quelques exemple d'ailleur
Par contre je ne saurais dire les symptomes


-->les cahiers du debutant<--      WikiDF-->Découvrir les principales commandes Linux<--
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde

Hors ligne

#64 22-07-2017 15:40:11

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.11.12
(G)UI : openbox
Inscription : 26-08-2010

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

Croutons a écrit :

robert2a a écrit :

tu parle de plusieurs OS sur cette machine , pas de mélange ? , partitions commune ?
en simulation que donne


ah oui peut être une piste, j'avais lu sur un forum que sa posait des problémes de mélange de version de fichiers pour le home commun pour un même utilisateur sur different OS, ils donnaient quelques exemple d'ailleur
Par contre je ne saurais dire les symptomes



À mon avis ça n'expliquerait pas le message au sujet du verrou. Le verrou, c'est une fonction interne du noyau
et n'existe que sur un fichier ouvert… autant dire que quand on éteint la machine le verrou n'existe plus.


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#65 22-07-2017 15:47:22

robert2a
Membre
Lieu : France
Distrib. : Stretch 9
Noyau : Linux 4.9.0-3 4.9.30-2
(G)UI : Mate
Inscription : 15-11-2014

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

et mon idée d'enlever les utilitaires de mise a jour auto et aptitudes , bonne ou mauvaises idée ?

Hors ligne

#66 22-07-2017 15:50:34

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.11.12
(G)UI : openbox
Inscription : 26-08-2010

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

robert2a a écrit :

et mon idée d'enlever les utilitaires de mise a jour auto et aptitudes , bonne ou mauvaises idée ?


Pourquoi pas, on peut toujours essayer. De mon côté je me posais des questions au sujet de packagekit qui
lui aussi permet d'installer, de supprimer mettre à jour… et qui est utilisé par kde ou gnome par exemple.


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#67 22-07-2017 22:43:46

robert2a
Membre
Lieu : France
Distrib. : Stretch 9
Noyau : Linux 4.9.0-3 4.9.30-2
(G)UI : Mate
Inscription : 15-11-2014

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

oui aussi , tu a remarqué j'ai écrit "et mon idée d'enlever les utilitaires de mise a jour auto"  , donc packagekit aussi  tongue

la description


PackageKit permet d'effectuer des tâches simples de gestion de logiciels
via une interface DBus, comme rafraîchir le cache, mettre à jour, installer
et supprimer des paquets ou chercher des codecs multimédia et des
gestionnaires de fichiers.

Le travail est effectué par des moteurs de traitement qui utilisent le
gestionnaire de paquets livré par la distribution correspondante.
PackageKit n'est pas destiné à remplacer les outils évolués comme Synaptic.

Ses principaux avantages sont :
 - une interface unifiée sur plusieurs distributions ;
 - des privilèges gérés finement grâce à PolicyKit ;
 - l'indépendance par rapport à une session bureau pendant le traitement.
 

Hors ligne

#68 23-07-2017 08:43:50

Croutons
Membre
Distrib. : Handylinux 2.5 vers Jessie et Debian Stretch
Noyau : Linux 3.16.0-4-686-pae, Linux 4.9.0-3-686-pae
(G)UI : xfce
Inscription : 16-12-2016

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

Les utilitaires de mise a jour demande le mot de passe root donc pas activé tant que le passe est pas renseigné non?

-->les cahiers du debutant<--      WikiDF-->Découvrir les principales commandes Linux<--
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde

Hors ligne

#69 23-07-2017 11:31:33

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.11.12
(G)UI : openbox
Inscription : 26-08-2010

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

Croutons a écrit :

Les utilitaires de mise a jour demande le mot de passe root donc pas activé tant que le passe est pas renseigné non?


Pas tous, unattended-upgrade ne demande rien vu que ça se fait à notre insu. Avec packagekit c'est possible
de faire des mises à jour sans le mot de passe root, il me semble ; c'est un service dbus…

Du coup, je serais pour supprimer packagekit et unattended-upgrade bien que ces paquets étaient
installés sur ma machine sans poser de problème particulier. De toute façon, on peut les réinstaller
si nécessaire.

Dernière modification par enicar (23-07-2017 11:33:48)


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#70 23-07-2017 11:40:46

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.11.12
(G)UI : openbox
Inscription : 26-08-2010

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

Un truc qu'il faudrait tester :


fuser /var/lib/dpkg/lock
 



Puis si ça renvoie un nombre, c'est le pid du processus qui l'utilise ; donc pour savoir qui :


ps -p $(fuser /var/lib/dpkg/lock)
 



Et il faut vraiment être root, sinon si le fichier tester avec fuser ne nous appartient pas
fuser ne répond rien et sans avertissement.

Dernière modification par enicar (23-07-2017 11:41:21)


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#71 23-07-2017 12:39:05

Stephdeb
Membre
Distrib. : Debian 9.0 stretch
Noyau : Linux 4.9.0-3-amd64
(G)UI : Gnome
Inscription : 17-07-2017

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

Salut à tous,

La commande

pgrep apt



me renvoie  3 numéros de PID (2 apt.systemd.dai + 1 apt-get)

La commande

fuser /var/lib/dpkg/lock



ne renvoie rien.

La commande

sudo apt-get -s autoremove --purge



me renvoie

Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances      
Lecture des informations d'état... Fait
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
 



Et au sujet des différents OS, aucun partage de partition normalement (mais j'avais une distrib Ubuntu qui ne démarait plus suite à une MAJ, que j'ai peut-être écrasé mais pas sur) Y a-til une commande pour voir ça ?

Hors ligne

#72 23-07-2017 12:57:26

robert2a
Membre
Lieu : France
Distrib. : Stretch 9
Noyau : Linux 4.9.0-3 4.9.30-2
(G)UI : Mate
Inscription : 15-11-2014

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

Bonjour
déja ton installation est propre pas de paquet en instance de suppression  =>  " 0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour. "
attendre l avis de enicar  pour les retours des commandes demandé .
il te restera a tester la suppression  des paquets cité au dessus  ( mise a jour auto )

Hors ligne

#73 23-07-2017 14:03:43

Stephdeb
Membre
Distrib. : Debian 9.0 stretch
Noyau : Linux 4.9.0-3-amd64
(G)UI : Gnome
Inscription : 17-07-2017

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

Je viens de supprimer aptitude et unattended-upgrades et leurs dépendance :

Pour unattended-upgrades j'ai eu ce message :

avertissement: lors de la suppression de unattended-upgrades, le répertoire « /var/log/unattended-upgrades » n'était pas vide, donc il n'a pas été supprimé



je suis donc passé par

sudo rm -rf /var/log/unattended-upgrades



avant de refaire:

sudo apt-get --purge remove unattended-upgrades

Hors ligne

#74 23-07-2017 15:51:19

robert2a
Membre
Lieu : France
Distrib. : Stretch 9
Noyau : Linux 4.9.0-3 4.9.30-2
(G)UI : Mate
Inscription : 15-11-2014

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

et alors le apt-get update fonctionne ?  (aprés avoir reboot la machine )

il restera le cas du paquet packagekit

Hors ligne

#75 23-07-2017 16:13:58

Stephdeb
Membre
Distrib. : Debian 9.0 stretch
Noyau : Linux 4.9.0-3-amd64
(G)UI : Gnome
Inscription : 17-07-2017

Re : [RESOLU] apt-get Impossible d'obtenir le verrou

Alors après reboot:
Le

sudo apt-get update



fonctionne, mais bloque à 0% sur la récupération n°15 de souvenirs...
Du coup, je suis obligé de fermé le terminal, et lorsque j'en ouvre un nouveau :

E: Impossible d'obtenir le verrou /var/lib/apt/lists/lock - open (11: Ressource temporairement non disponible)
E: Impossible de verrouiller le répertoire /var/lib/apt/lists/
 



Le verouillage recommence, alors que faire ?

Hors ligne

Pied de page des forums