[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: /bin/run-init: /sbin/init: No such file or directory.



On 2013-03-01 21:22 +0100, Kirk Ismay wrote:

> I have a virtual lenny system (2.6.26-2-amd64) running on VMWare VCenter.
>
> For testing and quality assurance, I am trying to create a clone of
> the machine under VirtualBox running on my development workstation.
>
> I booted from a rescue cd image and created a disk with an identical
> partition layout as the live system, formatted the filesystems and
> then used rsync to copy the filesystem from the live system to the new
> test vm.
>
> I can't boot the test vm without getting this message on boot:
> /bin/run-init: /sbin/init: No such file or directory.
>
> If I set break=bottom at boot, I can mount and view the root
> filesystem.  So /bin/bash and /sbin/init do exist at boot time.
>
> I also can't chroot to the root filesystem from the rescue cd
> environment. Chroot reports:
> chroot: cannot run command `/bin/bash': No such file or directory

This indicates that the ELF interpreter (/lib64/ld-linux-x86-64.so.2 on
amd64 systems) is missing, you'd get the same error message for every
dynamically linked executable then.  It's a bit confusing, but the
kernel just returns ENOENT, and the userspace programs don't have enough
information to tell you _which_ file is missing.

> /dev & /proc are bind mounted on the root file system when I run
> chroot. I've tried both the chroot on the rescue cd and the root
> filesystem.
>
> I have extracted the coreutils, bash, and sysvinit packages from
> archive.debian.org to the root filesystem and can verify that
> /sbin/init, /bin/bash, and /usr/sbin/chroot do in fact exist. Here are
> the md5sums:
>
> 23f5429412b98a704b888704b7504b7b  /mnt/bin/bash
> 25362d91e139e55a406cfbc2333484d0  /mnt/sbin/init
> 92ce55e8137b60d05788b8c711d4d44d  /mnt/usr/sbin/chroot
>
> The VirtualBox host and rescue cd image are AMD64 linux also.  I also
> tried the lenny64 business card image.
> I have run out of ideas.   Any suggestions would be helpful.

You should have the following files and symlinks (indicated by "->") in
the chroot:

/lib/ld-2.7.so
/lib/ld-linux-x86-64.so.2 -> ld-2.7.so
/lib64 -> /lib
/lib/libc-2.7.so
/lib/libc.so.6 -> libc-2.7.so

I suspect one of these has gone AWOL.

Cheers,
       Sven


Reply to: