Package_check : pb de dns


#1

Hello,
Quand je tente de lancer le script de build de package_checker, il sort des erreurs dns ce qui fait qu’ensuite les installe de package se cassent la gueule.

:~/package_check/sub_scripts$ ./lxc_build.sh
> Update et install lxc lxctl
[sudo] Mot de passe de Krakinou :
> Install git, curl and lynx
> Suppression du conteneur existant.
lxc-snapshot: lxccontainer.c: do_snapshot_destroy: 3668 Could not destroy snapshot snap0
lxc-snapshot: tools/lxc_snapshot.c: do_snapshot_destroy: 220 Error destroying snapshot snap0
lxc-snapshot: lxccontainer.c: do_snapshot_destroy: 3668 Could not destroy snapshot snap1
lxc-snapshot: tools/lxc_snapshot.c: do_snapshot_destroy: 220 Error destroying snapshot snap1
lxc-snapshot: lxccontainer.c: do_snapshot_destroy: 3668 Could not destroy snapshot snap2
lxc-snapshot: tools/lxc_snapshot.c: do_snapshot_destroy: 220 Error destroying snapshot snap2
Destroyed container pchecker_lxc
> Création d'une machine debian stretch minimaliste.
> Autoriser l'ip forwarding, pour router vers la machine virtuelle.                                             
> Ajoute un brige réseau pour la machine virtualisée
> Active le bridge réseau
> Configuration réseau du conteneur
> Configuration réseau de la machine virtualisée
> Configure le parefeu
> Vérification du contenu du resolv.conf
> Démarrage de la machine
> Test la configuration dns
>>> The dns isn't working (Current dns = 127.0.1.1)
>>>Force to use the dns from the config file            nameserver 192.168.0.254
>>> Try to use the dns address 192.168.0.254
>>> The dns isn't working (Current dns = 192.168.0.254)
>>>Force to use the default dns
>>> Try to use the dns address 127.0.1.1
>>> The dns isn't working (Current dns = 127.0.1.1)
>>>The dns is still broken, use FDN dns
nameserver 80.67.169.12
>>> Try to use the dns address 127.0.1.1
> Update et install aptitude sudo git
Err:1 http://security.debian.org stretch/updates InRelease
  Erreur temporaire de résolution de « security.debian.org »
Err:2 http://httpredir.debian.org/debian stretch InRelease
  Erreur temporaire de résolution de « httpredir.debian.org »
Lecture des listes de paquets... Fait
W: Impossible de récupérer http://httpredir.debian.org/debian/dists/stretch/InRelease  Erreur temporaire de résolution de « httpredir.debian.org »
W: Impossible de récupérer http://security.debian.org/dists/stretch/updates/InRelease  Erreur temporaire de résolution de « security.debian.org »
W: Le téléchargement de quelques fichiers d'index a échoué, ils ont été ignorés, ou les anciens ont été utilisés à la place.
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances... Fait
openssh-server is already the newest version (1:7.4p1-10+deb9u4).
The following additional packages will be installed:
  aptitude-common ca-certificates git-man less
  libboost-filesystem1.62.0 libboost-iostreams1.62.0
  libboost-system1.62.0 libcgi-fast-perl
  libcgi-pm-perl libclass-accessor-perl
  libcurl3-gnutls libcwidget3v5 libencode-locale-perl
  liberror-perl libexpat1 libfcgi-perl libffi6
  libgdbm3 libgmp10 libgnutls30 libhogweed4
  libhtml-parser-perl libhtml-tagset-perl
  libhttp-date-perl libhttp-message-perl libidn2-0
  libio-html-perl libio-string-perl libldap-2.4-2
  libldap-common liblocale-gettext-perl
  liblwp-mediatypes-perl libnettle6 libnghttp2-14
  libp11-kit0 libparse-debianchangelog-perl
  libperl5.24 libpopt0 libpsl5 librtmp1 libsasl2-2
  libsasl2-modules libsasl2-modules-db
  libsigc++-2.0-0v5 libsqlite3-0 libssh2-1 libssl1.1
  libsub-name-perl libtasn1-6 libtimedate-perl
  libunistring0 liburi-perl libxapian30 openssl patch
  perl perl-modules-5.24 publicsuffix rename rsync
