Я пытаюсь отправить ввод в сеанс экрана из php. До сих пор я следовал шагам, описанным здесь
Является ли запуск GNU Screen suid root единственным способом заставить работать многопользовательский режим?
И я установил "multiuser on" и "acladd www-data" в файле screenrc (или, ну, нет. в другом файле, который я использую с опцией -c, но все же)
Моя проблема теперь в том, что всякий раз, когда я пытаюсь получить доступ к экрану с помощью PHP
exec('screen -S user/session -p 0 -X stuff "test"'."\n", $ret);
Я получаю ошибку:
Cannot opendir /var/run/screen/S-user: Permission denied
решение1
Разрешения, разрешения, разрешения
Пользователь, запустивший интерпретатор PHP, не имеет необходимых прав для доступа к запущенному сеансу экрана.
Вы дали пользователю www-data разрешение на использование экрана, однако доступ к файлу экрана запрещен. Попробуйте изменить разрешения для файла, чтобы разрешить пользователю www-data читать/писать.