Перейти к содержанию

попытка установить glibc 2.14 - linux не узнаёт даже root'а


Рекомендуемые сообщения

Здравствуйте. У меня была glibc 2.13 из репозитариев. Понадобилась 2.14 для сборки эмулятора. В репозитариях её не оказалось. Скачал исходный код с оф. сайта. Всё делал по инструкции. configure, make, make install. В процессе make install возникла ошибка: /usr/bin/ld: cannot find -lnss_test1

Время было позднее. Решил продолжить на следующий день. Выключил компьютер. После включения на экране выбора пользователя пользователи присутствуют. Но при вводе пароля выдаёт Login Failed. Ctrl+Alt+F6 - ушёл на другой терминал. Он уже текстовый. Ввожу в поле login root, нажимаю enter и вместо введите пароль, получаю login incorrect.

Пробовал поставить командой rpm -i --force -v старый пакет glibc, запускать make --always-make --ignore-errors install для новой glibc 2.14. Больше часа молотил и выдал ту-же ошибку.

Делал всё это в однопользовательском режиме rw init=/bin/bash.

passwd root, равно как и любого другого пользователя вызывает

что-то там manipulation error, хотя через mcc удалось создать пользователя user1, он виден в графическом входе, но воспользоваться им не удаётся. При беглом осмотре /etc/passwd присутствует и нормальный. Переустанавливать систему не хочется. Интересно разобраться и научиться.

Как нормально запустить систему, что такое -lnss_test1 и как поставить glibc 2.14?

Пишу с livecd Fedora 16. Запускаю её по очереди с liveDVD Mandriva 2011 для разнообразия.

Система терпящая бедствие -Mandriva 2011 x86-64

Ссылка на комментарий
Поделиться на другие сайты

Я не ни разу не гуру, а так, пригурок.

Но обновлять самостоятельно из исходников системообразующие пакеты вроде glibc и gcc на живой системе - это скилл доступный, в основном, весьма матёрым разработчикам. Если вы, конечно, не используете Gentoo. Там этот процесс сильно упрощён. Если вам так хочется это проделать, но в следующий раз создайте chroot для сборки и задайте переменную LD_LIBRARY_PATH либо собирайте glibc с параметром --library-path.

Ошибка /usr/bin/ld: cannot find -lnss_test1 возникает при невозможности линковки библиотек в системе. -lnss_test, если я ничего не путаю, это файлы ядра. Так что требуется сделать симлинк где требуется. Дабы не вставать два раза, рекомендую почитать архив вот этой рассылки и плясать по ключевым словам.

На вашем месте я бы сделал chroot в вашу покорёженную системы с любого livecd и вернул бы на место старый glibc запустив urpmi.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...