Часто мы запускаем в системе приложения, которые не подписаны правильно или, в некоторых случаях, просто старые. Пользователи Windows часто просто получают предупреждение и возможность запустить приложение в любом случае. Однако это не так, когда речь идет о системах Mac. Когда вы пытаетесь запустить приложение, не имеющее цифровой подписи, или другое программное обеспечение, разработанное сообществом для различных целей, вы можете получить сообщение “Application.приложение повреждено и не может быть открыто’” сообщение об ошибке.

Причина появления этого сообщения об ошибке довольно очевидна. В macOS есть специальная функция безопасности, которая проверяет приложения, которые вы хотите запустить, а затем, в зависимости от подписи кода, разрешает выполнение приложения. Однако в некоторых случаях, когда приложение, которое вы хотите запустить, является старой и неподписанной версией, вы получите сообщение об ошибке, поскольку Gatekeeper не разрешает его запуск. Приложение считается небезопасным, и поэтому вам предлагается удалить его.
В большинстве случаев это может помочь, но есть приложения, которым можно доверять, и они определяются как небезопасные функцией безопасности Gatekeeper. В таком случае, чтобы решить проблему, вам придется либо изменить Системные предпочтения, либо запустить приложение с помощью команды xattr, либо вообще отключить Gatekeeper на некоторое время. С учетом сказанного, давайте разберемся в различных методах, которые’ помогут решить эту проблему.
Способ 1: Запуск приложения из окна терминала
Как оказалось, если вы запустите то же приложение из окна терминала с правами суперпользователя, оно запустится без каких-либо проблем. В основном, разрешения суперпользователя отменяют функцию Gatekeeper, и, таким образом, приложению будет разрешено выполнение. Вы должны делать это только и только в том случае, если вы полностью доверяете приложению, которое хотите запустить. Делать это для любого случайного приложения, которое вы получили из Интернета, — не самая лучшая идея. В этом случае, следуя приведенным ниже инструкциям, запустите приложение:
- Прежде всего, откройте папку Терминал окно по адресу Finder > Перейдите на > Утилиты.
Mac Finder - Оттуда найдите и откройте Терминал.
- После того, как окно терминала открыто, используйте следующую команду для запуска приложения:
sudo xattr -cr /path/to/application.app
Запуск приложения из терминала - Маленьким трюком здесь было бы просто перейти в каталог, где находится приложение, а затем перетащить его в окно терминала. Это позволит автоматически вставить путь приложения.
- Как только вы это сделаете, просто напишите sudo xattr -cr перед путем, а затем нажмите Введите .
- Вам будет предложено ввести пароль администратора, введите его и снова нажмите Enter.
- Приложение должно запуститься.
Метод 2: Временно отключить проверки
Еще один способ избавиться от сообщения об ошибке — временно отключить глобальные проверки. Как мы уже упоминали выше, Gatekeeper — это функция безопасности в macOS который, по сути, проверяет приложения, которые вы хотите запустить, и защищает вашу систему от вредоносного ПО. Как выяснилось, в некоторых случаях он рассматривает определенные приложения без подписи, которые вы загрузили, как небезопасные. Вот почему вы получаете указанное сообщение об ошибке. Поэтому простой обходной путь здесь — просто временно отключить функцию, а затем включить ее снова. Вот’ как это сделать:
- Чтобы отключить Gatekeeper, сначала нужно открыть окно терминала на устройстве Mac.
- Вы можете сделать это через Finder > Перейдите по ссылке > Утилиты или просто найдите его в Spotlight.
Mac Finder - После запуска терминала выполните следующую команду для отключения проверок:
sudo spctl --master-disable
Отключение глобальных проверок - Введите пароль администратора для завершения выполнения.
- После этого запустите приложение.
- Важно, чтобы вы снова включили проверку после использования приложения.
- Для этого выполните следующую команду:
sudo spctl --master-enable
Метод 3: Разрешить приложения из любого места
Вы также можете разрешить приложениям из любого места запускаться без проблем в Системных настройках macOS. Здесь находятся настройки Gatekeeper, и вам нужно будет просто отредактировать их, чтобы разрешить выполнение всех приложений. Для этого следуйте инструкциям, приведенным ниже:
- Прежде всего, откройте Системные настройки на вашем Mac.
- Затем на экране «Системные настройки» перейдите в раздел Безопасность & Конфиденциальность.
- На вкладке Общие в разделе Безопасность & Конфиденциальность, нажмите на значок замка, чтобы разблокировать некоторые опции.
Безопасность и конфиденциальность - Вам будет предложено ввести пароль администратора. Предоставьте его, а затем нажмите Enter.
- Затем, в разделе “Разрешить приложения, загруженные из“, выберите Anywhere вариант.
Разрешение всех приложений - Наконец, снова нажмите на значок замка, чтобы сохранить изменения.
- Как только вы это сделаете, запустите приложение.
- Обязательно измените настройку обратно на значение по умолчанию после запуска приложения. Он не понадобится вам в будущем для того же приложения.
Метод 4: Предоставление разрешений
В некоторых сценариях проблема может возникнуть из-за ограничений в разрешениях. Если вы попытаетесь запустить файл, который не имеет исполняемых прав, вы, скорее всего, получите указанное сообщение об ошибке. В этом случае вам нужно предоставить ей необходимые разрешения, а затем попробовать ее запустить. Чтобы сделать это, следуйте инструкциям ниже:
- Прежде всего, откройте Терминал окно на вашем Mac. Введите sudo chmod +x в окне терминала, но не нажимайте Enter.
- Затем перейдите к приложению, щелкните на нем правой кнопкой мыши и выберите Показать содержимое пакета.
Доступ к содержимому пакета - Там, перейдите к Содержание > MacOS.
- Оттуда найдите файл с именем приложения и без расширения. Если файл только один, просто перетащите его в окно терминала.
Package Contents - Теперь команда должна выглядеть примерно так:
sudo chmod +x /path/to/application
- Наконец, нажмите Введите запустите команду. Введите пароль администратора.
- Затем запустите приложение и посмотрите, решит ли это проблему.