Hin und wieder (dreimal in den letzten vier Wochen) existiere ich nicht. Die Nachricht im Titel dieser Frage ist meine Antwort, wenn ich versuche, sie auszuführen, ssh
während sie nicht vorhanden ist. Wenn ich nicht existiere, wird beim Ausführen id
meine Benutzer-ID und nicht mein Benutzername angezeigt, wie dies sonst der Fall ist. Und ich kann nicht verwenden sudo
:
; sudo date
sudo: unknown uid: 13799
Jedes Mal verschwindet das Problem spontan innerhalb einer Stunde und ich existiere wieder. Glücklicherweise habe ich immer ein Terminalfenster mit einer Root-Shell, sodass ich immer noch im System herumstöbern kann. Und ich sehe nichts falsches, zumindest nichts, aus dem ich einen Sinn machen kann, außer vielleicht diesen Zeilen in /var/log/opendirectoryd.log
:
2012-02-27 07:31:39.911 CET - 70535.351417.351419.351421 - Client: netstat, UID: 0, EUID: 0, GID: 0, EGID: 0
2012-02-27 07:31:39.911 CET - 70535.351417.351419.351421, Node: /Local/Default, Module: PlistFile - recordtype 'networks' attribute 'address' is not indexed: performance hit
2012-02-27 07:31:40.904 CET - 70539.351444.351448 - Client: launchd, UID: 13799, EUID: 13799, GID: 20, EGID: 20
2012-02-27 07:31:40.904 CET - 70539.351444.351448, Module: SystemCache - unable to find node 71E63E19-F41E-4AF3-89A0-F50FE5185E5B
2012-02-27 07:31:40.905 CET - 70539.351444.351448 - Client: launchd, UID: 13799, EUID: 13799, GID: 20, EGID: 20
2012-02-27 07:31:40.905 CET - 70539.351444.351448, Module: SystemCache - ODQueryCreateWithNode failed with error 'Node ID is invalid' (90001)
Diese stammen von heute Morgen, als ich den Laptop aufgeweckt habe (ich habe odutil
die Protokollierungsstufe ein wenig angehoben). Ich habe herumgespielt dscl
und alles scheint normal zu sein - ich kann alle Daten meines Benutzers sehen - aber ich bin nicht sehr vertraut mit Verzeichnisdiensten, daher habe ich vielleicht etwas verpasst. (Wie kann ich mich mit dscl bei uid nachschlagen?)
Meine Frage ist also zweifach: Läutet dieses Problem eine Glocke? Mein Google-Fu ist nicht in der Lage, etwas Relevantes zu finden. Und können Sie Vorschläge machen, um das Problem besser in den Griff zu bekommen, Tests durchzuführen und Dinge zu suchen?
Während ich diese Frage getippt habe, endete die heutige Veranstaltung und ich existiere wieder. Es kann also eine Woche oder länger dauern, bis ich das nächste Mal das Debuggen erhalte. Ich bin auf OS X 10.7.3 übrigens auf einem MacBook Pro.
quelle
opendirectoryd
lokal ausgeführt, aber dies ist die Standardkonfiguration, die meiner Meinung nach von einer Reihe von Computern mit dem Migrationsassistenten bis zurück zu Tiger geerbt wurde, sofern der Arbeitsspeicher verfügbar ist (was möglicherweise nicht der Fall ist - ich habe möglicherweise vor Jahren während einer Migration von Grund auf neu begonnen ).Antworten:
Dies klingelt tatsächlich, da ich ähnliche Probleme auf einer Vielzahl von Systemen gesehen habe, die von 10.3 bis 10.6 reichen. Hier sind einige der Ursachen, die ich in keiner bestimmten Reihenfolge beobachtet habe.
/etc/pam.d
)Da Sie Konten migriert haben, versuchen Sie, ein neues Konto einzurichten, und prüfen Sie, ob das Problem dort auftritt. Möglicherweise können Sie das Problem beheben, indem Sie sich in die OpenDirectory-Datenbank einarbeiten. Es ist jedoch möglicherweise einfacher, das Problemkonto von Grund auf neu zu erstellen.
Aktualisieren
Da die UID zu irgendeinem Zeitpunkt in der Vergangenheit aus NFS-Gründen geändert wurde, sind GUID und UID wahrscheinlich nicht synchron. Probieren Sie die folgenden Terminalbefehle aus, um festzustellen, ob sich Unix und Directory Services auf derselben Seite befinden:
Die von "UniqueID" und "id" ausgegebene UID sollte mit der erwarteten NFS-UID übereinstimmen.
quelle
dscl
Kommandozeile benutzen . Siehe meine Bearbeitung oben.71E63E19-F41E-4AF3-89A0-F50FE5185E5B
. Ich vermute, dass mit Ihrem Konto mehrere GUIDs und UIDs verknüpft sind. Wahrscheinlich müssen Sie einige Untersuchungen durchführen,dscl
um festzustellen, welche Benutzerdatensätze vorhanden sind, und sie möglicherweise zu konsolidieren.