Установите пакет через 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дайте команду вернуться снова.

Другие вопросы по тегам