I. Linux tips
9. Modify files of your linux without booting on it
If you broke your linux and need to undo a change, you can do it by either using a bootable key and change the file through it like showed in here or avoid running
/sbin/init. You wonder why? Then read what follows!
Change boot line in grub
The first thing to do is to edit the boot line of your distribution when you're on the grub. Generally, it's the key 'e' but it might change, depending on your system. Then go to the line starting by "linux".
In this line, add at the end (with a whitespace before):
(Or another shell, like
bash if you know its binary path.)
Or even more simple:
Then press the button to boot (in my case, this is
F10). Once done, you should be on a command line. Congrats, we have prevent the
init program to run!
We can now explore our root partition but not modify files. If you want to modify files, you'll have to remount the root partition with write rights:
mount -o remount,rw /
We can now edit files as we want. If you want to mount other partitions, run (but you'll need a write access):
Then check the format of the partition you want to mount with:
So it'll display in my case:
> blkid /dev/sda1: PARTUUID="c3554sd-sdfdsq-a454-01154875qs" /dev/mapper/vg00-lvroot: UUID="05547454-c54d-4999-bfbf-cc54557574" TYPE="ext3" /dev/mapper/vg00-lvopt: UUID="5af4d5ee-aaa4-9ef6-e254-dde475s47d" TYPE="ext3" /dev/mapper/vg00-lvvar: UUID="4599fab2-a4b7-f65e-5d4e-c47d6654ec" TYPE="ext4" /dev/mapper/vg00-lvsub: UUID="19fab277-47b1-5dfe-4235-d66dfe54ec" TYPE="ext4"
And then mount them:
mount -t [format] /dev/vg00/[partition] /[where]
So in my case (
sub is a child of
mkdir /mnt mount -t ext3 /dev/vg00/lvroot /mnt mount -t ext3 /dev/vg00/lvopt /mnt/opt mount -t ext4 /dev/vg00/lvopt /mnt/var mount -t ext4 /dev/vg00/lvopt /mnt/var/sub
Now you have everything you want in
/mnt. Then you
chroot in it to make your life a bit easier: