CentOS6.6 Installation Failure

Home » CentOS » CentOS6.6 Installation Failure
CentOS 3 Comments

I have been installing CentOS for years using PXE, kickstart and NFS, but the procedure fails with CentOS 6.6 for some reason.

A PXE-initiated, manual install goes through all the setup steps, and once rpm installation has started, it dies after a few packages:

anaconda 13.21.229 exception report Traceback (most recent call first):
File “/usr/lib/anaconda/yuminstall.py”, line 1006, in _handleFailure
os.unlink(package.localPkg())
File “/usr/lib/anaconda/yuminstall.py”, line 196, in callback
self.ayum._handleFailure(po, trynumber)
OSError: [Errno 30] Read-only file system: ‘/mnt/source/Packages/mailcap-2.1.31-2.el6.noarch.rpm’

When a kickstart file is used instead, the installation dies at a different package.

I have tried providing the OS installation files from different machines, checked package integrity etc., but cannot figure out what is happening here.

The anaconda traceback file also has

12:19:59,354 WARNING : Failed to get file:///mnt/source/Packages/mailcap-2.1.31-
2.el6.noarch.rpm from mirror 1/1, or downloaded file is corrupt
12:19:59,354 WARNING : package download failure, retrying automatically

That said, installing 6.4 off the same NFS server works just fine.

3 thoughts on - CentOS6.6 Installation Failure

  • I would say to eliminate issues, the first thing to make sure is that your mailcap package is, indeed, good.

  • Summary: it’s a good package, but the wrong package for the location.

    I downloaded the package from a different mirror, and the install proceeds past it. However, now it stops at redhat-logos, with the same error

    An interesting observation: I now have several copies of the mailcap package on my system. When I compare md5sums, I see this:

    CentOS 6.4 tree:

    029213d1c7b79c0dfa4f6d8063dbdce6 mailcap-2.1.31-2.el6.noarch.rpm (i386)
    65e231403f819bea3dce22adee5cb373 mailcap-2.1.31-2.el6.noarch.rpm (x86_64)

    CentOS 6.6 tree, where the x86_64 version was replaced with a fresh copy:

    029213d1c7b79c0dfa4f6d8063dbdce6 mailcap-2.1.31-2.el6.noarch.rpm (i386)
    029213d1c7b79c0dfa4f6d8063dbdce6 mailcap-2.1.31-2.el6.noarch.rpm (x86_64)
    65e231403f819bea3dce22adee5cb373 mailcap-2.1.31-2.el6.noarch.rpm.dist (previous)

    The packages in 6.4 are different for each arch, but in 6.6 they are the same. It appears this relates to how precisely you guys build a distribution?

    IIRC I took a shortcut when upgrading my repositories from 6.x -> 6.x+1
    by pre-populating the directories with the previous version to save some b/w. This could be the reason for what I see here.

    Now, if there were checksum files for everything, I knew which rpms I need to download again, but there aren’t. Looks like the noarch packages are a good start, though.

  • All the noarch packages from now on will be the same … in some of the earlier distros they were not. When you build i386/i686 and x86_64
    separately, 2 noarch rpms are produced.

    It is not that they are significantly different, JUST the signature times were different before as they were signed separately .. but obviously we wanted to only have one package, so we have changed such that there is only one package (and all our metadata is also changed). We also will carry this forward for all versions all the time.

    Basically, if you remove all noarch files from the tree and rsync, you should be good.

    Thanks, Johnny Hughes