[K12OSN] FC5, Metada file does not match checksums, dialup

ssanders at coin.org ssanders at coin.org
Wed Aug 2 23:51:08 UTC 2006


I am anxiously awaiting the new release along with everyone else! A note
to dialup users, however. I am experimenting with base FC5, and it
appears that after the initial install, you must be online to install
packages from the CDs? 

This is apparently also true for FC4, but in my last fresh install of
4.4.x I am running, I went through the initial choices at length, and
installed most of what I wanted on the first pass. Updates on dialup are
lengthy of course, but doable (in small doses).

In my test FC5 box, I just installed a few things to get it running,
then later wanted to add something from CD. I got my repos scrambled for
awhile, and was puzzled to see that neither the Software Updater (pirut)
nor Yum would run (apt-get still worked). Running yum check-update
failed with a message about 'Metadata file does not match checksums,
trying next mirror'. After it went through half a dozen mirrors, I
killed it.

After some searching, I found that running 'yum clean metadata' fixed
all this!

The next problem, was to be able to install the (many) things I wanted
to from CD, instead of via dialup. A good discussion was found on 
http://www.city-fan.org/tips/YumRepoFromImages about this. In a
nutshell, it involves copying your original DVD/CD ISO images to a
directory, and using them for a local repo. If you are not online at
all, you have to disable the other ones (core, extras, updates, etc).

This was very helpful info. I know the bulk of the list is not in
dialup-land like me, but I know there are a few that are. It would be
best to install kitchen+sink initially, and just remove things later as
wanted... I am copying the FC5 info here, for the sake of future
Googlings on this subject.

thx
Scott S.

Fedora Core 5
It's particularly useful to set up a local [core] repository in Fedora
Core 5 because pirut, the standard GUI package manager application, is
built on yum and will hence take files from your local repository
instead of having to go to the Internet to get them - pirut currently
doesn't support installation from CD/DVD natively. 

Using DVD ISO
In Fedora Core 5, the installer is based on yum and so there is actually
yum repository metadata present on the DVD. This makes the process of
setting up the local repository even easier, since you don't need to
create the metadata yourself. 

     1. Create a directory for your repository and mount the DVD ISO
        there: 
                # mkdir -p /path/to/your/repo 
                # mount -r -o loop /path/to/FC-5-i386-DVD.iso /path/to/your/repo
     2. Ensure that the DVD ISO image is mounted at every reboot 
              * edit /etc/fstab and add new line: 
                
                /path/to/FC-5-i386-DVD.iso /path/to/your/repo iso9660 ro,loop 0 0 
     3. Configure yum to use your new repository 
        
              * edit /etc/yum.repos.d/fedora-core.repo 
                
              * comment out any line starting with baseurl or mirrorlist
                in the [core] repository section at the top 
                
              * add a new line: 
                baseurl=file:///path/to/your/repo 

Using CD ISO images
/!\ Note: I don't have the CD ISO images myself so I haven't tested this
procedure with Fedora Core 5. 

Creating a repository from CD ISO images is somewhat more complicated,
since there are multiple images. There are a number of approaches that
could be taken to work around this: 

      * Use something like jigdo to create a single image equivalent to
        the DVD ISO (jigdo templates for Fedora Core 5 can be found at
        http://www.jburgess.uklinux.net/jigdo/index.html) 
        
      * Mount all of the CD images simultaneously and create a symlink
        farm to the packages on each CD 
      * Copy the packages from the CD images and make a local repo
        that's independent of the original CD images 

I've chosen to take the latter approach here. 

     1. Create a directory on your system to hold the repository. It
        will need to be on a filesystem that has at least 3GB of free
        space. Then copy the RPM packages and comps.xml file from your
        CD images into it. 
        
                # mkdir -p /path/to/your/repo/RPMS 
                # cd /path/to/your/repo
                # mkdir disc1 disc2 disc3 disc4 disc5
                # mount -r -o loop /path/to/FC-5-i386-disc1.iso disc1
                # mount -r -o loop /path/to/FC-5-i386-disc2.iso disc2
                # mount -r -o loop /path/to/FC-5-i386-disc3.iso disc3
                # mount -r -o loop /path/to/FC-5-i386-disc4.iso disc4
                # mount -r -o loop /path/to/FC-5-i386-disc5.iso disc5
                # cp disc*/Fedora/RPMS/* RPMS
                # cp disc1/repodata/comps.xml .
     2. You no longer need the CD images, so you can unmount them and
        remove the mountpoint directories. 
                # umount disc1 disc2 disc3 disc4 disc5 
                # rmdir disc1 disc2 disc3 disc4 disc5
     3. Create the repository metadata. 
                # rpm -Uvh RPMS/createrepo* 
                # createrepo -g comps.xml .
     4. Configure yum to use your new repository 
        
              * edit /etc/yum.repos.d/fedora-core.repo 
                
              * comment out any line starting with baseurl or mirrorlist
                in the [core] repository section at the top 
                
              * add a new line: 
                baseurl=file:///path/to/your/repo 

Using Add/Remove Software With No Network Connection
If you want to use the Add/Remove Software application (pirut) with no
network connection, you'll need to disable all of the yum repositories
apart from your local one. By default, the only enabled repositories are
core (which is now served by your local repository), updates, and
extras. You can disable these repositories by changing the line
enabled=1 to enabled=0 in /etc/yum.repos.d/fedora-updates.repo
and /etc/yum.repos.d/fedora-extras.repo respectively. 

If at a later time you have an Internet connection available and would
like to update your system or install something from Fedora Extras, you
can enable these repositories on the yum command line without needing to
edit the .repo files again, e.g.: 

# yum --enablerepo=updates --enablerepo=extras update 
# yum --enablerepo=updates --enablerepo=extras install somepackage





More information about the K12OSN mailing list