Установите пакет через apt с live cd в реальную систему
Я могу загрузиться только через live CD, и мне нужно установить пакет Debian firmware-linux-nonfree
на мой сервер, чтобы он мог успешно загрузиться.
Как я могу это сделать? Было бы chroot
Помоги мне?
2 ответа
Первое решение:
Вы можете установить драйвер, необходимый для загрузки в рекавери. Стоит заметить: только
/
смонтирован настолько запоминающим, что вам нужно смонтировать другой раздел, такой как/usr
или же/home
если нужноВам нужно перемонтировать
/
в режиме чтения и записи:mount -o remount,rw /
Вам просто нужно установить пакет, как вы делаете в обычном режиме.
- Пакеты, установленные в режиме восстановления, сохраняются в обычном режиме.
Еще один способ попробовать
- Загрузиться с компакт-диска
- Найдите свой жесткий диск с
fdisk -l
или жеlsblk
- Смонтируйте его с помощью этой команды ``mkdir /mnt/hdd && mount /dev/sdx /mnt/hdd
Если у вас есть отдельный загрузочный раздел, подключите его тоже.
mount -t ext2 /dev/sdx1 /mnt/hdd/boot
Теперь, чтобы получить функциональный chroot, мы должны смонтировать подсистемы proc, dev и sys:
mount -t proc none /mnt/hdd/proc mount -o bind /dev /mnt/hdd/dev mount -o bind /sys /mnt/hdd/sys
Нам нужно иметь доступ в интернет:
cp /etc/resolv.conf /mnt/hdd/etc/resolv.conf
использование
chroot /mnt/hdd /bin/bash
запустить chroot Bash- Установите пакет через apt
- Попробуй перезагрузить
На данный момент у меня недостаточно репутации, чтобы добавить похвалу к ответу @P0pR0cK5, поэтому я просто добавлю это, еслиchroot
из предыдущего ответа остановился при попытке выполнить, что привело к ошибкеfailed to run command '/bin/bash': No such file or directory
, привязка монтирования дополнительных каталогов поможет.
sudo mount -o bind /usr /mnt/hdd/usr
sudo mount -o bind /lib /mnt/hdd/lib
sudo mount -o bind /lib64 /mnt/hdd/lib64
Наконец, выдайтеchroot /mnt/hdd /bin/bash
дайте команду вернуться снова.