Получение разрешения отклонено при использовании sudo

Получение разрешения отклонено при использовании sudo

Я добавил следующую строку в /etc/sudoersкоманду via visudo:

www-data ALL=(ALL) NOPASSWD: /var/www/db_backup.sh

При выполнении команды www-dataчерез:

sudo -u www-data /var/www/db_backup.sh

Я получаю следующее сообщение:

sudo: unable to execute /var/www/db_backup.sh: Permission denied

Не уверен, почему это так, поскольку я использовал эту же процедуру в прошлом без проблем. Должно быть, я что-то упускаю из виду. Что-нибудь указывает кому-нибудь. Мой /etc/sudoersфайл указан ниже:

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL


www-data ALL=(ALL) NOPASSWD: /var/www/db_backup.sh



# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d

Также в качестве примечания при попытке запустить команду sudo /var/www/db_backup.shиз процесса php, работающего под www-data, появляется следующее сообщение (хотя я понимаю, что это просто из-за проблемы с разрешениями, которые не берутся из файла sudoers?):

sudo: no tty present and no askpass program specified

РЕДАКТИРОВАТЬ

ls -al /var/www/db_backup.sh

дает следующий результат:

-rwxrwx--- 1 root root 523 Jan 7 2019 /var/www/db_backup.sh

решение1

Как отмечено в комментариях, ваш скрипт не может быть выполнен другими пользователями. Поэтому, как уже упоминалось, измените владельца пользователя и владельца группы, затем отметьте его как исполняемый : chown www-data:www-data /var/www/db_backup.sh && chmod +x /var/www/db_backup.sh. Что касается вашей второй проблемы, ее следует задать отдельно, но в любом случае, не зная точно, что содержит скрипт, трудно сказать, в чем проблема.

Связанный контент