Mac

FIX: Поврежденное приложение не может быть открыто на MacOS Ошибка

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

Приложение повреждено и не может быть открыто

Причина появления этого сообщения об ошибке довольно очевидна. В macOS есть специальная функция безопасности, которая проверяет приложения, которые вы хотите запустить, а затем, в зависимости от подписи кода, разрешает выполнение приложения. Однако в некоторых случаях, когда приложение, которое вы хотите запустить, является старой и неподписанной версией, вы получите сообщение об ошибке, поскольку Gatekeeper не разрешает его запуск. Приложение считается небезопасным, и поэтому вам предлагается удалить его.

В большинстве случаев это может помочь, но есть приложения, которым можно доверять, и они определяются как небезопасные функцией безопасности Gatekeeper. В таком случае, чтобы решить проблему, вам придется либо изменить Системные предпочтения, либо запустить приложение с помощью команды xattr, либо вообще отключить Gatekeeper на некоторое время. С учетом сказанного, давайте разберемся в различных методах, которые’ помогут решить эту проблему.

Способ 1: Запуск приложения из окна терминала

Как оказалось, если вы запустите то же приложение из окна терминала с правами суперпользователя, оно запустится без каких-либо проблем. В основном, разрешения суперпользователя отменяют функцию Gatekeeper, и, таким образом, приложению будет разрешено выполнение. Вы должны делать это только и только в том случае, если вы полностью доверяете приложению, которое хотите запустить. Делать это для любого случайного приложения, которое вы получили из Интернета, — не самая лучшая идея. В этом случае, следуя приведенным ниже инструкциям, запустите приложение:

  1. Прежде всего, откройте папку Терминал окно по адресу Finder > Перейдите на > Утилиты.
    Mac Finder
  2. Оттуда найдите и откройте Терминал.
  3. После того, как окно терминала открыто, используйте следующую команду для запуска приложения:
    sudo xattr -cr /path/to/application.app
    Запуск приложения из терминала
  4. Маленьким трюком здесь было бы просто перейти в каталог, где находится приложение, а затем перетащить его в окно терминала. Это позволит автоматически вставить путь приложения.
  5. Как только вы это сделаете, просто напишите sudo xattr -cr перед путем, а затем нажмите Введите .
  6. Вам будет предложено ввести пароль администратора, введите его и снова нажмите Enter.
  7. Приложение должно запуститься.

Метод 2: Временно отключить проверки 

Еще один способ избавиться от сообщения об ошибке — временно отключить глобальные проверки. Как мы уже упоминали выше, Gatekeeper — это функция безопасности в macOS который, по сути, проверяет приложения, которые вы хотите запустить, и защищает вашу систему от вредоносного ПО. Как выяснилось, в некоторых случаях он рассматривает определенные приложения без подписи, которые вы загрузили, как небезопасные. Вот почему вы получаете указанное сообщение об ошибке. Поэтому простой обходной путь здесь — просто временно отключить функцию, а затем включить ее снова. Вот’ как это сделать:

  1. Чтобы отключить Gatekeeper, сначала нужно открыть окно терминала на устройстве Mac.
  2. Вы можете сделать это через Finder > Перейдите по ссылке > Утилиты или просто найдите его в Spotlight.
    Mac Finder
  3. После запуска терминала выполните следующую команду для отключения проверок:
    sudo spctl --master-disable
    Отключение глобальных проверок
  4. Введите пароль администратора для завершения выполнения.
  5. После этого запустите приложение.
  6. Важно, чтобы вы снова включили проверку после использования приложения.
  7. Для этого выполните следующую команду:
    sudo spctl --master-enable

Метод 3: Разрешить приложения из любого места

Вы также можете разрешить приложениям из любого места запускаться без проблем в Системных настройках macOS. Здесь находятся настройки Gatekeeper, и вам нужно будет просто отредактировать их, чтобы разрешить выполнение всех приложений. Для этого следуйте инструкциям, приведенным ниже:

  1. Прежде всего, откройте Системные настройки на вашем Mac.
  2. Затем на экране «Системные настройки» перейдите в раздел Безопасность & Конфиденциальность.
  3. На вкладке Общие в разделе Безопасность & Конфиденциальность, нажмите на значок замка, чтобы разблокировать некоторые опции.
    Безопасность и конфиденциальность
  4. Вам будет предложено ввести пароль администратора. Предоставьте его, а затем нажмите Enter.
  5. Затем, в разделе “Разрешить приложения, загруженные из“, выберите Anywhere вариант.
    Разрешение всех приложений
  6. Наконец, снова нажмите на значок замка, чтобы сохранить изменения.
  7. Как только вы это сделаете, запустите приложение.
  8. Обязательно измените настройку обратно на значение по умолчанию после запуска приложения. Он не понадобится вам в будущем для того же приложения.

Метод 4: Предоставление разрешений 

В некоторых сценариях проблема может возникнуть из-за ограничений в разрешениях. Если вы попытаетесь запустить файл, который не имеет исполняемых прав, вы, скорее всего, получите указанное сообщение об ошибке. В этом случае вам нужно предоставить ей необходимые разрешения, а затем попробовать ее запустить. Чтобы сделать это, следуйте инструкциям ниже:

  1. Прежде всего, откройте Терминал окно на вашем Mac. Введите sudo chmod +x в окне терминала, но не нажимайте Enter.
  2. Затем перейдите к приложению, щелкните на нем правой кнопкой мыши и выберите Показать содержимое пакета.
    Доступ к содержимому пакета
  3. Там, перейдите к Содержание > MacOS.
  4. Оттуда найдите файл с именем приложения и без расширения. Если файл только один, просто перетащите его в окно терминала.
    Package Contents
  5. Теперь команда должна выглядеть примерно так:
    sudo chmod +x /path/to/application
  6. Наконец, нажмите Введите запустите команду. Введите пароль администратора.
  7. Затем запустите приложение и посмотрите, решит ли это проблему.

Добавить комментарий