Bug 842902 - doesn't install symlinks properly
Summary: doesn't install symlinks properly
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: dracut
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: dracut-maint
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-07-24 21:22 UTC by Bill Nottingham
Modified: 2014-03-17 03:31 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-11-29 15:58:22 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
gzipped debug.txt (308.79 KB, application/octet-stream)
2012-07-25 19:57 UTC, Bill Nottingham
no flags Details
ltrace log (4.00 KB, text/plain)
2012-07-26 18:09 UTC, Bill Nottingham
no flags Details

Description Bill Nottingham 2012-07-24 21:22:01 UTC
Description of problem:

dracut cannot create a working initramfs. Looking at the generated initramfs, it has symlinks such as:

lib -> ../../../ar/tmp/initramfs.<mktemp spew>/usr/lib

Obviously, this doesn't work.

dracut-018-78.git20120622.fc17 works ok, modulo the systemd incompatibilities.

Version-Release number of selected component (if applicable):

dracut-022-5.git20120723.fc18.x86_64

\

Comment 1 Harald Hoyer 2012-07-25 10:45:42 UTC
wow... how did you run into this?

can you please post the output of:

# dracut -f test.img --debug &> debug.txt

?

Comment 2 Harald Hoyer 2012-07-25 10:47:30 UTC
lrwxrwxrwx   1 root     root            7 Jul 23 15:25 lib -> usr/lib

looks good here.

Comment 3 Harald Hoyer 2012-07-25 10:48:05 UTC
what is the ouput of:

# ls -al /

Comment 4 Bill Nottingham 2012-07-25 19:56:43 UTC
[root@weirzbowski /]# ls -al /
total 176
dr-xr-xr-x.  20 root root  4096 Jul 25 15:53 .
dr-xr-xr-x.  20 root root  4096 Jul 25 15:53 ..
lrwxrwxrwx.   1 root root     7 Jul 25 15:53 bin -> usr/bin
dr-xr-xr-x.   6 root root  4096 Jul 24 15:08 boot
drwxr-xr-x.  18 root root  3580 Jul 25 11:25 dev
drwxr-xr-x. 154 root root 12288 Jul 25 15:16 etc
drwxr-xr-x.   4 root root  4096 Jul 19 10:58 home
lrwxrwxrwx.   1 root root     7 Jul 25 15:53 lib -> usr/lib
lrwxrwxrwx.   1 root root     9 Jul 25 15:53 lib64 -> usr/lib64
drwx------.   2 root root 16384 Mar 24 14:30 lost+found
drwxr-xr-x.   2 root root  4096 Jul 19 10:58 media
drwxr-xr-x.   2 root root     0 Jul 25 11:25 misc
drwxr-xr-x.   2 root root  4096 Jul 19 10:58 mnt
drwxr-xr-x.   2 root root     0 Jul 25 11:25 net
drwxr-xr-x.   2 root root  4096 Jul 19 10:58 opt
dr-xr-xr-x. 177 root root     0 Jul 25 11:25 proc
-rw-r--r--.   1 root root 97321 Jul 10 15:35 .readahead
dr-xr-x---.  21 root root 12288 Jul 25 15:14 root
drwxr-xr-x.  41 root root  1460 Jul 25 15:52 run
lrwxrwxrwx.   1 root root     8 Jul 25 15:53 sbin -> usr/sbin
drwxr-xr-x.   1 root root   122 Jul 19 10:58 srv
dr-xr-xr-x.  13 root root     0 Jul 25 11:25 sys
drwxrwxrwt.  18 root root   420 Jul 25 15:16 tmp
drwxr-xr-x.  13 root root  4096 Jul 24 14:31 usr
drwxr-xr-x.  20 root root  4096 Jul 24 17:18 var

Comment 5 Bill Nottingham 2012-07-25 19:57:20 UTC
Created attachment 600388 [details]
gzipped debug.txt

Comment 6 Harald Hoyer 2012-07-26 07:21:37 UTC
very very odd... can you try this?

$ rm -fr /var/tmp/initramfs.P9CSWu
$ mkdir -m 0755 -p /var/tmp/initramfs.P9CSWu/usr/bin
$ /usr/lib/dracut/dracut-install --debug -D /var/tmp/initramfs.P9CSWu /bin /bin
dracut-install: dracut_install('/bin', '/bin')
dracut-install: dracut_install('/usr/bin', '/usr/bin')
dracut-install: '/var/tmp/initramfs.P9CSWu/usr/bin' already exists
dracut-install: ln -s 'usr/bin' '/var/tmp/initramfs.P9CSWu/bin'

Comment 7 Harald Hoyer 2012-07-26 07:24:18 UTC
$ rpm -q glibc; uname -r
glibc-2.16-5.fc18.x86_64
3.5.0-0.rc7.git0.1.fc18.x86_64

Comment 8 Bill Nottingham 2012-07-26 16:25:04 UTC
[root@weirzbowski ~]# /usr/lib/dracut/dracut-install --debug -D /var/tmp/initramfscow/ /bin /bin
dracut-install: dracut_install('/bin', '/bin')
dracut-install: dracut_install('/usr/bin', '/usr/bin')
dracut-install: '/var/tmp/initramfscow//usr/bin' already exists
dracut-install: ln -s '../../../ar/tmp/initramfscow//usr/bin' '/var/tmp/initramfscow//bin'

[root@weirzbowski ~]# rpm -q glibc ; uname -r
glibc-2.16-3.fc18.x86_64
3.4.3-1.fc17.x86_64

Comment 9 Harald Hoyer 2012-07-26 17:31:23 UTC
Can you please strace and ltrace that?

Comment 10 Bill Nottingham 2012-07-26 18:09:43 UTC
Created attachment 600573 [details]
ltrace log

Comment 11 Bill Nottingham 2012-07-26 18:14:20 UTC
What *may* be happening here is that /var/tmp is a symlink to /srv/tmp?

Comment 12 Harald Hoyer 2012-07-27 04:20:32 UTC
(In reply to comment #11)
> What *may* be happening here is that /var/tmp is a symlink to /srv/tmp?

So "/ar/tmp" exists?

Comment 13 Harald Hoyer 2012-07-27 04:52:51 UTC
does dracut-022-63.git20120727.fc18 fix the issue?

Comment 14 Bill Nottingham 2012-07-27 14:09:48 UTC
It fixes this, yes. (systemd fails to start everything up, but that seems unrelated to dracut).

Thanks!


Note You need to log in before you can comment on or make changes to this bug.