iCal-совместимость с Mountain Lion

Я только что обновил MacBook Pro под управлением Snow Leopard до Mountain Lion.

В Snow Leopard я использовал iCal, и у меня была 10-летняя история внутри.

Теперь в Mountain Lion это приложение было переименовано в Календарь, и я нахожу все свои 9 названий календарей, но они пусты.

Я просто заполняю все дни рождения и 2 подписанных календаря.

Глядя на /var/log/system.logя нашел 2 часа сообщений об ошибках, таких как:

2 сентября 18:41:01 localhost mdworker[759]: кодировка UTF8 не удалась для Ãloïse @ Juterbog
2 сентября 18:41:02 localhost mdworker [759]: ошибка проверки даты: EXDATE = '20020916T220000Z'
2 сентября 18:41:02 localhost mdworker [759]: ошибка проверки даты: EXDATE = '20021022T220000Z'
2 сентября 18:41:02 localhost mdworker [759]: ошибка проверки даты: EXDATE = '20020620T220000Z'
2 сентября 18:41:02 localhost mdworker [759]: ошибка проверки даты: EXDATE = '20010414T220000Z 20010415T220000Z'
2 сентября 18:41:02 localhost mdworker[759]: кодировка UTF8 не удалась для вакансий школьников été
[...]
2 сентября 18:41:02 localhost mdworker [759]: неверный символ: (58) для mParamName в строке 432
2 сентября 18:41:02 localhost mdworker[759]: неверный символ. (46) для mParamName в строке 432
2 сентября 18:41:02 localhost mdworker [759]: неверный символ (32) для mParamName в строке 432
2 сентября 18:41:02 localhost mdworker[759]: *** ПРЕДУПРЕЖДЕНИЕ Недопустимый компонент, отбрасывание: Ошибка домена = com.apple.iCalendar Code = 1000 «Для VEVENT требуется DTSTART». UserInfo=0x7fada22d24a0 {NSLocalizedDescription=DTSTART требуется для VEVENT.}

Эти сообщения об ошибках выглядят так, как будто они явно связаны с ошибкой переноса моих календарей. К сожалению, никаких объяснений и сообщений об ошибках не было показано, чтобы объяснить, как это исправить.

Как восстановить все мои личные календари iCal?

Ответы (2)

В Mountain Lion файлы календаря хранятся в формате /Users/USERNAME/Library/Calendars/. Если все правильно, вы найдете кучу папок, которые заканчиваются на .caldavили .calendar, которые содержат другую папку с именем Events, которая содержит события в виде .icsфайлов.

Я нахожу .calendarподкаталоги, но внутри них Eventsподкаталог пуст. Очевидно, миграция не удалась тайно.
Никаких резервных копий, я полагаю?
У меня есть резервная копия всего диска непосредственно перед миграцией. Это снежный барс 10.6.8.
Тогда ничего не потеряно. Вы можете получить доступ к резервной копии, скопировать папки календаря, включая .icsэлементы, и вернуть свои старые события. Хотя это мое предположение, сам не пробовал.

Допустим, мое имя пользователя bobи у меня есть резервный диск с именем sequoia.

Вот один из способов быстро исправить это неправильное поведение миграции. Весь этот процесс шел через Terminalкоманды.

  1. ПокидатьCalendar

  2. Сделайте резервную копию поврежденных календарей (на всякий случай, если что-то может пойти еще хуже, даже если я был в худшем состоянии, которое я когда-либо мог себе представить):

    cd /Users/bob/Library/Calendars
    mkdir .bak
    mv *.calendar Calendar\ Cache .bak
    
  3. Скопируйте резервные копии календарей, чтобы заменить поврежденные:

    cd /Volumes/sequoia/Users/bob/Library/Calendars
    cp -pR *.calendar ~/Library/Calendars
    
  4. Запустите Calendarи убедитесь, что он все правильно конвертирует (это заняло много минут).

  5. Если все в порядке, очистите бесполезный каталог резервных копий:

    cd /Users/bob/Library/Calendars
    rm -rf .bak