Frage Ich kann mich nicht in TTYs einloggen


Mein System ist Ubuntu 11.10 (installiert von 0, ohne Upgrades / Updates). Wenn ich irgendein Tty (1, 2, 3 ..) betrete, frage ich mich meinen Login-Namen und Passwort, aber ich kann nicht vorwärts gehen.

Wenn ich einen Benutzer ohne Passwort oder das root (ich habe das Konto aktiviert) die Eingabe zeigen Sie mir dies:

Module is unknown

Was ist das? Warum passiert es? Es gibt keinen Weg zu reparieren?

HINWEIS: Mein Boot stop wann Cheking battery state [OK] damit Ich kann nicht zur GUI gehen. Ich habe nie TTY benutzt, aber jetzt bin ich dazu gezwungen.


Das auth.log Datei:

Top 10 Zeilen:

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)

Letzte 3 Zeilen (letzter Versuch, über TTY zuzugreifen):

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

Das Ganze auth.log Datei Hier.


4
2017-09-13 02:53


Ursprung


"oder ähnlich" schneidet normalerweise nicht ab; Bitte posten Sie die genaue Fehlermeldung, die Sie bekommen. - Tom Regner
@ TomRegner Ich habe die Antwort aktualisiert. - Lucio
@Lucio Tritt das nur auf, wenn Sie versuchen, sich mit einem Benutzer einzuloggen, der kein Passwort hat? - Anwar
Dies geschieht mit jedem Benutzer mit oder ohne Passwort. - Lucio
Haben Sie gerade die Maschine aufgerüstet? Es gab einen Unterschied in der Arbeitsweise von PAM zwischen 11.10 und früheren Versionen. Ein Upgrade, das nicht ordnungsgemäß abgeschlossen wurde, kann dieses Problem verursachen. Starten Sie den LiveCd oder LiveUSB und mounten Sie die Festplatte: "sudo mount / dev / sda1 / mnt" und suchen Sie dann in der Datei: /mnt/var/log/auth.log - fügen Sie die oberen 10 Zeilen dieser Datei hier ein. - fabricator4


Antworten:


Ihre Protokolle zeigen, dass Sie eine Datei namens " /lib/security/pam_access.so. So scheint es, dass dein PAM Setup kaputt ist. Sie müssen das Paket, das diese Datei besitzt, neu installieren. Leider konnte ich nicht feststellen, um welches Paket es sich handelt (ich verwende 12.04 und diese Datei wird anscheinend nicht auf meinem Rechner benötigt).

Hier ist ein Vorschlag, was Sie tun können:

  1. Boot in ein chroot Umgebung (Befolgen Sie die Schritte 1-5 hier) oder in den Wiederherstellungsmodus. Wenn Sie eine LiveCD oder USB verwenden, stellen Sie sicher, dass Sie eine für die gleiche Version verwenden, die Sie installiert haben!
  2. Versuche zu sehen, ob dpkg weiß über die Datei:

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

    Wenn es das Paket findet, bist du fertig. Installieren Sie das Paket einfach neu:

    apt-get reinstall package-name
    
  3. Wenn Schritt 2 fehlschlägt, ist es Zeit, die großen Pistolen zu entfernen. Sie sollten jedes PAM-bezogene Paket auf Ihrem System neu installieren.

    1. Speichern Sie das folgende Python-Skript irgendwo. Es wird alle Ihre PAM-Pakete auflisten, die derzeit installiert sind.

      #!/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. Neu installieren:

      apt-get reinstall $(python name_of_your_script.py)
      
  4. Wenn das nicht genug ist, können Sie wirklich schwerfällig werden, aber denken Sie sehr sorgfältig, bevor Sie dies tun, da es leicht unbeabsichtigte Folgen haben kann. Es könnte möglicherweise eine Menge nicht verwandter Sachen auf Ihrem System installieren. Sie sollten zuerst prüfen, ob Sie eine andere Möglichkeit finden, PAM zu reparieren.

    Wenn Sie feststellen, dass Sie diesen Schritt ausführen müssen, ändern Sie das Skript, das Sie in Schritt 3 erstellt haben. Entfernen Sie Folgendes aus dem Skript: i.is_installed and. Stellen Sie sicher, dass Sie genau das entfernen und überprüfen Sie, dass Sie keinen Fehler gemacht haben. Installieren Sie dann und führen Sie eine weitere Neuinstallation durch, nur um sicher zu gehen, dass Sie alles haben:

    apt-get install $(python name_of_your_script.py)
    apt-get reinstall $(python name_of_your_script.py)
    
  5. Wenn alle vorherigen Anweisungen fehlschlagen, haben Sie ein ernsthaft durcheinander geratenes System. In diesem Fall ist die Neuinstallation von Ubuntu wahrscheinlich der beste Weg. Denken Sie daran, zu sichern /home vor der Neuinstallation.


4
2017-10-01 05:09



Ihre Methode war nützlich. Jetzt funktioniert mein System einwandfrei. Vielen Dank für Ihre Zeit. - Lucio