Потеряв почти весь свой рабочий день, пытаясь понять, почему это происходит, я наконец нашел обходной путь.
Как уже говорил Бен, это ошибка, связанная с FileVault. Когда вы используете FileVault, ваша база данных LaunchServices не читается правильно после перезагрузки. Так как именно там хранятся ваши ассоциации (файлы и URL), все они возвращаются к системным настройкам по умолчанию. Удаление и перестройка базы данных LaunchServices не будут работать, потому что ваши настройки хранятся правильно, они просто не читаются так, как предполагалось после перезагрузки.
Конечно, я могу отключить FileVault, но для меня это неприемлемо. У меня в MacBook много полезных данных, и я живу в Бразилии, где риск кражи вашего ноутбука достаточно велик. Поэтому мне нужен был другой способ решения этой проблемы.
К счастью, после просмотра МНОГО веб-страниц, связанных с этой темой, я нашел сценарий оболочки под названием "GoodCompany", написанный парнем по имени Мартин Копишке. Цитирую его описание:
GoodCompany - это сценарий оболочки (с некоторыми сопровождающими файлами), позволяющий обойти досадную ошибку FileVault, которая заставляет Launch Services игнорировать привязки пользовательских приложений. Если OS X, кажется, забывает ваш браузер по умолчанию, почтовую программу, программу чтения RSS или редактор для определенных типов файлов после каждой перезагрузки, и вы используете FileVault, GoodCompany для вас.
Вы можете скачать его здесь. Просто распакуйте ZIP-файл, поместите его в папку у себя дома и запустите с помощью действия "enable", чтобы он запускался после каждого входа в систему. Прочитайте сопроводительную документацию для более подробной информации.
Я только что попробовал и, хотя это не совсем "решение" проблемы, это хороший обходной путь. ПУТЬ лучше, чем отключить FileVault.