Bug#866002: apt-get update fails with missing InRelease file on local mirror

2017-06-27 Thread David Kalnischkies
Control: found -1 1.4.6
Control: retitle -1 apt: ftp method fails on missing InRelease file via 
Pure-FTPd

Hi,

On Tue, Jun 27, 2017 at 02:38:50PM +0200, Andreas Heinlein wrote:
> FWIW, I installed lighttpd on the offline machine, switched to http method
> and it worked […]

I see you are using "localhost", so does that mean the mirrors are directly
on your offline machine? In that case you could just as well use the "file"
method which as a sideeffect should speed up apt operations slightly as apt
wont "download" the files from the repository, but use the files directly.


> I am attaching the requested information anyway, just in case someone wants
> to take a look into it.

Thanks, looks like Pure-FTPd behaves in some unexpected way, but I don't
know enough about FTP to really judge that and given its on its (slow)
way out we might survive with leaving this open until someone comes
along with more experience who fixes it – or closes it at the time ftp
is gone.


Best regards

David Kalnischkies


signature.asc
Description: PGP signature


Bug#866002: apt-get update fails with missing InRelease file on local mirror

2017-06-27 Thread Andreas Heinlein

Hello,

FWIW, I installed lighttpd on the offline machine, switched to http 
method and it worked. So it seems there is indeed something wrong with 
the ftp method.


I am attaching the requested information anyway, just in case someone 
wants to take a look into it.


Many thanks again!

-- Output from apt-get update:

<- 
'-%20Welcome%20to%20Pure-FTPd%20[privsep]%20[TLS]%20--%0d%0aYou%20are%20user%20number%201%20of%2050%20allowed.%0d%0aLocal%20time%20is%20now%2014:02.%20Server%20port:%2021.%0d%0aIPv6%20connections%20are%20also%20welcome%20on%20this%20server.%0d%0aYou%20will%20be%20disconnected%20after%2015%20minutes%20of%20inactivity.%0d%0a'

-> 'USER%20anonymous%0d%0a'
<- 'Anonymous%20user%20logged%20in%0d%0a'
-> 'TYPE%20I%0d%0a'
<- 'TYPE%20is%20now%208-bit%20binary%0d%0a'
-> 'SIZE%20/debian/debian/dists/stretch/InRelease%0d%0a'
<- 'Can't%20check%20for%20file%20existence%0d%0a'
-> 'MDTM%20/debian/debian/dists/stretch/InRelease%0d%0a'
<- 'Can't%20check%20for%20file%20existence%0d%0a'
-> 'PASV%0d%0a'
Get:1 ftp://localhost/debian/debian stretch InRelease
<- 'Entering%20Passive%20Mode%20(127,0,0,1,99,74)%0d%0a'
-> 'RETR%20/debian/debian/dists/stretch/InRelease%0d%0a'
<- 
'Can't%20open%20/debian/debian/dists/stretch/InRelease:%20No%20such%20file%20or%20directory%0d%0a'

Err:1 ftp://localhost/debian/debian stretch InRelease
  Unable to fetch file, server said 'Can't open 
/debian/debian/dists/stretch/InRelease: No such file or directory  ' 
[IP: 127.0.0.1 21]

-> 'SIZE%20/debian/debian-security/dists/stretch/updates/InRelease%0d%0a'
<- '62912%0d%0a'
-> 'MDTM%20/debian/debian-security/dists/stretch/updates/InRelease%0d%0a'
<- '20170626002101%0d%0a'
Hit:2 ftp://localhost/debian/debian-security stretch/updates InRelease
-> 'SIZE%20/debian/debian/dists/stretch-backports/InRelease%0d%0a'
<- '78544%0d%0a'
-> 'MDTM%20/debian/debian/dists/stretch-backports/InRelease%0d%0a'
<- '20170626082744%0d%0a'
Hit:3 ftp://localhost/debian/debian stretch-backports InRelease
-> 'SIZE%20/virtualbox/dists/stretch/InRelease%0d%0a'
<- '7776%0d%0a'
-> 'MDTM%20/virtualbox/dists/stretch/InRelease%0d%0a'
<- '20170429054359%0d%0a'
Hit:4 ftp://localhost/virtualbox stretch InRelease
Reading package lists...
W: Failed to fetch 
ftp://localhost/debian/debian/dists/stretch/InRelease  Unable to fetch 
file, server said 'Can't open /debian/debian/dists/stretch/InRelease: No 
such file or directory  ' [IP: 127.0.0.1 21]
W: Some index files failed to download. They have been ignored, or old 
ones used instead.


-- Package-specific info:

-- apt-config dump --

