Next Change →
side by side
lines around each change
White space changes
09/28/09 17:06:13 (7 years ago)
Add best practise options section.
4. Now, every time you modify, remove or add a new RPM package to /srv/my/repo you need to recreate the repository metadata. You do that by running createrepo the same way you did in step 2.
== Recommended options ==
While running plain createrepo on it's own will work, and is generally the most compatible, it is recommended that you add extra options if you know you've only got newer yum clients.
1. --database, this creates the .sqlite databases on the server saving time on every client. There is no downside to doing this, as older versions of yum will just ignore the .sqlite files and get the .xml files.
2. --unique-md-filenames, this names all the metadata files be uniquely. This is most useful if you are using mirrors. Versions of yum before 3.2.10 will not clean up correctly.
3. --changelog-limit, limit changelog entries to save on download time.
4. --deltas --oldpackagedirs, this creates delta information, to save on download time. Clients must have yum-presto installed to take advantage of this data.
== More Advanced options ==
This will create a repomd.xml.asc file in the repodata directory which for modern versions of yum this will allow yum to verify that the repository metadata came from the owner of the gpg key.
4. You can change the internal checksum used
createrepo --checksum /srv/my/repo
This should only be needed if you are creating the repodata on a machine with a newer version of python than on the clients (or one with python-hashlib installed).
If you want to learn more about using createrepo to create and maintain your own package repository please see the createrepo man page or the other documents in this collection.
Hosting provided by