Intereting Posts
Частота процессора возвращается после масштабирования с помощью индикатора-cpufreq, приостановки и пробуждения Почему fstab использует UUID вместо фактического имени файловой системы? Контейнер LXD / Какой предпочтительный способ доступа к файлам с хоста Ошибка в том, как ksh обрабатывает конвейеры? проблема с разрешением logadm в Solaris Можно ли обновить заголовки окон терминала во время выполнения процесса? Где и как я могу получить и установить сертификаты на новую установку OpenSSL? lxde stop auto максимизирует вертикаль при перемещении окна в правый край экрана Сломанный поиск истории после обновления oh-my-zsh crontab дает только 2045 строк вывода вместо 6000 строк Создайте точку доступа Wi-Fi в Gnome 3 / Arch Linux Ошибка Eclipse при открытии: Linux Mint 12 Почему я пытаюсь установить btx, пытаясь установить FreeBSD? В скобках действительно помещается команда в подоболочку? Безопасно ли выдавать мой открытый ключ SSH для работы?

Почему «человек CMD» ничего не показывает?

После того, как я запустил man ls , он показывает:

Man: найти все соответствующие страницы руководства
* ls (1)
ls (1p)
Man: Какую страницу руководства вы хотите?
Мужчина:

После ввода «1» в строке состояния отображается только « Ручная страница ls (1) line? /? (END) ».

Я предполагаю, что я не установил ручную страницу для ls , поэтому я запускал manpath и получал выход ниже:

/ USR / доли / человек: / USR / местные / человек: / USR / местные / доли / человек

Прямо под каталогом /usr/share/man/man1/ Я нашел gzip-файл ls.1.gz , который, я думаю, является справочной информацией ls .

Так почему man ls здесь ничего не показывает?

Спасибо всем за ваши предложения.

Я, наконец, решил проблему, и теперь man работает.

Ответ

Кто-то установил как 64-битную, так и 32-битную версию glibc , которая приносит хаос, я думаю. После удаления 32-битной версии и переустановки 64-битной версии glibc работает man .

== Детальный процесс ==

  • Ran mandb -t много сообщений об ошибках:

iconv_open ("UTF-8 // IGNORE", "ISO-8859-1"): Недопустимый аргумент

  • По google я обнаружил, что iconv_open находится в gconv (ref) .
  • strace mandb -t и strace man ls обе показывают эту информацию:

open ("/ usr / lib64 / gconv / gconv-modules.cache", O_RDONLY) = -1 ENOENT (Нет такого файла или каталога)
open ("/ usr / lib64 / gconv / gconv-modules", O_RDONLY) = -1 ENOENT (Нет такого файла или каталога)

  • По google я обнаружил, что gconv-модули могут быть очень важны для iconv , что может быть очень важно для man . И gconv находится в glibc , теперь лучше всего предположить, что мой glibc установлен неправильно.
  • Ran rpm -qa | grep glibc rpm -qa | grep glibc , я получил следующее:

Glibc-i18ndata-2.11.1-0.17.4
Glibc-локали 2.11.1-0.17.4
Glibc-инфо-2.11.1-0.17.4
Glibc-HTML-2.11.1-0.17.4
Glibc-профиль-2.11.1-0.17.4
Glibc-разви-2.11.1-0.17.4
Glibc-2.11.1-0.17.4
Glibc-32bit-2.11.1-0.17.4
Glibc-разви-32bit-2.11.1-0.17.4
Glibc-локаль-32bit-2.11.1-0.17.4
Glibc-профиль-32bit-2.11.1-0.17.4

  • Ran rpm -e --nodeps 32bit-PACKAGE чтобы удалить все 32-битные пакеты, затем перезагрузите компьютер (любой другой способ перезагрузки?).
  • Переустановил все 64-битные пакеты glibc.
  • man ls , это сработало!

Наконец, правильный ответ на эту ошибку:

 QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_open failed QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open failed 

Он не имеет ничего общего с вашими установленными шрифтами, но с отсутствующими пакетами glibc.