Repo refresh fails: File '/repodata/repomd.xml' not found

Yast Software Management tool fails to refresh two of the repos:

I am trying to install leap 42.2 on a virtual machine.
Install seemd to work fine, but I am unable to refresh all repo’s from yast/zypper due to a wierd error (that looks different to other posts on the subject).

Output of ‘zypper --verbose ref’…


 jonb:~> sudo zypper --verbose ref
Verbosity: 1                                                                                                                                                                                         
Initialising Target                                                                                                                                                                                  
Specified repositories:                                                                                                                                                                              
Checking whether to refresh metadata for openSUSE-42.2-0                                                                                                                                             
Repository 'openSUSE-42.2-0' is up to date.                                                                                                                                                          
Skipping disabled repository 'openSUSE-Leap-42.2-Debug'                                                                                                                                              
Skipping disabled repository 'openSUSE-Leap-42.2-Debug-Non-Oss'                                                                                                                                      
Skipping disabled repository 'openSUSE-Leap-42.2-Update-Debug'                                                                                                                                       
Skipping disabled repository 'openSUSE-Leap-42.2-Update-Debug-Non-Oss'                                                                                                                               
Checking whether to refresh metadata for openSUSE-Leap-42.2-Non-Oss                                                                                                                                  
Retrieving repository 'openSUSE-Leap-42.2-Non-Oss' metadata .Retrieving: repomd.xml.asc [error]                                                                                                     
Retrieving: repomd.xml.key [error]                                                                                                                                                                   
Retrieving: repomd.xml [error]                                                                                                                                                                       
File '/repodata/repomd.xml' not found on medium 'http://download.opensuse.org/distribution/leap/42.2/repo/non-oss/'                                                                                  
                                                                                                                                                                                                     
