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 lsblkIf 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.