Paquets suggérés :
  aptitude-doc-en | aptitude-doc apt-xapian-index
  debtags tasksel gettext-base git-daemon-run
  | git-daemon-sysvinit git-doc git-el git-email
  git-gui gitk gitweb git-arch git-cvs git-mediawiki
  git-svn libcwidget-dev gnutls-bin libdata-dump-perl
  libhtml-template-perl libxml-simple-perl
  libsasl2-modules-gssapi-mit
  | libsasl2-modules-gssapi-heimdal
  libsasl2-modules-ldap libsasl2-modules-otp
  libsasl2-modules-sql libwww-perl xapian-tools ed
  diffutils-doc perl-doc libterm-readline-gnu-perl
  | libterm-readline-perl-perl make
Les NOUVEAUX paquets suivants seront installés :
  aptitude aptitude-common ca-certificates git git-man
  less libboost-filesystem1.62.0
  libboost-iostreams1.62.0 libboost-system1.62.0
  libcgi-fast-perl libcgi-pm-perl
  libclass-accessor-perl libcurl3-gnutls libcwidget3v5
  libencode-locale-perl liberror-perl libexpat1
  libfcgi-perl libffi6 libgdbm3 libgmp10 libgnutls30
  libhogweed4 libhtml-parser-perl libhtml-tagset-perl
  libhttp-date-perl libhttp-message-perl libidn2-0
  libio-html-perl libio-string-perl libldap-2.4-2
  libldap-common liblocale-gettext-perl
  liblwp-mediatypes-perl libnettle6 libnghttp2-14
  libp11-kit0 libparse-debianchangelog-perl
  libperl5.24 libpopt0 libpsl5 librtmp1 libsasl2-2
  libsasl2-modules libsasl2-modules-db
  libsigc++-2.0-0v5 libsqlite3-0 libssh2-1 libssl1.1
  libsub-name-perl libtasn1-6 libtimedate-perl
  libunistring0 liburi-perl libxapian30 openssl patch
  perl perl-modules-5.24 publicsuffix rename rsync ssh
  sudo
0 mis à jour, 64 nouvellement installés, 0 à enlever et 0 non mis à jour.
Il est nécessaire de prendre 25,7 Mo dans les archives.
Après cette opération, 112 Mo d'espace disque supplémentaires seront utilisés.
Err:1 http://httpredir.debian.org/debian stretch/main amd64 perl-modules-5.24 all 5.24.1-3+deb9u4
  Erreur temporaire de résolution de « httpredir.debian.org »
0% [En cours]^C> Installation des paquets standard et ssh-server
lxc-attach: attach.c: lxc_attach_run_command: 1292 No such file or directory - Failed to exec "aptitude".
> Renseigne /etc/hosts sur l'invité
> Ajoute l'user pchecker
> Autorise pchecker à utiliser sudo sans mot de passe
> Mise en place de la connexion ssh vers l'invité.
Host 10.1.4.2 not found in /home/nicolas/.ssh/known_hosts
^C
Krakinou@pc:~/package_check/sub_scripts$

Ici, j’ai arrêté le script avec un ctrl+c après la première erreur. Une idée?
Krakinou


#2

Looks like it try different DNS and none of them was working.

Could you check the dns in /var/lib/lxc/pchecker_lxc/rootfs/etc/resolv.conf and in package_check/config
You can try different dns resolver in this config file.


#3

I just cloned it from the repo, so the files are brand new:
/package_check/config:

 Interface réseau principale de l'hôte
iface=enp4s0

# Adresse du dns
dns=192.168.0.254

# Forçage du dns
dnsforce=0

# Plage IP du conteneur
PLAGE_IP=10.1.4

# Domaine de test
DOMAIN=domain.tld

# Mot de passe
YUNO_PWD=admin

# Nom du conteneur
LXC_NAME=pchecker_lxc

# Nom du bridge
LXC_BRIDGE=lxc-pchecker

# Distribution debian
DISTRIB=stretch
# Branche à utiliser pour le script d'install de cette distribution (si non sta$
BRANCH=

And resolv.conf is continuously changed by the lxc_build.sh script: Right now it’s 80.67.169.12 (FDN).
I can also see the new network interfaces lxc_pkgchecker and lxcbr0 in the network admin of my guest computer.


