Введение / Зачем это нужно
Атрибут карантина — это защитный механизм macOS, который помечает скачанные файлы (приложения, DMG, скрипты) и принуждает систему запрашивать подтверждение перед запуском. Это удобно для безопасности, но иногда вам может понадобиться обойти это ограничение — например, при установке старых программ, работе с бета-версиями или запуске скриптов из доверенных источников.
В этой статье мы расскажем, как вручную удалить атрибут карантина с помощью стандартного инструмента macOS xattr. После выполнения нескольких команд вы сможете запускать любые файлы без дополнительных запросов системы безопасности.
Требования / Подготовка
- macOS версии 12 и выше (Monterey, Ventura, Sonoma и новее).
- Доступ к Terminal (из «Программы» → «Утилиты» или через Spotlight).
- По желанию: права администратора, если вы удаляете атрибут из системных папок.
Пошаговая инструкция
Шаг 1: Открыть Terminal
Откройте Terminal из папки «Программы» → «Утилиты» или вызовите его через Spotlight, введя terminal и нажав Enter.
Шаг 2: Найти файлы с атрибутом карантина
Чтобы проверить, есть ли атрибут у конкретного файла, выполните:
xattr -l /путь/к/файлу
Если вы хотите найти все файлы с атрибутом com.apple.quarantine в текущей папке и подкаталогах, используйте:
find . -type f -exec xattr -l {} + | grep com.apple.quarantine
Шаг 3: Удалить атрибут у файлов
Для удаления атрибута у одного файла выполните:
xattr -rd com.apple.quarantine /путь/к/файлу
Для очистки всей папки (все файлы рекурсивно) используйте:
xattr -rd com.apple.quarantine /путь/к/папке/*
💡 Совет: Если вы работаете с большим количеством файлов, вы можете объединить их в один скрипт, чтобы избежать повторения команд.
Шаг 4: Проверить удаление
Повторно проверьте атрибуты с помощью xattr -l:
xattr -l /путь/к/файлу
Если атрибут com.apple.quarantine отсутствует, вы успешно завершили процедуру.
Проверка результата
После выполнения команд убедитесь, что файл запускается без запроса системы безопасности. Попробуйте запустить приложение или скрипт напрямую — если диалоговое окно «macOS не может открыть его, потому что оно не скачано из Mac App Store» не появляется, удаление атрибута прошло успешно.
Возможные проблемы
- «Атрибут не найден» – файл никогда не имел атрибута карантина; проверьте путь к файлу.
- «Не удается удалить атрибут» – часто означает, что файл защищён системными правами. Запустите Terminal от имени администратора (
sudo terminal) или выполните команду сsudo:sudo xattr -rd com.apple.quarantine /защищённый/путь. - «Сбой при удалении атрибута из папки» – используйте команду с
-r, чтобы удалить атрибут рекурсивно:xattr -rd com.apple.quarantine /путь/к/папке.
Если проблема сохраняется, убедитесь, что вы используете правильный синтаксис команды и что macOS не применяет дополнительные защитные механизмы (например, GateKeeper). В этом случае рассмотрите возможность временного отключения GateKeeper или проверки целостности системы в разделе «Безопасность и конфиденциальность».