"Backup failed" im Notification Center

walfrieda

walfrieda

Aktives Mitglied
Thread Starter
Dabei seit
29.03.2006
Beiträge
9.252
Reaktionspunkte
1.173
Folgendes Problem: Auf meinem neuen MBPr 13" (late 2013, 10.9.1) mache ich Backups mit Time Machine auf meine Time Capsule (die daheim steht). Alles kein Problem. Sobald ich tagsüber woanders bin, bekomme ich jede Stunde eine Meldung in der Nachrichtenzentrale, daß das Backup fehlgeschlagen ist. In der Console steht dann die Fehler:

Code:
"com.apple.backupd[2030]: NAConnectToServerSync failed with error: 2 for url: afp://benutzer;AUTH=SRP@TimeCapsule._afpovertcp._tcp.local/Backups"

und

Code:
com.apple.backupd[2030]: NAConnectToServerSync failed with error: 80 for url: afp://benutzer;AUTH=SRP@TimeCapsule.local/Backups


Ok, klar, die TC ist natürlich nicht erreichbar, aber das sollte ja nicht jedes Mal eine Nachricht erzeugen. Bei meinen älteren Rechner MBP 13" (mid 2009, 10.9.1) ist das auch nicht so, obwohl der identisch konfiguriert ist und eben auch auf 10.9.1 läuft (allerdings immer nur upgedatet, nicht clean installiert wie das neue MBPr).

Fällt jemand was dazu ein, wie man die Fehlermeldung im Notification Center verhindern kann?
 
Ich schätze mal, dass Du entweder mobile Backups aktivieren oder Time Machine für den entsprechenden Zeitraum deaktivieren musst.

Du könntest auch die Benachrichtigungen für Time Machine in den Systemeinstellungen -> Mitteilungen deaktivieren.
 
Ich schätze mal, dass Du entweder mobile Backups aktivieren oder Time Machine für den entsprechenden Zeitraum deaktivieren musst.

Ersteres könnte tatsächlich ein Lösungsansatz sein. Bei meinem jetzigen MBPr mit SSD sind die mobilen Backups deaktiviert (das war offensichtlich die Voreinstellung an den clean installierten Rechner), während sie an meinem alten Rechner aktiv sind. Time Machine für den genannten Zeitraum ausschalten geht nicht, weil in dieser Zeit auf eine andere TC gebackupt wird ;)

Du könntest auch die Benachrichtigungen für Time Machine in den Systemeinstellungen -> Mitteilungen deaktivieren.

Das würd ich gern machen, eine solche Funktion gibt es aber nicht - oder ich bin zu blöd sie zu finden...
 
ok, lokale Backups einschalten macht keinen Unterschied, die Fehlermeldungen kommen trotzdem.
 
Sorry, ich war der festen Überzeugung, dass man auch Mitteilungen von Systemdiensten in der Mitteilungszentrale deaktivieren kann. Zumindest habe ich es so verstanden, laut diesem Artikel in der Macwelt. Aber wenn Du sagst es geht nicht, weiß ich leider auch nicht weiter.
Vielleicht kann man über das Terminal etwas ereichen.

Auch Fehler 80 finde ich nicht. Fehler -80 (um den es nicht geht) und 2 sind Adressfehler
Fehler 2:
[SIZE=-1] dsAddressErr Adreßfehler (Zugriff auf ungerade Adresse)

[/SIZE]
Quelle

Wenn Du in der Zeit auf eine andere Time Capsule sicherst, würde ich den Pfad neu anlegen. Die Fehlermeldungen beinhalten, dass mit dem Pfad etwas nicht stimmt.

Mehr kann ich dazu nicht sagen, bin noch mit ML unterwegs.
 
Wenn Du in der Zeit auf eine andere Time Capsule sicherst, würde ich den Pfad neu anlegen. Die Fehlermeldungen beinhalten, dass mit dem Pfad etwas nicht stimmt.

Mehr kann ich dazu nicht sagen, bin noch mit ML unterwegs.

