Ошибка Permission denied (код EACCES) в Linux означает, что текущий пользователь не имеет необходимых прав для выполнения операции. Она может возникать при запуске скриптов, открытии файлов или попытке изменить системные каталоги.
Основные причины
- Недостаточные права на файл или папку
- Отсутствует бит выполнения у скрипта
- Попытка доступа к системным каталогам без
sudo - Неверный владелец файла
Способ 1: Запуск с sudo
Если операция требует прав администратора:
sudo команда
Пример:
sudo apt update
Способ 2: Добавление права на выполнение
Если ошибка возникает при запуске скрипта:
chmod +x script.sh
./script.sh
Способ 3: Проверка прав доступа
Посмотрите текущие права:
ls -l filename
Если нужно изменить владельца:
sudo chown user:user filename
Способ 4: Проверка прав на каталог
Даже если файл доступен, родительский каталог может быть закрыт:
ls -ld directory
При необходимости измените права:
sudo chmod 755 directory
Итог
Ошибка EACCES в Linux почти всегда связана с правами доступа. Использование sudo, корректная настройка chmod и chown обычно полностью решают проблему.