linux + не могу запустить диалоговую утилиту + есть ошибки

linux + не могу запустить диалоговую утилиту + есть ошибки

Проблема заключается в следующем:

Ядро Linux: 3.0.13-0.27-по умолчанию #1 SMP

Я установил утилиту «dialog» ( /usr/bin/dialog), просто скопировал bin-файл в/usr/bin

При попытке запустить его libncursesw.so.5появилось сообщение об ошибке отсутствия библиотеки.

Чтобы решить проблему, я пытаюсь скопировать файл, libncursesw.so.5 но /usr/lib/ это не помогает.

Теперь у меня возникла еще одна ошибка:

error while loading shared libraries: /usr/lib/libncursesw.so.5: file too short

пожалуйста, порекомендуйте

решение1

Вы не "устанавливаете" такие приложения на Linux (за исключением некоторых угловых случаев). Используйте менеджер пакетов вашего дистрибутива для установки того, что вам нужно - он автоматически подтянет все требуемые пакеты. В случае производных дистрибутивов SUSE Linux (поскольку вы используете тег /suse) используйте

zypper in dialog

( inсокращение от install) или

yast -i

что должно дать вам интерактивные диалоги. Очевидно, что вам нужно запустить их с привилегиями root, чтобы иметь возможность изменять корневую файловую систему. Если у вас уже естьраспределениеRPM под рукой, вы можете использоватьrpm -Uvh package1.rpm package2.rpm ...

Основные причины, по которым простое копирование данных в файловую систему является неправильным:

  • Источник двоичных файлов может быть ненадёжным, особенно с точки зрения безопасности. Вы просто не запускаете программы, которые вам кто-то предоставляет - использование дистрибутивного пакета даёт вам, по крайней мере, некоторую уверенность в содержимом пакета (например, за счёт криптографической подписи);

  • двоичные файлы связаны с общими библиотеками (например, libncursesw в вашем случае) — если вы не предоставите достаточно совместимую библиотеку, у вас возникнут проблемы (которые трудно отладить).

решение2

Вы не сказали, откуда взяли файл libncursesw.so.5. Похоже, это не настоящая библиотека.

В любом случае, если у вас отсутствуют библиотеки, вам следует установить их из вашего менеджера пакетов:

# yum install libncursesw5

Связанный контент