Danke trotzdem. Am Pfad lag's nicht, den hatte ich mehrfach neu "angelegt". Ausserdem tritt der Fehler bzw die Nachricht nur dann auf, wenn die TC nicht verfügbar ist, weil ich in einem anderen Netz bin. Sobald ich in Reichweite der TC daheim bin (und im gleichen Netz), funktioniert ja alles.

Aber egal, ich war inzwischen in den "Eingeweiden" der Systemeinstellungen aktiv und habe eine für mich derzeit funktionierende Lösung gefunden. Und zwar:

* Das Notification Center legt seine Einstellungen nicht in einer plist in den Preferences ab (das wär ja allzu einfach...), sondern in einer sqlite3-Datenbank unter ~/Library/Application Support/NotificationCenter (also im eigenen User-Ordner; die Library dort muß man eventuell erst sichtbar machen, wenn man das nicht sowieso eingestellt hat). Diese Datenbank hat einen sehr langen kryptischen Namen aus zahllosen Buchstaben und Zahlen. Sie ist aber leicht zu finden, weil sie die einzige Datei im Ordner ist, und auf .db endet.

* Diese sqlite3-Datenbank muß man verändern. Man braucht keine Angst zu haben, etwas kaputt zu machen, weil man im eigenen Userordner unterwegs ist und die Datei auch einfach löschen kann - beim nächsten Einloggen oder Neustart wird dann eine Datenbank angelegt, mit system-vorgegebenen Grundeinstellungen. Die eigenen Einstellungen (die man über die Systemeinstellungen für das Notification Center gemacht hat) gehen dabei aber verloren, deshalb:

* erstmal die Datenbank duplizieren, so daß eine anders benannte Kopie entsteht, die man im Notfall wieder zurück benennen kann!

* mit einem sqlite-Editor die originale .db Datei öffnen. Ich verwende dafür SQLiteManager aus dem App Store, es geht aber auch jeder andere Editor mit dem man sqlite-Datenbanken öffnen, editieren und speichern kann. Hardcorebastler können es auch im Terminal machen, wenn's sein muß...

* in der Datenbank gibt es ein Feld "app_info". Dieses Feld speichert den Namen des Programms/Dienstes, für den die in den anderen Feldern abgelegten Einstellungen gelten. Den Dienst, den wir ändern müssen heisst "_SYSTEM_CENTER_:com.apple.TMHelperAgent", also der TimeMachine Helper Agent. Es gibt noch ein paar andere Systemdienste, deren Nachrichten im Notification Center angezeigt werden, die man aber nicht in der grafischen Oberfläche der System Preferences ändern kann (zum Beispiel Akku-Warnungen)

* wenn wir den Eintrag für den TM-Dienst gefunden haben, müssen wir den Wert des Feldes "flags" auf 8463 setzen. (Ich habe keine Ahnung warum es dieser Wert ist - wenn man aber ein anderes Programm in der grafischen Oberfläche aus dem Notification Center ausschließt, bekommt es diesen Wert in "flags").

* Wenn der verwendete sqlite-Editor eine Funktion bietet, die Datenbank zu überprüfen, ist es eine gute Idee die Funktion mal zu verwenden. Da wir aber nur einen Wert verändert haben, darf die Überprüfung keinen Fehler zeigen.

* Die Datenbank wieder schließen (ein separates Speichern ist nicht notwendig), und den Rechner neu starten ohne die Option offene Programme und Fenster wieder zu öffnen.

* fertig. Bei mir funktioniert es so, und die Einstellung bleibt auch über Neustart/Einloggen erhalten. Ich werde in den nächsten Tagen weiter beobachten, und gegebenenfalls hier noch was schreiben.
 
  • Gefällt mir
Reaktionen: rechnerteam und DoroS
Wow, das ist sehr interessant, was Du schreibst.