APT "";
APT::Architecture "amd64";
APT::Build-Essential "";
APT::Build-Essential:: "build-essential";
APT::Install-Recommends "1";
APT::Install-Suggests "0";
APT::Sandbox "";
APT::Sandbox::User "_apt";
APT::Authentication "";
APT::Authentication::TrustCDROM "true";
APT::NeverAutoRemove "";
APT::NeverAutoRemove:: "^firmware-linux.*";
APT::NeverAutoRemove:: "^linux-firmware$";
APT::NeverAutoRemove:: "^linux-image-4\.9\.0-0\.bpo\.2-amd64$";
APT::NeverAutoRemove:: "^linux-image-4\.9\.0-0\.bpo\.3-amd64$";
APT::NeverAutoRemove:: "^linux-image-4\.9\.0-3-amd64$";
APT::NeverAutoRemove:: "^linux-headers-4\.9\.0-0\.bpo\.2-amd64$";
APT::NeverAutoRemove:: "^linux-headers-4\.9\.0-0\.bpo\.3-amd64$";
APT::NeverAutoRemove:: "^linux-headers-4\.9\.0-3-amd64$";
APT::NeverAutoRemove:: "^linux-image-extra-4\.9\.0-0\.bpo\.2-amd64$";
APT::NeverAutoRemove:: "^linux-image-extra-4\.9\.0-0\.bpo\.3-amd64$";
APT::NeverAutoRemove:: "^linux-image-extra-4\.9\.0-3-amd64$";
APT::NeverAutoRemove:: "^linux-signed-image-4\.9\.0-0\.bpo\.2-amd64$";
APT::NeverAutoRemove:: "^linux-signed-image-4\.9\.0-0\.bpo\.3-amd64$";
APT::NeverAutoRemove:: "^linux-signed-image-4\.9\.0-3-amd64$";
APT::NeverAutoRemove:: "^kfreebsd-image-4\.9\.0-0\.bpo\.2-amd64$";
APT::NeverAutoRemove:: "^kfreebsd-image-4\.9\.0-0\.bpo\.3-amd64$";
APT::NeverAutoRemove:: "^kfreebsd-image-4\.9\.0-3-amd64$";
APT::NeverAutoRemove:: "^kfreebsd-headers-4\.9\.0-0\.bpo\.2-amd64$";
APT::NeverAutoRemove:: "^kfreebsd-headers-4\.9\.0-0\.bpo\.3-amd64$";
APT::NeverAutoRemove:: "^kfreebsd-headers-4\.9\.0-3-amd64$";
APT::NeverAutoRemove:: "^gnumach-image-4\.9\.0-0\.bpo\.2-amd64$";
APT::NeverAutoRemove:: "^gnumach-image-4\.9\.0-0\.bpo\.3-amd64$";
APT::NeverAutoRemove:: "^gnumach-image-4\.9\.0-3-amd64$";
APT::NeverAutoRemove:: "^.*-modules-4\.9\.0-0\.bpo\.2-amd64$";
APT::NeverAutoRemove:: "^.*-modules-4\.9\.0-0\.bpo\.3-amd64$";
APT::NeverAutoRemove:: "^.*-modules-4\.9\.0-3-amd64$";
APT::NeverAutoRemove:: "^.*-kernel-4\.9\.0-0\.bpo\.2-amd64$";
APT::NeverAutoRemove:: "^.*-kernel-4\.9\.0-0\.bpo\.3-amd64$";
APT::NeverAutoRemove:: "^.*-kernel-4\.9\.0-3-amd64$";
APT::NeverAutoRemove:: 
"^linux-backports-modules-.*-4\.9\.0-0\.bpo\.2-amd64$";
APT::NeverAutoRemove:: 
"^linux-backports-modules-.*-4\.9\.0-0\.bpo\.3-amd64$";

APT::NeverAutoRemove:: "^linux-backports-modules-.*-4\.9\.0-3-amd64$";
APT::NeverAutoRemove:: "^linux-tools-4\.9\.0-0\.bpo\.2-amd64$";

Bug#866002: apt-get update fails with missing InRelease file on local mirror

2017-06-26 Thread David Kalnischkies
On Mon, Jun 26, 2017 at 03:26:14PM +0200, Andreas Heinlein wrote:
> I thought that apt was supposed to try Release.gpg instead if InRelease is
> missing, but it doesn't.

It does – beside our testcases every stable user is verifying this as an
InRelease file does not exist for stable ATM for technical reasons
(which I guess the FTP masters told you, but you misunderstood it after
they misunderstood your question). So there is something very specific
about your setup at play here you haven't told us yet. :)

Please show use the COMPLETE (and at best LANG=C) output of the commands
which seem to fail for you so that we have a chance to figure it out.


You can btw generate bugreports with "reportbug" (or -ng). While that
can sent the mail directly, it can also store the mail in a file to be
sent from another machine. That help including many relevant information
pieces in the bugreport like version, configuration, …


> Turning on "Debug::Acquire::FTP=true" on the internet connected machine

FTP is very deprecated and you should start moving away from it [0].
In apt the associated ftp method is in very low-maintenance mode as
basically nobody is using it anymore… desperate the name HTTP is a lot
better for file transfers anyhow.


Best regards

David Kalnischkies

[0] https://lists.debian.org/debian-announce/2017/msg1.html


signature.asc
Description: PGP signature


Bug#866002: apt-get update fails with missing InRelease file on local mirror

2017-06-26 Thread Andreas Heinlein

Package: apt

For testing and development purposes, I have created an air-gapped 
machine and use a local mirror on hard disk (created with debmirror) for 
installation and updates. The mirror is a full mirror of the stretch, 
stretch-updates and stretch-security archives.
That method used to work fine with jessie, but fails since I upgraded to 
stretch. When I run apt-get update on the air-gapped machine, it always 
complains about a missing InRelease file in the main stretch archive. 
Indeed there is no InRelease on the official mirrors, only Release and 
Release.gpg. The Debian FTP masters told me that this was "on purpose", 
whatever that might be.
I thought that apt was supposed to try Release.gpg instead if InRelease 
is missing, but it doesn't.
Turning on "Debug::Acquire::FTP=true" on the internet connected machine 
using the official mirrors shows that it works there; but the air-gapped 
machine doesn't even try to download Release.gpg but immediately fails.


I don't know if that has anything to do with the local mirror at all, or 
if something got screwed during the update, however I have no idea where 
to look.


Thanks,
Andreas