Projet

Général

Profil

Support #59823

jenkins, erreur bookworm, ucf: do not have write privilege to the state data

Ajouté par Frédéric Péters il y a plus de 2 ans. Mis à jour il y a plus de 2 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
17 décembre 2021
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Non
Planning:
Non

Description

Setting up postgresql-common (234) ...
debconf: unable to initialize frontend: Dialog
debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.)
debconf: falling back to frontend: Readline
Adding user postgres to group ssl-cert
ucf: do not have write privilege to the state data
dpkg: error processing package postgresql-common (--configure):
 installed postgresql-common package post-installation script subprocess returned error exit status 1

résultat échec. https://jenkins.entrouvert.org/job/publik-devinst/600/ (17 déc. 2021 04:01:00)

https://jenkins.entrouvert.org/job/publik-devinst/599/ (16 déc. 2021 04:01:00) était ok.


Demandes liées

Lié à Publik Installation Développeur - Bug #60551: Jenkins : erreur sudo sur bookwormFermé12 janvier 2022

Actions

Historique

#1

Mis à jour par Frédéric Péters il y a plus de 2 ans

Dans les logs, seule différence de version,

Get:2 http://deb.debian.org/debian bookworm/main amd64 libc6 amd64 2.33-1 [2826 kB]
Get:3 http://deb.debian.org/debian bookworm/main amd64 libc-bin amd64 2.33-1 [829 kB]

vs dans le build ok :

Get:2 http://deb.debian.org/debian bookworm/main amd64 libc6 amd64 2.32-5 [2820 kB]
Get:3 http://deb.debian.org/debian bookworm/main amd64 libc-bin amd64 2.32-5 [824 kB]

(mais bien sûr ça n'est peut-être pas lié)

#2

Mis à jour par Emmanuel Cazenave il y a plus de 2 ans

  • Statut changé de Nouveau à En cours
  • Assigné à mis à Emmanuel Cazenave
#3

Mis à jour par Emmanuel Cazenave il y a plus de 2 ans

(trois plombes)

C'est la configfuration de postgrseql-common qui échoue, sur ucf --debconf-ok $CCTMP $CCCONFIG, avec ucf qui répond "ucf: do not have write privilege to the state data".

Et aller voir dans ucf on a ce message à un seul endroit :

if [ -e "$statedir/hashfile" -a ! -w "$statedir/hashfile" ]; then
    echo >&2 "ucf: do not have write privilege to the state data" 
    if [ "X$docmd" = "XYES" ]; then
    exit 1;
    fi
fi

statedir='/var/lib/ucf'.

Et à essayer de reproduire, via ls on dirait que root a bien les droits de lecture/écriture sur le fichier :

root@publik-devinst-bookworm-19f41aa30d259a38:/# ls -l /var/lib/ucf/hashfile 
-rw-r--r-- 1 root root 0 Dec 20 13:04 /var/lib/ucf/hashfile

Mais par contre via test :

root@publik-devinst-bookworm-19f41aa30d259a38:/# test -e /var/lib/ucf/hashfile 
root@publik-devinst-bookworm-19f41aa30d259a38:/# echo $?
0
root@publik-devinst-bookworm-19f41aa30d259a38:/# test -w /var/lib/ucf/hashfile 
root@publik-devinst-bookworm-19f41aa30d259a38:/# echo $?
1

WTF

#4

Mis à jour par Emmanuel Cazenave il y a plus de 2 ans

A comparer les situation entre un container bullseye et bookworm, juste y faire un apt update, sur bookworm c'est pas joli joli :

W: http://deb.debian.org/debian/dists/bookworm/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/debian-archive-bullseye-automatic.gpg are ignored as the file is not readable by user '_apt' executing apt-key.
W: http://deb.debian.org/debian/dists/bookworm/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/debian-archive-bullseye-security-automatic.gpg are ignored as the file is not readable by user '_apt' executing apt-key.
W: http://deb.debian.org/debian/dists/bookworm/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/debian-archive-bullseye-stable.gpg are ignored as the file is not readable by user '_apt' executing apt-key.
W: http://deb.debian.org/debian/dists/bookworm/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/debian-archive-buster-automatic.gpg are ignored as the file is not readable by user '_apt' executing apt-key.
W: http://deb.debian.org/debian/dists/bookworm/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/debian-archive-buster-security-automatic.gpg are ignored as the file is not readable by user '_apt' executing apt-key.
W: http://deb.debian.org/debian/dists/bookworm/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/debian-archive-buster-stable.gpg are ignored as the file is not readable by user '_apt' executing apt-key.
W: http://deb.debian.org/debian/dists/bookworm/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/debian-archive-stretch-automatic.gpg are ignored as the file is not readable by user '_apt' executing apt-key.
W: http://deb.debian.org/debian/dists/bookworm/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/debian-archive-stretch-security-automatic.gpg are ignored as the file is not readable by user '_apt' executing apt-key.
W: http://deb.debian.org/debian/dists/bookworm/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/debian-archive-stretch-stable.gpg are ignored as the file is not readable by user '_apt' executing apt-key.
W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://deb.debian.org/debian bookworm InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 648ACFD622F3D138 NO_PUBKEY 0E98404D386FA1D9
W: Failed to fetch http://deb.debian.org/debian/dists/bookworm/InRelease  The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 648ACFD622F3D138 NO_PUBKEY 0E98404D386FA1D9
W: Some index files failed to download. They have been ignored, or old ones used instead.

Sur bullseye c'est plus propre :

root@publik-devinst-bullseye-b64ecd72c25b1807:/# apt update
Get:1 http://deb.debian.org/debian bullseye InRelease [116 kB]
Get:2 http://deb.debian.org/debian bullseye/main amd64 Packages [8183 kB]
Get:3 http://deb.debian.org/debian bullseye/main Translation-en [6243 kB]
Fetched 14.5 MB in 2s (5998 kB/s)                               
Reading package lists... Done
Building dependency tree... Done
20 packages can be upgraded. Run 'apt list --upgradable' to see them.
N: Repository 'http://deb.debian.org/debian bullseye InRelease' changed its 'Version' value from '11.0' to '11.2'

Je pensais que deboostrap était le truc qui marche tout seul qui sortait un système de fichier debian tout beau tout propre, apparemment non il doit y avoir de l'huile de coude à mettre quelque part, mais où ?

#5

Mis à jour par Emmanuel Cazenave il y a plus de 2 ans

Et bien sûr ça a peut-être rien à voir avec le ticket mais j'en là.

#6

Mis à jour par Emmanuel Cazenave il y a plus de 2 ans

Et à remonter encore d'un cran, je shoote /var/libb/machines/publik-devinst-bookworm, je fais un debootstrap --include=systemd-container bookworm publik-devinst-bookworm http://deb.debian.org/debian/, ça se finit par :

I: Configuring libc-bin...
W: Failure while configuring base packages.  This will be re-attempted up to five times.
W: See /var/lib/machines/publik-devinst-bookworm/debootstrap/debootstrap.log for details (possibly the package systemd-container is at fault)
W: Failure while configuring base packages.  This will be re-attempted up to five times.
W: See /var/lib/machines/publik-devinst-bookworm/debootstrap/debootstrap.log for details (possibly the package systemd-container is at fault)
W: Failure while configuring base packages.  This will be re-attempted up to five times.
W: See /var/lib/machines/publik-devinst-bookworm/debootstrap/debootstrap.log for details (possibly the package systemd-container is at fault)
W: Failure while configuring base packages.  This will be re-attempted up to five times.
W: See /var/lib/machines/publik-devinst-bookworm/debootstrap/debootstrap.log for details (possibly the package systemd-container is at fault)
W: Failure while configuring base packages.  This will be re-attempted up to five times.
W: See /var/lib/machines/publik-devinst-bookworm/debootstrap/debootstrap.log for details (possibly the package systemd-container is at fault)

Avec dans debootstrap.log :

Processing triggers for libc-bin (2.33-1) ...
Errors were encountered while processing:
 systemd-container
dpkg: dependency problems prevent configuration of systemd-container:
 systemd-container depends on default-dbus-system-bus | dbus-system-bus; however:
  Package default-dbus-system-bus is not installed.
  Package dbus-system-bus is not installed.

dpkg: error processing package systemd-container (--configure):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 systemd-container
dpkg: dependency problems prevent configuration of systemd-container:
 systemd-container depends on default-dbus-system-bus | dbus-system-bus; however:
  Package default-dbus-system-bus is not installed.
  Package dbus-system-bus is not installed.

dpkg: error processing package systemd-container (--configure):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 systemd-container
dpkg: dependency problems prevent configuration of systemd-container:
 systemd-container depends on default-dbus-system-bus | dbus-system-bus; however:
  Package default-dbus-system-bus is not installed.
  Package dbus-system-bus is not installed.

dpkg: error processing package systemd-container (--configure):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 systemd-container
dpkg: dependency problems prevent configuration of systemd-container:
 systemd-container depends on default-dbus-system-bus | dbus-system-bus; however:
  Package default-dbus-system-bus is not installed.
  Package dbus-system-bus is not installed.

dpkg: error processing package systemd-container (--configure):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 systemd-container
#7

Mis à jour par Frédéric Péters il y a plus de 2 ans

J'ai voulu regarder le debootstrap.log en question mais il n'est plus là, mon commentaire est que debootstrap peut-être n'est pas super développé du côté de la résolution des dépendances et comme la dépendance de systemd-container est default-dbus-system-bus qui n'est pas un vrai paquet ça échoue (i.e. ajouter directement dbus à l'--include).

(ceci n'a pas nécessairement de lien avec le problème d'origine).

#8

Mis à jour par Frédéric Péters il y a plus de 2 ans

Je pensais que deboostrap était le truc qui marche tout seul qui sortait un système de fichier debian tout beau tout propre, apparemment non il doit y avoir de l'huile de coude à mettre quelque part, mais où ?

Le truc depuis le début semble une histoire de permission (d'abord sur le state ucf, puis sur les fichiers de clé pour apt); le problème n'est pas debootstrap, serait plutôt que la combinaison conteneur + whatever + la libc actuellement dans bookworm fait quelque chose de désormais différent (et peut taper à des endroits pas imaginés dans des apparmor, seccomp, ou autre de l'hôte).

#9

Mis à jour par Emmanuel Cazenave il y a plus de 2 ans

Frédéric Péters a écrit :

(i.e. ajouter directement dbus à l'--include).

J'en étais arrivé là aussi : --include=dbus,systemd-container dans cette branche mais au final même erreur que sur main.

(ceci n'a pas nécessairement de lien avec le problème d'origine).

Indeed.

#10

Mis à jour par Frédéric Péters il y a plus de 2 ans

la libc actuellement dans bookworm fait quelque chose de désormais différent (et peut taper à des endroits pas imaginés dans des apparmor, seccomp, ou autre de l'hôte).

À suivre ça j'arrive côté archlinux sur https://bugs.archlinux.org/task/69563, ce qui permet d'identifier faccessat2, ce qui amène une recherche plus précise qui tombe sur https://www.mail-archive.com/debian-changes@lists.debian.org/msg23206.html sur l'intégration dans buster d'une nouvelle version de systemd (241-7~deb10u7) qui contient :

   * seccomp: allow turning off of seccomp filtering via env var.
     Since glibc 2.33 faccessat() is implemented via faccessat2(), which
     is breaking running containers that use such a version of glibc under
     systemd-nspawn in Buster.
     Turning off seccomp filtering via the SYSTEMD_SECCOMP env var makes it
     possible to run such new containers. (Closes: #984573)

De là, ajouter export SYSTEMD_SECCOMP=0 avant l'appel à nspawn devrait faire le job.

Sauf que non il manque encore un truc, il faut le syscall dispo dans le noyau et celui qui tourne (4.19) n'a pas ça, c'est par contre dispo en backport, linux-image-5.10.0-0.bpo.9-amd64. Mais à regarder ça je réalise qu'on est déjà jenkins dans un conteneur, que ça serait donc à installer sur l'hôte, et je vais laisser ça de côté, laisser l'hôte être monté de version vers bullseye, etc.

#12

Mis à jour par Frédéric Péters il y a plus de 2 ans

Voilà serveur et conteneurs montés en bullseye et cette erreur est passée il me semble.

Ça échoue désormais ainsi :

TASK [base : Install system packages dependencies] *****************************
fatal: [localhost]: FAILED! => {"changed": false, "module_stderr": "sudo: unable to resolve host publik-devinst-bookworm-c0d983c49d9124d2: Name or service not known\nsudo: error initializing audit plugin sudoers_audit\n", "module_stdout": "", "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error", "rc": 1}
#13

Mis à jour par Emmanuel Cazenave il y a plus de 2 ans

  • Statut changé de En cours à Solution déployée

Merci, je ferme ici pour ne pas tout mélanger, la suite ici #60551.

#14

Mis à jour par Emmanuel Cazenave il y a plus de 2 ans

  • Lié à Bug #60551: Jenkins : erreur sudo sur bookworm ajouté
#15

Mis à jour par Transition automatique il y a environ 2 ans

Automatic expiration

Formats disponibles : Atom PDF