Den Satz
Time Machine für den genannten Zeitraum ausschalten geht nicht, weil in dieser Zeit auf eine andere TC gebackupt wird ;)
hatte ich so verstanden, als würdest Du auf eine andere TC sichern und es gäbe deshalb ein Problem mit den Pfaden.
 
um mich mal selbst zu zitieren ;)

* wenn wir den Eintrag für den TM-Dienst gefunden haben, müssen wir den Wert des Feldes "flags" auf 8463 setzen. (Ich habe keine Ahnung warum es dieser Wert ist - wenn man aber ein anderes Programm in der grafischen Oberfläche aus dem Notification Center ausschließt, bekommt es diesen Wert in "flags").

Es ist immer unbefriedigend, irgendwo eine Zahl hinzuschreiben ohne zu wissen was sie bedeutet. Auf der Suche nach einer Dokumentation dieser Flags durch Apple habe leider rein gar nichts gefunden. Also bin ich selbst mal aktiv geworden und hab die Zahlen analysiert. Das folgende ist das Ergebnis dieser Beschäftigung:

Die Zahlen entsprechen (wie ich schon erwartet hatte) einem 32bit binären Schlüssel, wobei die einzelnen Bits bestimmte Informationen tragen. Nach x-fachen Rumprobieren codieren die Bits folgendes (von mir mit Buchstaben versehen):

0pxL 00?x 00da btiN

wobei die von mir vergebenen Buchstaben folgendes bedeuten

0 = unbelegt (zumindest in den Programmen auf meinem Rechner - wenn jemand was anderes findet, bitte hier reinschreiben!)
p = Einstellung "show preview" - wird auf meinem System nur von Mail.app benutzt
x = höchstwahrscheinlich: die Einstellungen wurden vom Benutzer geändert und sind nicht mehr die Defaults des entsprechenden Programms
L = Nachricht NICHT am Lockscreen anzeigen (doch anzeigen wäre also 0)
? = unklare Funktion, wird bei mir nur von "versteckten" Systemprogrammen genutzt. Es könnte bedeuten, daß das System diesen Wert jederzeit verändern darf (oder was ganz anderes...)
d = die Einstellungen wurden vom Benutzer geändert und sind nicht mehr die Defaults des entsprechenden Programms
a = Nachrichten als "alert" anzeigen
b = Nachrichten als "banner" anzeigen
t = Ton zur Benachrichtigung abspielen
i = Icon des Programms in der Nachricht anzeigen
N = Nachrichten des Programm NICHT anzeigen, bzw. Nachricht als "none" eingestellt (was das gleiche ist). Programme deren Nachrichten angezeigt werden sollen, tragen hier eine 0

Die Zahl, die bei "flags" eingetragen werden muß ist die Summe der Bits, von hinten nach vorn. N trägt also den Wert 1, i den Wert 2, t den Wert 4, und so weiter. Programme, deren Nachrichten NICHT angezeigt werden sollen, tragen also immer eine ungerade Zahl in den flags. Nach dieser Analyse (die sicher nicht vollständig ist!) ist der beste Wert für das Nicht-Anzeigen der "failed backup"-Meldung 12609, oder 13121 wenn man auch den ?-Flag setzen möchte (dessen Funktion mir aber, wie ich schon sagte, bisher unklar ist, der aber defaultmässig bei dem Dienst verwendet wird). Der Wert 12609 funktioniert bei mir bisher absolut problemlos.
 
getreu meinem Motto "Zwei Lösungen sind besser als gar keine" ;) habe ich das im Eingangsthread beschriebene Problem nochmal genauer untersucht. Die oben im Detail beschriebene Lösung funktioniert perfekt, aber sie kuriert nur das Symptom, also die Anzeige des Fehlers im Notification Center. Besser wäre es, den Fehler selbst zu lösen.
Ich habe die Logs meiner beiden Rechner verglichen, um einen Hinweis zu bekommen was das Problem sein könnte. Wie gesagt, der eine (an dem es ohne Fehler funktioniert), war ein über die Jahre upgedatetes MBP mit aktuell 10.9.1, während der andere (mit Fehler) unter clean installiertem 10.9 läuft (nur upgedatet von 10.9.0, mit dem der Rechner ausgeliefert wurde). Wie im allerersten Post schon gesagt, war einer der Fehlermeldungen in der Console:

Code:
com.apple.backupd[2030]: NAConnectToServerSync failed with error: 80 for url: afp://benutzer;AUTH=SRP@TimeCapsule.local/Backups

während beim "funktionierenden" Rechner der Fehler 80 fehlt, und statt dessen ein

Code:
com.apple.backupd[21212]: Backup failed with error 19: The backup disk could not be resolved, or there was a problem mounting it.

gemeldet wird. Offenbar gibt es dort kein Problem mit der Authentifizierung, aber mit dem Mounten (klar, die Platte ist ja nicht verfügbar), und es wird zuerst versucht sich zu authentifizieren, dann zu mounten (irgendwie auch logisch). Wenn das Authentifizieren misslingt, steigt TM mit der Fehlermeldung 80 aus, und wirft im Notification Center die störende Fehlermeldung aus.

Mit diesem Vorwissen hab ich die Keychains beider Rechner verglichen, und, aha, im System-Keychain des funktionierenden Rechners gab es für jede in TM verwendete Platte zwei Einträge, statt einem im Keychain des nicht funktionierenden Rechners. Was auf letzterem fehlte war der Eintrag für "afp://TimeCapsule.local/Backups" (der, der für die Authentifizierung gefehlt hat!), nur der für "afp://TimeCapsule._afpovertcp._tcp.local/Backups" war vorhanden. Der fehlende Eintrag wurde von einem früheren System dort abgelegt, und war deswegen auf dem immer upgedateten Rechner vorhanden - nicht aber auf dem "clean" installierten Rechner mit Mavericks.
Sprich, Mavericks vergisst beim Einrichten der TM-Platten, den entsprechenden zweiten ("Fallback"-)Eintrag im Keychain vorzunehmen (ganz offensichtlich ein Bug in Mavericks!)

Nach dem Kopieren des Eintrags vom alten zum neuen Rechner sind jetzt die Probleme gelöst, und es erscheint kein Fehler mehr im Notification Center.

Die Veränderung in der Notification Center-Datenbank konnte ich dann auch wieder auf den ursprünglichen Wert 535 zurück setzen. Die weiter oben beschriebene Lösung ist damit für mich jetzt obsolet. Da man sie aber universell einsetzen kann um die Anzeige von Systembestandteilen im NC zu verändern, ist sie sicher für andere Anwendungen/Problemfälle weiterhin nützlich. Ausserdem ist es immer nett, wenn man dem System ein nicht dokumentiertes "Feature" entlocken kann :)
 
Dein Bugfix beeindruckt mich, wirst Du den Bug melden?
 
Dein Bugfix beeindruckt mich, wirst Du den Bug melden?

auf jeden Fall. Wobei meine Konfiguration vermutlich eher so speziell ist, daß der Bug nur wenige Leute tangiert. Wer hat schon zwei TimeCapsules an unterschiedlichen Stellen, die beide gleichzeitig als TM-Laufwerke eingerichtet sind?
 
Wohl wahr, trotzdem, viele Bugs zeigen sich erst bei speziellen Konfigurationen. Ich muss da gerade an den User b25 mit dem Spotlight-Bug denken.
 
Wohl wahr, trotzdem, viele Bugs zeigen sich erst bei speziellen Konfigurationen. Ich muss da gerade an den User b25 mit dem Spotlight-Bug denken.

ich meinte eher: Klar melde ich den Bug, aber realistisch ist wohl daß Apple dem Bug nicht gerade Priorität einräumt, wenn sie nur einen Report bekommen.
 
Ich hatte das schon so verstanden, wie Du das jetzt erklärt hast. Du weißt doch gar nicht, ob nur Du diesen Bug meldest ;).
 
Zurück
Oben Unten