My ubuntu system fails to boot after modifying file /etc/default/grub, even if I withdraw the modification later.
I have a PC with four operating systems: 1. Ubuntu with grub2; 2, Centos; 3, Debian; and 4 gentoo.
The one that that crashes is Ubuntu. That is why I post the question here.
Due to a recent update from gentoo that requires the installation of systemd, I need to change the configuration of grub2 installed in ubuntu, specifically two steps:
Modfication 1: add extra lines:
init=/usr/lib/systemd/systemd
to the menuentry of gentoo in /boot/grub/grub.cfg. This modification will definately not impact the boot of other systems.
Modfication 2: add
GRUB_CMDLINE_LINUX="init=/usr/lib/systemd/systemd"
in /etc/default/grub of Ubuntu system, which systemd is not installed. of course the second modification is not right to my case because in ubuntu there is no systemd installed (these is nothing in /usr/lib/systemd/systemd of ubuntu).
However, the second modification becomes a troublemaker. After adding this line, the system fails to boot into ubuntu (the grub menu still works). Realizing the problem, I decide to withdraw the second modification. However, when I boot ubuntu again, the system freezes with the following screen:
Target filesystem desn't have requested /usr/lib/systemd/systemd
busybox v1.20.2 (Debian 1:1.20.0-7) multi-call binary
Usage: switch_root '-c /dev/console] NEW_ROOT NEW_INIT [ARGS}
Free initramfs and switch to another root fs:
Chroot to NEW_ROOT, delete all in /, move NEW_ROOT to /.
execute NEW_INIT. PID must be 1 NEW_ROOT must be a mountpoint.
-c DEV reopen stdio to DEV
The reset can only be done by switching off and then on the pc, not rather by ctrl+alt+del.
This problem is 100% reproducable. As ubuntu fails to work, I installed grub2 from debian system. The exactly the same screen appears after I conducted the modification 2 on /etc/default/grub in debian system and rebooted debian with modification withdrawn.
Can any one please give help on this issue? now only centos is working, from which I am writting this help question in askubuntu.
/usr
is, because the system hasn't started yet. In my opinion, all your problems come from that : GRUB should never have a commandline that requires an access to/something
, hell I'm not even sure it can read that...systemd
is installed in ubuntu? If so, is the location/usr/lib/systemd/systemd
??? Maybe try looking in/bin/systemd
? It is looking for systemd in that location, but it is saying that it doesn't exist? what doesls /usr/lib/systemd/systemd ; whereis systemd
give?