Follow that guide again, but after the chroot
command, try the following before running dpkg -a --configure
:
mount -t proc proc /proc
mount -t devtmpfs none /dev
And before running exit
, remember to umount
:
umount /proc
umount /dev
When you have no init or other processes beside your shell, there is almost nothing to shutdown. In fact, the only important thing is the filesystem – sync it, then unmount all on-disk filesystems or remount as read-only (if they cannot be unmounted, for example, the rootfs):
sync
umount /home
mount -o remount,ro /
After this, you might as well pull the plug.
Another thing you could try (but I haven't) is to start the original init. Make sure no processes aside from your pid1 shell are running, then change to root directory and exec init:
cd /
sync
exec /sbin/init
exec
replaces the current process with the one given, so started this way /sbin/init will take the special pid 1 from your shell.
However, if pid 1 ever exits, the kernel will immediately panic – so make sure you at least sync
the filesystems before doing this.
When the kernel panics, it prints out a message, starts flashing the keyboard LEDs, and stops everything else – it stops even the loop that normally tells the CPU to remain idle; this probably is what causes the Caps Lock madness and the high CPU use by your virtual machine.
Your "some guy" was right – in real single-user mode, typing exit
will usually switch to multi-user or at least clean-reboot. However, init=/bin/bash
does not start this mode; it does not start anything at all, besides the kernel and the bash
shell. To reach the real single-user mode, you would need to add single
to the kernel command line. (Sometimes 1
or s
works, but not all distributions use runlevels.) In Ubuntu, this used to be called "Recovery mode".
Best Answer
The system is having severe trouble reading off of your hard disk. It's likely that the disk is dead (almost certain), but it could be something as simple as a loose/disconnected cable (don't count on it). There isn't anything you can do to troubleshoot it from here. Just power it off.
Check for loose connections on your hard disk. If everything is fine there boot from a rescue disk and run fsck or badblocks from there.
I hope you have a back up.