Случайно переименован в libc.so.6 и не может выполнить chroot в режиме восстановления - PullRequest
0 голосов
/ 11 декабря 2018

Мы случайно переименовали разделяемую библиотеку /lib64/libc.so.6 в /lib64/libc.so_6.Сразу после предыдущей команды система (CentOS 6.9) выдает следующую ошибку:

error while loading shared libraries: /lib64/libc.so.6: cannot open shared object file: No such file or directory

При входе в систему в режиме восстановления я выполнял следующие команды:

mount /dev/md2 /mnt
mount /dev/md1 /mnt/boot
mount -t dev -o bind /dev /mnt/dev
mount -t proc -o bind /proc /mnt/proc
mount -t sys -o bind /sys /mnt/sys
chroot /mnt
</Code>

Затем я получаю следующееошибка:

/bin/bash: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory

Я также пробовал следующие команды:

chroot /mnt /bin/bash
chroot /mnt/root/tmp /bin/bash
chroot /mnt/root/tmp /mnt/bin/bash

Затем получаю еще одну ошибку

chroot: failed to run command ‘/mnt/bin/bash’: No such file or directory

Теперь система не работает, и у меня только sshкоторый потерпел неудачу после переименования libc.so.6 и режима восстановления.Как я могу войти в систему, чтобы я мог переименовать "libc.so_6" обратно в "libc.so.6"?Есть ли обходной путь для обхода проверки на "libc.so_6"?

1 Ответ

0 голосов
/ 11 декабря 2018

Ради ясности опубликую ответ здесь (на случай, если кто-то еще столкнется с подобной проблемой).

В режиме восстановления:

mount /dev/md2 /mnt
mv /mnt/lib64/libc.so_6 /mnt/lib64/libc.so.6

В качестве альтернативы:

  • восстановление системы из резервной копии
  • попробуйте загрузиться с некоторого живого USB (как предложил Topper Harley в комментариях)
...