Archlinux не смог загрузиться: не могу получить доступ tty: управление заданиями выключено

Попробуйте:

$ sudo lsof /dev/sdb1 

lsof выдаст пустой вывод без надлежащего (root) разрешения на диск. Если программа резервного копирования не запущена, отключение более чем вероятно "нормально".

1
18.11.2018, 15:22
3 ответа

Если обновление было прервано, а ядро ​​находилось в процессе обновления, у вас, вероятно, все еще есть initramfs старого ядра в /bootпри установленном новом ядре, что может помешать загрузке. Это также может произойти в только что установленной системе, если вы забыли правильно смонтировать раздел /boot.

Самый простой способ исправить это — загрузиться с установочного носителя archlinux, выполнить chrootи переустановить ядро, используяpacman

# mount /dev/yourrootdisk /mnt
# mount /dev/yourbootdisk /mnt/boot # if needed
# mount /dev/yourefipartition /mnt/boot/EFI # if you use EFI (optionnal)
# arch-chroot /mnt
# pacman -S linux

Файлы, которые следует изменить, это /boot/initramfs-linux.imgи /boot/initramfs-linux-fallback.img, поэтому вам, вероятно, не нужно монтировать раздел EFI

Если по какой-то причине вы не можете использовать pacman, вы также можете запустить mkinitcpioвручную, чтобы перегенерировать initramfs для использования нового ядра

5
27.01.2020, 23:23

Текст can't access tty: job control turned off— это просто уведомление оболочки о том, что управление заданиями не работает, это означает, что вы не можете остановить программу с помощью Ctrl+C или Ctrl+Z .

Проблема видна в строках выше и, возможно, в том, что выше этих строк:

Warning: /lib/modules/4.19.1-arch1-1-ARCH/modules.devname not found - ignoring
mount: /new_root: unknown filesystem type 'ext4'

Похоже, что модули ядра не найдены, а значит, нет модуля ext4и, следовательно, нет монтирования ext4корневой файловой системы.

Большинство дистрибутивов не удаляют старое ядро ​​на случай, если с новым что-то не так, поэтому попробуйте загрузить предыдущее ядро.

Если это не сработает, загрузите действующую систему и либо установите предыдущее ядро ​​с соответствующими модулями, либо новое ядро, либо любое работающее ядро.

Также возможно, что что-то было не так с созданием файловой системы initrd, которая ext4не была включена по каким-то причинам. В этом случае вы можете загрузить работающую систему, пересоздать initrd с ext4и перезагрузиться.

0
27.01.2020, 23:23

команда ниже освободи меня,

mdev -s

моя команда qemu

qemu-system-x86_64 \
    -s \
    -kernel bzImage \
    -initrd initrd.img.gz \
    -smp 4 \
    -m 1024 \
    -append "console=ttyS0 root=/dev/ram " \
    -monitor vc -serial stdio \
    -nographic

и я добавляю mdev -s в свой файл /init.

Надеюсь, это поможет.

0
16.12.2020, 05:32

Теги

Похожие вопросы