I was crossgrading Debian Stretch from i386 to amd64. The kernel is already 64-bit, so is dpkg/apt. I was going through the rest of the packages, and then I had to reboot the box.
Upon reboot, it goes into the recovery mode (initramfs). There are the following messages:
/scripts/local-premount/resume: line 34: /bin/resume: not found
/dev/sda1: recovering journal
/dev/sda1: clean
/init: line 267: run-init: not found
Target filesystem doesn't have requested /sbin/init
/init: line 267: run-init: not found
/init: line 267: run-init: not found
/init: line 267: run-init: not found
/init: line 267: run-init: not found
/init: line 272: run-init: not found
No init found. Try passing init= boot argument.
And then there's the busybox prompt.
The hard drive (/dev/sda1) is mounted into /root. fsck reports no issues. /sbin/init
is present there, it's a symlink to /lib/systemd/systemd
, which also exists (but remains 32-bit).
I can remount the hard drive as R/W and chroot into it. In that mode, I can get get some of the regular Debian stuff, like dpkg, to work. No network though, so no apt-get.
Please, what could be wrong with the boot environment? What else should I check? It's most likely something I did during the crossgrade process, not hardware or filesystem corruption.
EDIT: using another Debian box, found a tool called run-init
. It's under /usr/lib/klibc/bin
, comes in the klibc-tools package, and has to do with the initramfs operation. I'll try installing that. Now, if I could figure out a way to copy files to this box...