I can only boot via live CD and I need to install the Debian package firmware-linux-nonfree
to my server for it to be able to successfully boot.
How can I do this? Would chroot
help me ?
I can only boot via live CD and I need to install the Debian package firmware-linux-nonfree
to my server for it to be able to successfully boot.
How can I do this? Would chroot
help me ?
You can install driver needed to boot in recovery.
One things to notice : only /
is mounted so rememeber that you need to mount other partition such as /usr
or /home
if needed
You need to remount the /
in read and write mode :
mount -o remount,rw /
You just have to install your package like you're doing in normal mode.
fdisk -l
or lsblk
If you have a separate boot partition mount that too.
mount -t ext2 /dev/sdx1 /mnt/hdd/boot
Now in order to have a functional chroot, we have to mount proc, dev and sys subsystems :
mount -t proc none /mnt/hdd/proc
mount -o bind /dev /mnt/hdd/dev
mount -o bind /sys /mnt/hdd/sys
We need to have internet acces :
cp /etc/resolv.conf /mnt/hdd/etc/resolv.conf
Use chroot /mnt/hdd /bin/bash
to start a chrooted bash
As for now i don't have enough reputations to add a commend to @P0pR0cK5's answer, so I'll just append that if chroot
from the previous answer did halt while trying to execute chroot /mnt/hdd /bin/bash
resulting in the error failed to run command '/bin/bash': No such file or directory
, bind mounting additional directories would help.
sudo mount -o bind /usr /mnt/hdd/usr
sudo mount -o bind /lib /mnt/hdd/lib
sudo mount -o bind /lib64 /mnt/hdd/lib64
Finally, issue the chroot /mnt/hdd /bin/bash
command back again.