Undestanding reposync and these *-updateinfo.xml.gz files

Latest response

Hi folks,
Currently I'm thinking a lot about reposync and the *-updateinfo.xml files containing the errata information. But lets start at the beginning with what I have done.

I've setup a machine with RHEL 7, registered it to the Customer Portal and attached a developer subscription. Then I've installed reposync and createrepo to mirror some of the repos to my local machine. To do that I've run the script do_reposync.sh from my poor man's mirror which I've tinkered together some time ago. This script just runs reposync on some repo ids and createrepo afterwards.

After the first run yesterday I've ended up with the expected directory structure which looks like:

$ ls /data/bits-rhel-7-test-mirror/*
/data/bits-rhel-7-test-mirror/rhel-7-server-extras-rpms:
comps.xml
Packages
repodata

/data/bits-rhel-7-test-mirror/rhel-7-server-optional-rpms:
comps.xml
Packages
repodata

/data/bits-rhel-7-test-mirror/rhel-7-server-rpms:
comps.xml
Packages
repodata

/data/bits-rhel-7-test-mirror/rhel-7-server-supplementary-rpms:
comps.xml
Packages
productid
repodata

/data/bits-rhel-7-test-mirror/rhel-server-rhscl-7-rpms:
comps.xml
Packages
repodata

I've run reposync with option -n so the resulting sizes are:

$ du -sh /data/bits-rhel-7-test-mirror/*
256M  /data/bits-rhel-7-test-mirror/rhel-7-server-extras-rpms
6,4G  /data/bits-rhel-7-test-mirror/rhel-7-server-optional-rpms
4,5G  /data/bits-rhel-7-test-mirror/rhel-7-server-rpms
506M  /data/bits-rhel-7-test-mirror/rhel-7-server-supplementary-rpms
4,9G  /data/bits-rhel-7-test-mirror/rhel-server-rhscl-7-rpms

All looks good. Today, I ran the same script again. I didn't notice any change in directory size but in all directories I found a *-updateinfo.xml.gz file, now. As far as I know these files contain errata information like RHSA, RHBA and RHEA. From what I've read in [0] these files should not be created for local repositories.

So my questions are:

  1. Why were these files pulled by the second run of reposync but not by the first one?
  2. Could I use them to insert the errata information into to the local repositories instead of getting them from the local cache like described in [0]?
  3. On my production system I have around 300 of these files. I guess I have to clean them up myself (e.g. by script)?

[0] How to update security Erratas on system which is not connected to internet ?

Responses