
Ich verwende Kali von VMware aus. Ich habe mein Kali aktualisiert und kann mich nach dem Neustart nicht anmelden. Beim Neustart melde ich mich automatisch über tty1 an und erhalte die folgende Fehlermeldung:
uname : loadlocale.c:129 : _nl_inter_locale_data : Asserting 'cnt<(sizeof (_nl_value_type_LC_TIME) / sizeof (_nl_value_type_LC_TIME[0]))' failed
/bin/uname failed caught signal 6
Ich habe versucht, mich im Wiederherstellungsmodus anzumelden und habe anscheinend denselben Fehler erhalten:
intel_rapl: no valid rapl domains found in package 0
echo: loadlocale.c : 129: _nl_inter_locale_data : Asserting 'cnt<(sizeof (_nl_value_type_LC_TIME) / sizeof (_nl_value_type_LC_TIME[0]))' failed
Ich habe einige Lösungen für dieses Problem gesehen, aber sie werden alle von der Eingabeaufforderung aus ausgeführt. Ich habe versucht, sie zu erreichen, indem ich den Anmeldebefehl mit „e“ im Anmeldefenster bearbeitet habe, aber ich habe dieselbe Fehlermeldung erhalten. Ich habe versucht, dieselben Befehle in der GNU GRUB-Befehlszeile mit „c“ beim Anmelden auszuführen, aber nichts scheint zu funktionieren. Im Moment kann ich mich in keiner Whey anmelden oder die Eingabeaufforderung erreichen.
Antwort1
Es sieht so aus, als ob die Gebietsschemadatendateien (= die Dateien, die Datums- und Zeitformate, Befehlsnachrichtenübersetzungen usw. definieren) irgendwie beschädigt sind.
Da diese Dateien von fast jedem Befehl verwendet werden, erzeugen die meisten Befehle ähnliche Fehlermeldungen. Die Internationalisierungsbibliotheken, die diese Dateien verwenden, würden das Fehlen von Locale-Dateien wahrscheinlich dadurch beheben, dass sie auf Standard-POSIX-Formate und US-englische Meldungen zurückgreifen, aber es scheint, dassbeschädigtLokale Dateien führen dazu, dass die Bibliotheken fehlschlagen, was dazu führt, dass die Befehle abstürzen, ohne etwas Nützliches zu tun.
Sie können versuchen, über eine Linux Live-CD oder ein ähnliches Startmedium auf Ihr System zuzugreifen. Sobald Sie Zugriff auf das Dateisystem der Kali-Installation haben, sollten Sie versuchen, die /usr/lib/locale/locale-archive
Datei zu finden.
(Wenn Sie eine Live-CD verwenden, müssen Sie wahrscheinlich zuerst das Dateisystem des installierten Betriebssystems an einem Einhängepunkt einhängen und dann den Einhängepunktpfad dem Dateipfadnamen voranstellen. Wenn Sie beispielsweise das Kali-Root-Dateisystem an einhängen, /mnt
lautet der vollständige Pfad zur beschädigten Datei /mnt/usr/lib/locale/locale-archive
.)
Wenn Sie die richtige Datei gefunden haben, benennen Sie sie um (zum Beispiel locale-archive.broken
). Dadurch kann die Kali-Installation möglicherweise gestartet werden (allerdings mit einer strikten POSIX/US-Englisch-Lokalisierung).
Sobald Ihr System einsatzbereit ist und Sie sichergestellt haben, dass der Speicherplatz nicht ausgeht, können Sie den locale-gen
Befehl verwenden, um die locale-archive
Datei neu zu generieren.
Wenn das Problem dadurch erneut auftritt, löschen bzw. benennen Sie die locale-archive
Datei mithilfe einer Live-CD erneut, kehren Sie dann zum normalen Betriebssystem zurück und führen Sie es aus, apt reinstall locales
um apt reinstall util-linux-locales
die Quelldateien zu aktualisieren, die zum Generieren der locale-archive
Datei verwendet wurden (da diese Quelldateien ebenfalls beschädigt sein könnten), und versuchen Sie es dann locale-gen
erneut.