我正在嘗試將輸入從 php.ini 發送到螢幕會話。到目前為止,我已按照此處說明的步驟進行操作
運行 GNU Screen suid root 是使多用戶模式運作的唯一方法嗎?
我已經在 screenrc 檔案中設定了「multiuser on」和「acladd www-data」(或者,沒有。在我透過 -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 使用者讀取/寫入。