#4

Is ‘enp4s0’ your network interface ? No error about that ?
Let’s try with 80.67.169.12 in dns and turn dnsforce to 1.

You can also try the script lxc_check.sh to fix the bridge.
I’m not sure though it’s really about the dns resolution. I think that’s your connection which is broken somehow.


#5

Yep : enp4s0 is my network interface and is working perfectly.
I also already tried these setups but no luck… same pb.
I tried to uninstall lxc & lxctl before relaunching the script (good old “turn it off and on again” method :slight_smile: ) but still the same error.


#6

Could you please try the script lxc_check.sh ?


#7

There is indeed an issue:

Krakinou@pc:~/package_check/sub_scripts$ ./lxc_check.sh 
Arrêt du conteneur pchecker_lxc
Arrêt du réseau pour le conteneur.
> Test de la configuration réseau du côté de l'hôte:
Le fichier de config du bridge est présent.
RTNETLINK answers: File exists
Failed to bring up lxc-pchecker.
Le bridge démarre correctement.
Le bridge obtient correctement son adresse IP.
Les règles iptables sont appliquées correctement.
Arrêt du réseau pour le conteneur.

> Test le démarrage du conteneur:
Initialisation du réseau pour le conteneur.
RTNETLINK answers: File exists
Failed to bring up lxc-pchecker.
sed: -e expression n°1, caractère 54: commande `s' inachevée
La configuration réseau LXC du conteneur est incorrecte et a été corrigée.
Test de démarrage du conteneur pchecker_lxc
Le conteneur a démarré correctement.

> Test de l'accès internet depuis l'hôte:
L'hôte dispose d'un accès à internet.

> Test de l'accès internet depuis le conteneur:
Redémarrage du conteneur.
Arrêt du conteneur pchecker_lxc
Arrêt du réseau pour le conteneur.
Initialisation du réseau pour le conteneur.
RTNETLINK answers: File exists
Failed to bring up lxc-pchecker.
Démarrage du conteneur.
NAME         STATE   AUTOSTART GROUPS IPV4     IPV6 
pchecker_lxc RUNNING 0         -      10.1.4.2 -    
Le conteneur LXC n'accède pas à internet...
Le fichier de configuration du kernel pour l'ip forwarding est présent.
L'ip forwarding est activé.
sed: -e expression n°1, caractère 54: commande `s' inachevée
La configuration réseau LXC du conteneur est incorrecte et a été corrigée.
Le fichier network/interfaces du conteneur est présent.
Mais il va être réécrit par précaution.
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
	address 10.1.4.2/24
	gateway 10.1.4.1
Redémarrage du conteneur.
Arrêt du conteneur pchecker_lxc
Arrêt du réseau pour le conteneur.
Initialisation du réseau pour le conteneur.
RTNETLINK answers: File exists
Failed to bring up lxc-pchecker.
Démarrage du conteneur.
NAME         STATE   AUTOSTART GROUPS IPV4     IPV6 
pchecker_lxc RUNNING 0         -      10.1.4.2 -    
Impossible de rétablir la connexion internet du conteneur.

#8

Could you retry a second time ? Sometimes, a later fix can help at the beginning of the script.
Though, I’m not sure it’s going to work, looks like there’s a big problem in your network.

Can you explain me what’s your config ?


#9

I ran it 3 times and the results are exactly the same…
I’m on a ubuntu 16.04 behind a freebox.
I’ve never mess with any network config, everything is vanilla on that part.
Would you like any specific log or conf file?

Anyway, thanks for your help!


#10

You’re trying to install package check directly on your Ubuntu or on a VM ?


#11

Directly on the ubuntu, I followed the guide from the github repo: git clone then lxc_build.sh
Maybe I should try a VM…


#12

Package check isn’t working on Ubuntu.
It’s tested only on Debian. So yes, try with a VM.
Anyway, if you have to work on a package, you’ll need a VM to try it with YunoHost. Package check works very well on a YunoHost instance.


#13

Ok, I have already have a few yuno VM for dev and testing, but I didn’t think running the script on an ubuntu would change anything, but reading about lxc now, it makes sense.
I’ll set a new debian vm and try it again.
Thanks for your help!