Abort, retry, ignore? [a/r/i/? shows all options] (a): i                                                                                                                                             
error]                                                                                                                                                                                               
Repository 'openSUSE-Leap-42.2-Non-Oss' is invalid.                                                                                                                                                  
[repo-non-oss|http://download.opensuse.org/distribution/leap/42.2/repo/non-oss/] Valid metadata not found at specified URL
History:
 - SKIP request: User-requested skipping of a file
 - Can't provide /repodata/repomd.xml

Please check if the URIs defined for this repository are pointing to a valid repository.
Skipping repository 'openSUSE-Leap-42.2-Non-Oss' because of the above error.
Checking whether to refresh metadata for openSUSE-Leap-42.2-Oss
Retrieving repository 'openSUSE-Leap-42.2-Oss' metadata .Retrieving: repomd.xml.asc [error]
Retrieving: repomd.xml.key [error]
Retrieving: repomd.xml [error]
File '/repodata/repomd.xml' not found on medium 'http://download.opensuse.org/distribution/leap/42.2/repo/oss/'

Abort, retry, ignore? [a/r/i/? shows all options] (a): i
error]
Repository 'openSUSE-Leap-42.2-Oss' is invalid.
[repo-oss|http://download.opensuse.org/distribution/leap/42.2/repo/oss/] Valid metadata not found at specified URL
History:
 - SKIP request: User-requested skipping of a file
 - Can't provide /repodata/repomd.xml

Please check if the URIs defined for this repository are pointing to a valid repository.
Skipping repository 'openSUSE-Leap-42.2-Oss' because of the above error.
Skipping disabled repository 'openSUSE-Leap-42.2-Source'
Skipping disabled repository 'openSUSE-Leap-42.2-Source-Non-Oss'
Checking whether to refresh metadata for openSUSE-Leap-42.2-Update
Retrieving: repomd.xml [done]
Repository 'openSUSE-Leap-42.2-Update' is up to date.
Checking whether to refresh metadata for openSUSE-Leap-42.2-Update-Non-Oss
Retrieving: repomd.xml [done]
Repository 'openSUSE-Leap-42.2-Update-Non-Oss' is up to date.
Some of the repositories have not been refreshed because of an error.


Apparently zypper uses curl, so I tried that, and it works fine (I have replaced proxy name/ip with XXXX)…


jonb:~> curl -v http://download.opensuse.org/distribution/leap/42.2/repo/oss/suse/repodata/repomd.xml                                             
* Hostname was NOT found in DNS cache                                                                                                                          
*   Trying XXXX...                                                                                                                                      
* Connected to XXXX (XXXX) port 8080 (#0)                                                                                          
> GET http://download.opensuse.org/distribution/leap/42.2/repo/oss/suse/repodata/repomd.xml HTTP/1.1                                                           
> User-Agent: curl/7.37.0                                                                                                                                      
> Host: download.opensuse.org                                                                                                                                  
> Accept: */*                                                                                                                                                  
> Proxy-Connection: Keep-Alive                                                                                                                                 
>                                                                                                                                                              
< HTTP/1.1 200 OK                                                                                                                                              
< Date: Fri, 09 Dec 2016 14:56:37 GMT                                                                                                                          
* Server Apache/2.2.12 (Linux/SUSE) is not blacklisted                                                                                                         
< Server: Apache/2.2.12 (Linux/SUSE)                                                                                                                           
< X-Prefix: 15.203.160.0/20                                                                                                                                    
< X-AS: 7430                                                                                                                                                   
< Last-Modified: Wed, 09 Nov 2016 10:38:33 GMT                                                                                                                 
< ETag: "69b-540dbdbc9bc40"                                                                                                                                    
< Accept-Ranges: bytes                                                                                                                                         
< Content-Length: 1691                                                                                                                                         
< Cache-Control: must-revalidate                                                                                                                               
< Expires: Fri, 09 Dec 2016 14:56:37 GMT                                                                                                                       
< Content-Type: text/xml                                                                                                                                       
< Proxy-Connection: Keep-Alive                                                                                                                                 
< Connection: Keep-Alive                                                                                                                                       
< Age: 0                                                                                                                                                       
<                                                                                                                                                              
<?xml version="1.0" encoding="UTF-8"?>
<repomd xmlns="http://linux.duke.edu/metadata/repo" xmlns:rpm="http://linux.duke.edu/metadata/rpm">
  <revision>1478687121</revision>
  <tags>
    <repo>obsproduct://build.opensuse.org/openSUSE:Leap:42.2/openSUSE/42.2/ftp/x86_64</repo>
  </tags>
  <data type="filelists">
    <location href="repodata/c9fea3ed059382a1d7cc0d12cd8493d118d6795adf21599438faa2f013345043-filelists.xml.gz" />
    <checksum type="sha256">c9fea3ed059382a1d7cc0d12cd8493d118d6795adf21599438faa2f013345043</checksum>
    <timestamp>1478687859</timestamp>
    <size>19330688</size>
    <open-size>269264386</open-size>
    <open-checksum type="sha256">c9554c49751269cd76d518bac6d52ee434adc24ce45fd07bda8ea2e33027845e</open-checksum>
  </data>
  <data type="other">
    <location href="repodata/696f40fa8123c2407765ac5549b294dd7d97c6e9bd42a873dc6b700a8fe420b3-other.xml.gz" />
    <checksum type="sha256">696f40fa8123c2407765ac5549b294dd7d97c6e9bd42a873dc6b700a8fe420b3</checksum>
    <timestamp>1478687859</timestamp>
    <size>88790203</size>
    <open-size>435060755</open-size>
    <open-checksum type="sha256">2e79d8994411d128116cd9058aff481e1c104bf0a1c3a778328262b39edf9bee</open-checksum>
  </data>
  <data type="primary">
    <location href="repodata/cfcb5ac96c85b64de5f77aa14a1a06e38ec6c46c106749fd03599c61445c8f9a-primary.xml.gz" />
    <checksum type="sha256">cfcb5ac96c85b64de5f77aa14a1a06e38ec6c46c106749fd03599c61445c8f9a</checksum>
    <timestamp>1478687859</timestamp>
    <size>9482032</size>
    <open-size>71280833</open-size>
    <open-checksum type="sha256">0e4fbb82c4c911b7dcf16268da163b9fbb249a8b20155d2fc6a2d191c1df24ae</open-checksum>
  </data>
</repomd>
* Connection #0 to host XXX left intact

For what it’s worth I can also see the url no problem with firefox.
And wget works fine too.

Other info that may be relevant…

  • am using virtualbox
  • VM IP address is a static IP
  • Virtual box is using “Bridged Adaptor”
  • We have a proxy, that is configured and seems to work ok

jonb:~> zypper repos -u
#  | Alias                     | Name                                    | Enabled | GPG Check | Refresh | URI                                                                     
---+---------------------------+-----------------------------------------+---------+-----------+---------+-------------------------------------------------------------------------
 1 | openSUSE-42.2-0           | openSUSE-42.2-0                         | Yes     | (r ) Yes  | No      | cd:///?devices=/dev/disk/by-id/ata-VBOX_CD-ROM_VB0-01f003f6             
 2 | repo-debug                | openSUSE-Leap-42.2-Debug                | No      | ----      | Yes     | http://download.opensuse.org/debug/distribution/leap/42.2/repo/oss/     
 3 | repo-debug-non-oss        | openSUSE-Leap-42.2-Debug-Non-Oss        | No      | ----      | Yes     | http://download.opensuse.org/debug/distribution/leap/42.2/repo/non-oss/ 
 4 | repo-debug-update         | openSUSE-Leap-42.2-Update-Debug         | No      | ----      | Yes     | http://download.opensuse.org/debug/update/leap/42.2/oss/                
 5 | repo-debug-update-non-oss | openSUSE-Leap-42.2-Update-Debug-Non-Oss | No      | ----      | Yes     | http://download.opensuse.org/debug/update/leap/42.2/non-oss/            
 6 | repo-non-oss              | openSUSE-Leap-42.2-Non-Oss              | Yes     | ( p) Yes  | Yes     | http://download.opensuse.org/distribution/leap/42.2/repo/non-oss/       
 7 | repo-oss                  | openSUSE-Leap-42.2-Oss                  | Yes     | ( p) Yes  | Yes     | http://download.opensuse.org/distribution/leap/42.2/repo/oss/           
 8 | repo-source               | openSUSE-Leap-42.2-Source               | No      | ----      | Yes     | http://download.opensuse.org/source/distribution/leap/42.2/repo/oss/    
 9 | repo-source-non-oss       | openSUSE-Leap-42.2-Source-Non-Oss       | No      | ----      | Yes     | http://download.opensuse.org/source/distribution/leap/42.2/repo/non-oss/
10 | repo-update               | openSUSE-Leap-42.2-Update               | Yes     | (r ) Yes  | Yes     | http://download.opensuse.org/update/leap/42.2/oss/                      
11 | repo-update-non-oss       | openSUSE-Leap-42.2-Update-Non-Oss       | Yes     | (r ) Yes  | Yes     | http://download.opensuse.org/update/leap/42.2/non-oss/

Any ideas as to how to proceed gratefully received!

Thanks in advance!

Have you checked “/etc/resolv.conf” on that virtual machine?

Yes - it seems to work ok.
I have our nameservers configured.


jonb:~> host download.opensuse.org
download.opensuse.org has address 195.135.221.134
download.opensuse.org has IPv6 address 2001:67c:2178:8::13

Hi
I wonder if it’s an ipv6 issue not getting to a mirror in your locale, can you add a mirror from the list here;
http://download.opensuse.org/source/distribution/leap/42.2/repo/non-oss/suse/repodata/repomd.xml.mirrorlist

Disable the other one not working and see how that goes.

You might need to test for ipv4 and ipv6 depending on what your using.

I had disabled ipv6 altogether - this had been reported as a potential issue in other similar-ish threads.

I disabled the two problem repos and added in a couple of others from the mirror source you mentioned, and now all is ok.
I do not understand, I must say - especially when curl, wget and firefox seem ok.

Any ideas as to the root cause?

And thanks for the suggestion!

Things are transitioning to ipv6

Hi
Maybe a bug? Like user gogalthorp indicates an ipv6 transition issue? What about curl --ipv6 <url> or wget --inet6-only <url> in firefox about:config is ipv6 disabled?

how did you add mirror from the mirror list? I have the same problem while refreshing the zypper