Hide Forgot
Description of problem: When building an initramfs with dracut, the inst_xxxx functions are sometimes used to copy files to the initramfs. If it detects that the file being copied is a symlink, it is smart enough to copy the original file and then make a symlink inside the initramfs pointing to the original file. Unfortunately, if the symlink and original file are not in the same directory, this may fail since the parent directory of the symlink might not exist. Version-Release number of selected component (if applicable): dracut-006-6.fc14.noarch A simple reproduction case is: # mkdir /usr/share/some-other-dir # mv /usr/share/pixmaps/system-logo-white.png /usr/share/some-other-dir/ # ln -s /usr/share/some-other-dir/system-logo-white.png /usr/share/pixmaps/ # dracut --force ln: creating symbolic link `/tmp/initramfs.k6dTa3/usr/share/pixmaps/system-logo-white.png': No such file or directory The issue seems to be that /usr/share/pixmaps doesn't exist in the initramfs. Actual results: The directory of the actual file exists in the ramfs, but the directory of the symlink doesn't. Expected results: Both directories should exist.
yes, should be fixed with http://git.kernel.org/?p=boot/dracut/dracut.git;a=commitdiff;h=11adeb7c011a8f17632847dbef3441136cb422a7 and http://git.kernel.org/?p=boot/dracut/dracut.git;a=commitdiff;h=fe9cdf741f813867b3c0f0172299157c6f2a5847