Bug#587493: choose-mirror: Strange wget error message in the installation log
Package: choose-mirror
Version: 2.32
User: debian-edu@lists.debian.org
UserTags: debian-edu
In Debian Edu, we automatically search for error: in the installation
log to detect errors during installation. When PXE installing, I get
this one:
Jun 28 23:18:29 main-menu[555]: (process:2840): wget: server returned
error: HTTP/1.0 404 Not Found
It is a bogus error message that is creating noise and confusion in
the Debian Edu test installation.
I've tried to track down where it come from, and as far as I
understand from the log it must originate from choose-mirror.
This is the relevant log fragment:
Jun 28 23:18:28 main-menu[555]: DEBUG: resolver (localization-config-udeb): package doesn't exist (ignored)
Jun 28 23:18:28 anna-install: Queueing udeb partman-lvm for later installation
Jun 28 23:18:28 anna-install: Queueing udeb partman-auto-lvm for later installation
Jun 28 23:18:28 main-menu[555]: INFO: Falling back to the package description for auto-install
Jun 28 23:18:28 main-menu[555]: INFO: Falling back to the package description for ai-choosers
Jun 28 23:18:28 main-menu[555]: INFO: Menu item 'choose-mirror' selected
Jun 28 23:18:28 anna-install: Queueing udeb apt-mirror-setup for later installation
Jun 28 23:18:28 choose-mirror[2847]: DEBUG: command: wget -q http://ftp.skolelinux.org/debian/dists/oldstable/Release -O - | grep -E '^(Suite|Codename):'
Jun 28 23:18:28 choose-mirror[2847]: DEBUG: command: wget -q http://ftp.skolelinux.org/debian/dists/stable/Release -O - | grep -E '^(Suite|Codename):'
Jun 28 23:18:29 choose-mirror[2847]: DEBUG: command: wget -q http://ftp.skolelinux.org/debian/dists/lenny/Release -O - | grep -E '^(Suite|Codename):'
Jun 28 23:18:29 choose-mirror[2847]: DEBUG: command: wget -q http://ftp.skolelinux.org/debian/dists/testing/Release -O - | grep -E '^(Suite|Codename):'
Jun 28 23:18:29 choose-mirror[2847]: DEBUG: command: wget -q http://ftp.skolelinux.org/debian/dists/squeeze/Release -O - | grep -E '^(Suite|Codename):'
Jun 28 23:18:29 choose-mirror[2847]: DEBUG: command: wget -q http://ftp.skolelinux.org/debian/dists/unstable/Release -O - | grep -E '^(Suite|Codename):'
Jun 28 23:18:29 choose-mirror[2847]: DEBUG: command: wget -q http://ftp.skolelinux.org/debian/dists/sid/Release -O - | grep -E '^(Suite|Codename):'
Jun 28 23:18:29 choose-mirror[2847]: INFO: suite/codename set to: testing/squeeze
Jun 28 23:18:29 choose-mirror[2847]: DEBUG: command: wget -q http://ftp.skolelinux.org/debian/dists/squeeze/main/binary-i386/Release -O - | grep ^Architecture:
Jun 28 23:18:29 anna-install: Queueing udeb squeeze-support for later installation
Jun 28 23:18:29 main-menu[555]: (process:2840): wget: server returned error: HTTP/1.0 404 Not Found
Jun 28 23:18:29 main-menu[555]: DEBUG: resolver (libc6-udeb): package doesn't exist (ignored)
The URLs in the log seem to work, so I do not understand why wget is
complaining. Is there some other wget calls that are not reported to
the log?
The only wget calls I find in choose-mirror do not throw away error
messages. Perhaps they should? If so, this untested patch should
implement it:
debian/changelog
* Throw away stderr when calling wget, to avoid getting bogus error
messages in the installation log.
--- choose-mirror.c (revision 63581)
+++ choose-mirror.c (working copy)
@@ -243,7 +243,7 @@
free(directory);
directory = strdup(debconf->value);
- asprintf(&command, "wget -q %s://%s%s/dists/%s/Release -O - | grep -E '^(Suite|Codename):'",
+ asprintf(&command, "wget -q %s://%s%s/dists/%s/Release -O - 2>/dev/null | grep -E '^(Suite|Codename):'",
protocol, hostname, directory, name);
di_log(DI_LOG_LEVEL_DEBUG, "command: %s", command);
f = popen(command, "r");
@@ -757,7 +757,7 @@
if (strlen(debconf->value) > 0) {
codename = strdup(debconf->value);
- asprintf(&command, "wget -q %s://%s%s/dists/%s/main/binary-%s/Release -O - | grep ^Architecture:",
+ asprintf(&command, "wget -q %s://%s%s/dists/%s/main/binary-%s/Release -O - 2>/dev/null | grep ^Architecture:",
protocol, hostname, directory, codename, ARCH_TEXT);
di_log(DI_LOG_LEVEL_DEBUG, "command: %s", command);
f = popen(command, "r");
Happy hacking,
--
Petter Reinholdtsen
Reply to: