Вопрос Я не могу войти в TTY


Моя система Ubuntu 11.10 (установлена ​​с 0, без обновлений / обновлений). Когда я вхожу в любой tty (1, 2, 3 ..), он спрашивает мне свое имя пользователя и пароль, но я не могу двигаться вперед.

Когда я ввожу пользователя без пароля или корня (я включил учетную запись), подсказка покажет мне следующее:

Module is unknown

Что это? Почему это происходит? Нет никакого способа исправить?

ЗАМЕТКА: Моя загрузка останавливается, когда Cheking battery state [OK] так Я не могу пойти в GUI, Я никогда не использовал TTY, но теперь я вынужден это сделать.


auth.log файл:

Топ-10 строк:

Sep  9 20:09:01 M68MT-S2P CRON[2749]: pam_unix(cron:session): session opened for user root by (uid=0)
Sep  9 20:09:01 M68MT-S2P CRON[2749]: pam_unix(cron:session): session closed for user root
Sep  9 20:17:01 M68MT-S2P CRON[2821]: pam_unix(cron:session): session opened for user root by (uid=0)
Sep  9 20:17:01 M68MT-S2P CRON[2821]: pam_unix(cron:session): session closed for user root
Sep  9 20:39:01 M68MT-S2P CRON[2961]: pam_unix(cron:session): session opened for user root by (uid=0)
Sep  9 20:39:01 M68MT-S2P CRON[2961]: pam_unix(cron:session): session closed for user root
Sep  9 20:50:36 M68MT-S2P sudo:    lucio : TTY=pts/0 ; PWD=/home/lucio ; USER=root ; COMMAND=/usr/bin/apt-get update
Sep  9 20:52:42 M68MT-S2P polkitd(authority=local): Operator of unix-session:/org/freedesktop/ConsoleKit/Session2 successfully authenticated as unix-user:lucio to gain TEMPORARY authorization for action org.debian.apt.install-or-remove-packages for system-bus-name::1.71 [/usr/bin/python /usr/bin/update-manager --no-focus-on-map] (owned by unix-user:lucio)

Последние 3 строки (последняя попытка доступа через TTY):

Oct  1 00:27:53 M68MT-S2P login[1429]: PAM unable to dlopen(/lib/security/pam_access.so): /lib/security/pam_access.so: cannot open shared object file: No such file or directory
Oct  1 00:27:53 M68MT-S2P login[1429]: PAM adding faulty module: /lib/security/pam_access.so
Oct  1 00:27:53 M68MT-S2P login[1429]: Module is unknown

Полный auth.log файл Вот,


4
2017-09-13 02:53


происхождения


«или подобная» нормальность не режет; пожалуйста, сообщите точное сообщение об ошибке, которое вы получаете. - Tom Regner
@TomRegner Я обновил ответ. - Lucio
@Lucio Это происходит только тогда, когда вы пытаетесь войти в систему с пользователем, у которого нет пароля? - Anwar
Это происходит с любым пользователем, с или без пароля. - Lucio
Вы только что обновили машину? Была разница в том, как PAM работал между 11.10 и более ранними версиями. Это может привести к тому, что обновление не завершится правильно. Загрузите LiveCd или LiveUSB и смонтируйте жесткий диск: «sudo mount / dev / sda1 / mnt», а затем посмотрите в файле: /mnt/var/log/auth.log - вставьте здесь 10 верхних строчек этого файла. - fabricator4


ответы:


Ваши журналы показывают, что вам не хватает файла с именем /lib/security/pam_access.so, Таким образом, кажется, что ваша установка PAM нарушена. Вам нужно будет переустановить любой пакет, которому принадлежит этот файл. К сожалению, я не смог определить, какой пакет (я запускаю 12.04 и, видимо, этот файл не нужен на моей машине).

Вот предложение о том, что вы можете сделать:

  1. Загрузитесь в chroot Окружающая среда (выполните шаги 1-5 здесь) или в режим восстановления. Если вы используете liveCD или USB, убедитесь, что вы используете один для той же версии, которую вы установили!
  2. Попробуйте посмотреть, dpkg знает о файле:

    dpkg --search /lib/security/pam_access.so
    

    Если он найдет пакет, вы все настроены. Просто переустановите этот пакет:

    apt-get reinstall package-name
    
  3. Если шаг 2 не удастся, пришло время выпустить большие пушки. Вы захотите переустановить каждый пакет, связанный с PAM, в вашей системе.

    1. Сохраните следующий скрипт Python. В нем будут перечислены все ваши пакеты PAM, которые в настоящее время установлены.

      #!/usr/bin/env python
      import apt
      import re
      
      exp = re.compile('^(lib)?pam')
      print ' '.join([i.name for i in apt.Cache() if i.is_installed and exp.search(i.name)])
      
    2. Переустановите прочь:

      apt-get reinstall $(python name_of_your_script.py)
      
  4. Если этого недостаточно, вы можете получить действительно тяжелую работу, но подумайте очень осторожно, прежде чем делать это, так как он может легко иметь много непредвиденных последствий. Это может потенциально установить кучу несвязанных вещей в вашей системе. Вы должны сначала проверить, можете ли вы найти другой способ восстановления PAM.

    Если вы решите, что вам нужно сделать этот шаг, измените скрипт, созданный на шаге 3. Удалите из сценария следующее: i.is_installed and, Убедитесь, что вы удалили именно это и дважды проверьте, что вы не допустили ошибку. Затем установите и повторите установку, чтобы убедиться, что у вас есть все:

    apt-get install $(python name_of_your_script.py)
    apt-get reinstall $(python name_of_your_script.py)
    
  5. Если все предыдущие инструкции терпят неудачу, тогда у вас есть серьезно испорченная система. В этом случае переустановка Ubuntu, вероятно, является лучшим способом. Не забудьте создать резервную копию /home перед повторной установкой.


4
2017-10-01 05:09



Ваш метод был полезен. Теперь моя система работает отлично. Спасибо за ваше время. - Lucio