не может sudo mv libtinfo.so.5.bak libtinfo.so.5

Час назад, я mv /lib64/libtinfo.so.5 /lib64/libtinfo.so.5.bak , то остальные не могут ssh сервер. Их сообщение об ошибке выглядит так:

-bash: ошибка при загрузке разделяемых библиотек: libtinfo.so.5: невозможно открыть файл общих объектов: нет такого файла или каталога. Подключение к 10.60.242.30 закрыто.

Я хочу изменить этот файл обратно, sudo mv /lib64/libtinfo.so.5.bak /lib64/libtinfo.so.5

bash: ошибка при загрузке разделяемых библиотек: libtinfo.so.5: невозможно открыть файл общих объектов: нет такого файла или каталога

кажется тупиком, что sudo будет использовать libtinfo.so.5 .

Я пробовал LD_PRELOAD=./libtinfo.so.5.bak sudo mv /lib64/libtinfo.so.5.bak /lib64/libtinfo.so.5 , он не работает.

Кто-нибудь может мне помочь?

  • как linux обновляет таблицу страниц после переключения контекста
  • Разница между типами ОС Unix
  • nmon регистрация, ротация и хранение в базе данных
  • Настройка Multi-Workstation - как эффективно использовать мою систему
  • используя gmake и make
  • Является ли каталог / dev единственным местом в Linux, где файлы устройств могут быть сохранены?
  • Bash - нужно сделать df выход удобным для входа в систему
  • Почему люди Linux всегда говорят, чтобы прочитать руководство?
  • One Solution collect form web for “не может sudo mv libtinfo.so.5.bak libtinfo.so.5”

    mv из-за того, что sudo видит список параметров и решает, что для его интерпретации требуется оболочка. Могут работать некоторые другие простые команды (при быстрой проверке, например, я не вижу промежуточного sh при выполнении sudo visudo ). Если это так, вы можете написать и скомпилировать простую программу, которую вы выполняете с помощью sudo , например,

     #include <stdlib.h> int main(void) { rename("/lib64/tinfo.5.bak", "/lib64/tinfo.5" ); return 0; } 

    Другой возможностью может быть сценарий, например, в Perl, который, как представляется, не имеет зависимости от ncurses:

     $ ldd `path perl` linux-vdso.so.1 => (0x00007ffd0f9f6000) libperl.so.5.14 => /usr/lib/libperl.so.5.14 (0x00007fcfc33ba000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fcfc31b6000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fcfc2f34000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fcfc2d18000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fcfc298b000) libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 (0x00007fcfc2754000) /lib64/ld-linux-x86-64.so.2 (0x00007fcfc373c000) 

    Если у вас есть физический доступ к серверу, обходной путь, подобный этому, не требуется (поскольку вы можете загрузить DVD-диск восстановления и исправить сервер в автономном режиме). Если вы этого не сделаете и имеете только доступ к SSH (например, в Amazon AWS), вам придется использовать обходной путь, подобный этому.

    Дальнейшее чтение:

    • Получение экземпляров консоли и перезагрузка (Amazon)
    Linux и Unix - лучшая ОС в мире.