В Ubuntu пользователи при использовании AppImage‑приложений часто сталкиваются с ошибкой «The SUID sandbox helper binary was found, but is not configured correctly», из‑за которой программы отказываются запускаться в операционной системе Ubuntu и основанных на ней. В статье показаны быстрые и безопасные решения через AppArmor‑профили, а также объясняется, почему запуск с параметром —no-sandbox нежелателен.
Представленное в этой статье применяйте только для домашнего использования и не применяйте при настройке критически важных узлов в инфраструктуре предприятия. Профиль в режиме flags=(unconfined) фактически снимает AppArmor-ограничения с конкретного AppImage приложения, полагаясь на внутреннюю песочницу Chromium/Electron. Это безопаснее, чем —no-sandbox, но слабее, чем строгий AppArmor-профиль с правилами доступа к файлам/сети.
Для работы AppImage в убунту установите библиотеку libfuse2t64, если не установлена:
| 1 | sudo apt install libfuse2t64 |
Я рассмотрю на примере запуски приложения Obsidian. Если при запуске из графической среды не запускаются приложения то откройте терминал и с помощью команды cd перейдите в каталог в котором находится программа и запустите с помощью команды:
| 1 | ./Obsidian-1.9.12.AppImage |
Если возникает ошибка при запуске AppImage-приложений в Ubuntu:
| 1 | The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now. You need to make sure that chrome-sandbox is owned by root and has mode 4755. |
Эта проблема связана с новыми ограничениями безопасности Ubuntu 24.04 для Electron-приложений и часто проявляется при запуске программ из AppImage.
Небезопасный способ: Запуск с отключением песочницы
Не рекомендуется использовать такой метод потому, что это небезопасно и показан только в качестве примера
| 1 | ./your-app.AppImage --no-sandbox |
Способ 1: AppArmor профиль для приложения (рекомендуемый)
Создайте профиль AppArmor для Obsidian:
| 1 | sudo nano /etc/apparmor.d/obsidian.appimage |
Добавьте содержимое:
| 1 2 3 4 5 6 7 8 9 10 | # Allow Obsidian AppImages to run without sandbox restrictions abi <abi/4.0>, include <tunables/global> profile obsidian.appimage /**/Obsidian-*.AppImage flags=(unconfined) { userns, # Site-specific additions and overrides include if exists <local/obsidian.appimage> } |
Здесь /**/Obsidian-*.AppImage укажите ваш путь до приложения
| 1 | sudo apparmor_parser -r /etc/apparmor.d/obsidian.appimage |
- Настроил и забыл — паттерн /**/Obsidian-*.AppImage автоматически покрывает все будущие версии. После выхода новой версии не нужно обновлять профиль.
- Безопасность сохранена — исключение создается точечно для Obsidian, без влияния на систему в целом.
- Работает в любых папках — не зависит от местоположения файла.
- Постоянное решение — не требует изменений при обновлениях.
Универсальная схема для отдельных приложений
Рассмотрим общий шаблон. Для других AppImage используйте аналогичную схему:
| 1 | sudo nano /etc/apparmor.d/название-программы.appimage |
Содержимое (замените Название-Программы на имя вашего AppImage):
| 1 2 3 4 5 6 7 8 9 | # Allow Название-Программы AppImages to run without sandbox restrictions abi <abi/4.0>, include <tunables/global> profile название-программы.appimage /**/Название-Программы-*.AppImage flags=(unconfined) { userns, include if exists <local/название-программы.appimage> } |
Активация:
| 1 | sudo apparmor_parser -r /etc/apparmor.d/название-программы.appimage |
- Высокий гранулярный (детально настраиваемый) контроль — отдельные настройки для каждого приложения.
- Максимальная безопасность — можно тонко управлять правами каждого AppImage.
- Гибкость — легко отключить или изменить настройки конкретного приложения.
Недостатки:
- Больше файлов и администрирования — требуется профиль на каждое приложение.
- Нужно знать имена и шаблоны файлов AppImage.
Способ 2: Универсальный профиль для всех AppImage
Если AppImage-приложений много, можно создать один универсальный профиль:
| 1 | sudo nano /etc/apparmor.d/universal-appimage |
| 1 2 3 4 5 6 7 8 9 10 | # Universal AppImage profile for Ubuntu 24.04 abi <abi/4.0>, include <tunables/global> profile universal-appimage /**/*.AppImage flags=(unconfined) { userns, # Site-specific additions and overrides include if exists <local/universal-appimage> } |
Здесь /**/*.AppImage можно указать путь, где лежать ваши программы.
Активация:
| 1 | sudo apparmor_parser -r /etc/apparmor.d/universal-appimage |
Преимущества универсального подхода:
- Один профиль для всех AppImage — минимальные трудозатраты на настройку.
- Не нужно создавать отдельные профили — удобство и скорость внедрения.
- Покрывает любые AppImage в любых папках — работает «из коробки» для новых приложений.
- Экономия времени — простое сопровождение больших наборов AppImage.
Недостатки:
- Менее гранулярный контроль безопасности — одинаковые разрешения для всех AppImage.
- Применяется ко всем AppImage без исключения — нельзя быстро ограничить одно приложение, не затрагивая другие.
- Потенциальный риск — если одно приложение будет скомпрометировано, ему доступны те же послабления, что и остальным.
Заключение
AppArmor-профили — безопасный и простой способ решить проблему с ошибкой SUID sandbox в Ubuntu для AppImage. Они сохраняют системную безопасность, автоматически работают с новыми версиями и не требуют постоянного обслуживания. Избегайте запуска с флагом —no-sandbox в постоянной эксплуатации — это значительно снижает безопасность. На этом все, можно спокойно работать.














