Случайно переименовал ld-linux-aarch64.so.1

В моей системе командной строки Ubuntu я случайно переименовал / lib / ld-linux-aarch64 .so.1 файл. Это привело к тому, что я не могу использовать никакие команды bash / dash / sh и больше не могу использовать mv для восстановления имени файла. Есть не так много команд, которые я могу выполнить и передать / bin / bash или / bin / dash , поскольку команда также не работает и продолжает говорить: -bash: / bin / dash: нет такого файла или каталога , -bash: / bin / ls: нет такого файла или каталога .

Есть ли способ выйти из этого состояния и восстановиться?

1
задан 23 July 2021 в 10:41

1 ответ

Это делается на 20.04.2 LTS (Focal Fossa). В меню grub нажмите «c», чтобы вызвать подсказку grub>.

grub> linux /boot/vmlinuz
grub> initrd /boot/initrd.img
grub> boot

Это загрузится в оболочку initramfs (busybox):

(initramfs) mkdir /mnt
(initramfs) mount /dev/sda1 /mnt
(initramfs) cd /mnt/lib/x86_64-linux-gnu
(initramfs) ls ld-*
ld-renamed.so*
(initramfs) # Your ld.so version may differ
(initramfs) # (bionic 18.04 is ld-2.27.so)
(initramfs) cp -i -a ld-renamed.so ld-2.31.so
(initramfs) ln -s ld-2.31.so ld-linux-x86-64.so.2
(initramfs) ls -F ld-*
ld-linux-x86-64.so.2@  ld-2.31.so*
2
ответ дан 28 July 2021 в 11:18

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

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