issues with dracut

Scott van Looy scott at ethosuk.net
Sat Jan 21 10:36:03 UTC 2012


Hello!

I had some problems with dracut on my server, upgrading kernels led to a "non fatal" error when using yum, which was dracut not writing out an initramfs, in turn making my server unbootable. Non fatal it was not.

I spent some time manually installing kernels, then with the help of (the? One of the?) maintainers of dracut found that running the command "sh -x dracut..." worked.

Annoying, but I could live with it. Eventually, I got frustrated. I use Bash, so I figured there must've been something in Bash's config that had gone awry, leading to the problem. So I removed Bash, deleted all of its config files and reinstalled it. Magically, this seemed to work.

For a time.

The next three upgrades were seamless and worked perfectly. Then I upgraded again recently and the same error came back.

===============================================
Package(s) data still to download: 26 M
kernel-3.1.9-1.fc16.x86_64.rpm                                                                              |  26 MB     00:03     
Running Transaction Check
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : kernel-3.1.9-1.fc16.x86_64                                                                                      1/1 
Non-fatal POSTTRANS scriptlet failure in rpm package kernel-3.1.9-1.fc16.x86_64

Installed:
  kernel.x86_64 0:3.1.9-1.fc16                                                                                                     

Complete!
[root at foo boot]# 
================================================

A very cheery "Complete!" that leaves my system unable to boot. Good job I don't have auto updates turned on...

Anyway, trying to manually run dracut:
which dracut
/sbin/dracut

dracut initramfs-3.1.9-1.fc16.x86_64.img 3.1.9-1.fc16.x86_64

inside of /boot

...and it simply prints out the help, as if I'd not specified any arguments on the command line.

So I remove bash again and try again:
===============================================
rpm -ef --nodeps bash
rm -rf /var/share/doc/bash-4.1.*
cd /etc
rm -rf bash_completion.d/ bashrc
yum install bash
yum reinstall kernel

Reinstall     1 Package

Total download size: 26 M
Installed size: 121 M
Is this ok [y/N]: y
Downloading Packages:
Setting up and reading Presto delta metadata
Processing delta metadata
Package(s) data still to download: 26 M
kernel-3.1.9-1.fc16.x86_64.rpm                                                                              |  26 MB     00:02     
Running Transaction Check
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : kernel-3.1.9-1.fc16.x86_64                                                                                      1/1 

Installed:
  kernel.x86_64 0:3.1.9-1.fc16                                                                                                     

Complete!

===============================================

As you can see, this worked. Boot has a shiny new initramfs and if I reboot I suspect I'll get a server back pretty sharpish.

Does anyone have _any_ suggestion as to what could be causing this? Or why such a fatal error would be classed as non-fatal? Or why bash would affect dracut? Surely it shouldn't rely on env variables or anything?

Confused,

Scott :)



More information about the users mailing list