Як я можу "відкрити додаток від невстановленого розробника" без використання графічного інтерфейсу?


13

В основному, я використовував власний Safari.appвеб-браузер для завантаження сторонньої програми, і я хочу запустити / openце з комфорту моєї bashоболонки / Terminal.appCLI; незважаючи на таке повідомлення про помилку:

“<unidentified_thirdparty.app>” can’t be opened because it is from an unidentified 
 developer. Your security preferences allow installation of only apps from the Mac 
 App Store and identified developers. Safari downloaded this file on <today's_date> 
 from <the.inter.net>.
                                          |[OK]|

Відповіді:


31

Вам потрібно буде змінити налаштування в розділі Налаштування системи > Безпека та конфіденційність > Загальне > Дозволити завантаження програм: з будь-якого місця або в термінал , xattr зніміть атрибут com.apple.quarantine з завантажених файлів.

xattr -dr com.apple.quarantine "unidentified_thirdparty.app"

Мені було відомо про метод GUI. Наступна частина виглядає спот-на-хоч. На що саме com.apple.quarantineпосилається (атрибут) аргумент?
— голоси

1
@ tjt263, Вибачте, я до цього часу не бачив ваш коментар ... Усі об'єкти файлової системи мають атрибути, наприклад інформацію, яку ви бачите у висновку ls -l fileкоманди. Об'єкти файлової системи також мають розширені атрибути, з яких com.apple.quarantineпризначається об'єктам, завантаженим з Інтернету OS X, щоб запобігти довільному виконанню і, таким чином, одному рівню захисту системи. Використовуючи ls -lR@ fileабо xattr −lr fileпоказувати розширену інформацію про атрибут, остання з яких видаватиме більш обширну інформацію Див. Для man xattrотримання додаткової інформації.
— користувач3439894

Ого. Це цікаво. Я про це не знав. Чи є в інших операційних системах щось подібне?
— голоси

Ви також можете скористатися або клацанням правою кнопкою миші (aka ctrl-click), і вибрати "Відкрити", щоб дозволити виконати саме цей додаток.
— Хоукен Райвс

1
@HawkenRives, так, це так, як це глобальна настройка, а не власне запуск або відкриття файлу, як це робиться правою кнопкою миші на файл. Використовуючи xattrчастину моєї відповіді, покрийте командний рядок та термінал.
— користувач3439894

0

Введіть це в Термінал під обліковим записом адміністратора: sudo spctl --master-disable


Це повністю вимикає воротаря. І це не відповідь на питання.
— l1ghthouse

0

Щоб зробити це розумно в командному рядку

  • attr -p com.apple.quarantine unidentified_thirdparty.app виводить щось на кшталт 0081;5e7fec61;Chrome;6585C1D3-E260-4275-9E6E-505DF8D6B7EE
  • Скопіюйте рядок виводу, замініть перші 4 символи 00c1
  • бігати attr -w com.apple.quarantine 00c1;5e7fec61;Chrome;6585C1D3-E260-4275-9E6E-505DF8D6B7EE unidentified_thirdparty.app

або

Об'єднав ці кроки в одну команду

attr -w com.apple.quarantine "$(attr -p com.apple.quarantine unidentified_thirdparty.app | sed 's/^.\{4\}/00c1/' )" unidentified_thirdparty.app

Мій пост у цьому блозі .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.