Red Hat Bugzilla – Bug 849338
dracut --include option does not add files from directory as intended
Last modified: 2013-07-31 19:59:29 EDT
Description of problem:
dracut --include option does not add files from directory
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. create directory of addtional files to add to initramfs
2. attempt to build dracut initramfs using --include option
3. select --verbose dracut build output
dracut build output: "cp: accessing /var/tmp/initramfs[directory of files] : No such file or directory"
files should be added to the dracut initramfs
Thank you for having the --include option, Harald. But I can't seem to get it to work. Although many of the files are symlinks even the binary files are not being added. Using the --install option works fine. But I'm trying to add an entire directory, and it's making the dracut.conf file too large and unmanageable.
Here's some additional background, and a few other minor dracut issues I'm having:
I'm using this dracut config on a fedora-arm platform. We need additional functionality from the initramfs in the event the platform fails to boot, or if a rescue shell is needed. In addition, some of the kernel drivers are quite buggy, and must be force loaded by modprobe.
The additional directory is a /bin directory of busybox and its symlinks which need to be copied to the initramfs /bin. Currently, using the dracut -a "busybox" option causes the boot process to fail. So I created a /bin directory with busybox and the symlinks. Theses files do not overwrite any of the existing dracut binaries. So it works fine. But, as noted, the files have to be installed using the --install option.
In addition to the issue with --include, I also ran into an issue with rd.driver.* (either option, respectively) not force loading the modules. I had to hack parse-kernel.sh to get that to work.
This platform, like many ARM platforms, also does not have a hard-coded MAC. Currently the only way to set the MAC is with an /etc/modprobe.d option. But that requires a dracut rebuild for each host. That is not really practical. So as a dracut feature request I would like to ask that the needed module options could be passed from the kernel cmdline with rd.driver.* or similar. Currently that fails to work using any dracut cmdline method.
As one last item to note: Many of these devices have no way to access u-boot. Therefore we need a way to access the dracut shell via the network if the device fails to boot. But, unfortunately, the rd.neednet=1 option does not bring up the network in the initramfs. Should the initramfs network be down?
Thanks again, Harald, for all your hard work!
-i, --include <SOURCE> <TARGET>
This should really work. We use that everyday in our testsuite.
What's the output, if you add the "--debug" argument?
This message is a reminder that Fedora 17 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 17. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as WONTFIX if it remains open with a Fedora
'version' of '17'.
Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version'
to a later Fedora version prior to Fedora 17's end of life.
Bug Reporter: Thank you for reporting this issue and we are sorry that
we may not be able to fix it before Fedora 17 is end of life. If you
would still like to see this bug fixed and are able to reproduce it
against a later version of Fedora, you are encouraged change the
'version' to a later Fedora version prior to Fedora 17's end of life.
Although we aim to fix as many bugs as possible during every release's
lifetime, sometimes those efforts are overtaken by events. Often a
more recent Fedora release includes newer upstream software that fixes
bugs or makes them obsolete.
Fedora 17 changed to end-of-life (EOL) status on 2013-07-30. Fedora 17 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.
If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version.
Thank you for reporting this bug and we are sorry it could not be fixed.